在Virtualbox啟動階段會映射這些端口,那么,那就排查Windows系統(tǒng)本身環(huán)境的問題,可以通過修復(fù)工具修復(fù)此問題,。
所有不存在端口號被Windows服務(wù)占用導(dǎo)致無效映射的問題 2.通過netstat -ano查看所有正在使用端口,此述不僅僅限于Virtualbox要使用的端口映射, 在Virtualbox虛擬機中運行Ubuntu系統(tǒng)時, 具體修復(fù):Repair Winsock DNS Cache 功能說明如下: This will clear the stored DNS cache in Windows. When the DNS becomes corrupt you will not be able to get to some sites. Flushing and rebuilding the DNS will fix that problem. Also resets winsock entries resets TCP/IP stack. These extra commands are run on Windows vista and newer. 執(zhí)行完如下幾條命令然后重啟,然而在Windows中部分機器卻出現(xiàn)端口映射失敗的情況,即可修復(fù)端口號映射失敗問題,端口和虛擬機內(nèi)部的服務(wù)相對應(yīng),未發(fā)現(xiàn)映射的端口號被占用 3.上述兩點都排除了, ,通過驗證發(fā)現(xiàn),Windows和 Virtualbox端口號映射失敗該怎么辦呢? 端口映射失敗日志如下: 00:00:01.125577 NAT: set redirect UDP host 0.0.0.0:6000 =》 guest 10.0.2.15:6000 00:00:01.125748 NAT: cant create datagram socket 00:00:01.125763 NAT: failed to redirect UDP 0.0.0.0:6000 =》 10.0.2.15:6000 00:00:01.125774 NAT: set redirect TCP host 0.0.0.0:6555 =》 guest 10.0.2.15:5555 00:00:01.125897 NAT: failed to redirect TCP 0.0.0.0:6555 =》 10.0.2.15:5555 分析: 1.此處的端口號映射沒有占用Windows官方分配的端口號,即是由于Windows本身環(huán)境導(dǎo)致的,其他任何軟件使用到端口映射且失敗時可以考慮用如下幾條命令修復(fù): netsh winsock reset all netsh int 6to4 reset all netsh int ipv4 reset all netsh int ipv6 reset all netsh int httpstunnel reset all netsh int isatap reset all netsh int portproxy reset all netsh int tcp reset all netsh int teredo reset all 如上這些命令來源于Windows修復(fù)工具中其中一項 如果有其他Windows問題可以嘗試用此工具鏡像修復(fù),有時候需要通過端口映射來實現(xiàn)主機pc端和虛擬機內(nèi)部鏡像通信。