
我在 Windows 7 上使用 VirtualBox 5.1.8(和 5.1.18)以及 guest Kubuntu 16.04
設定:
- 訪客只有一個網路接口,模式 = NAT
- Windows 防火牆已關閉(所有設定檔、所有介面)
- 我在主機 (Windows) 上安全地安裝了 Bromium 和 Pulse
症狀:
- 我可以 ping 訪客上的任何 IP 位址。 ICMP 封包從虛擬機器傳送到主機,然後進入網絡,然後返回。我在 Linux(來賓)上使用 tcpdump 和在 Windows(主機)上使用 Wireshark 對其進行了測試。
- 我無法連接到虛擬機器以外的任何 IP 位址:
- 每當我嘗試連接到虛擬機器外部的任何 IP 位址時,我都會收到「網路無法存取」錯誤
- 來賓系統上的 tcpdump 顯示預設閘道以 ICMP 訊息「網路無法存取」來回應 TCP 連線請求訊息。
- 主機上的 Wireshark 不顯示與連線嘗試相關的任何活動。
- 從主機(Windows)盒連接到相同的主機運作得很好。
- 對於同一來賓系統,橋接而不是 NAT 工作正常(當我將介面模式設定為「橋接連接工作正常」時)。
- 在同一台主機上以訪客身分安裝 FreeBSD 並遇到相同的問題(可以 ping,無法連線)
- 我的一位同事擁有完全相同的設置,並且對他來說效果很好。
我的目標是讓 NAT 模式再次發揮作用。
到目前為止嘗試過:
- 我嘗試將 VirtualBox 升級到版本 5.1.18 - 沒有幫助
- 將 VirtualBox 降級到版本 5.1.8(最後已知的工作版本)
- 每次重新安裝和重新配置虛擬機器後重新啟動
- 安裝新的虛擬機器並安裝不同的作業系統(FreeBSD)
- 使用“Nat網路”模式
所以我的問題是:
- 是什麼導致 NAT 將 TCP 連線丟棄為不可存取?
- 如何追蹤 TCP 連線遺失的原因?
- 如何讓 NAT 重新運作?
我無法使用橋接模式,因為我無法在網路上擁有其他 IP 位址(除了 Windows 機器上的 IP 位址)。所以我必須使用NAT(或NAT網路)
答案1
我重新安裝了 Windows(主機)並解決了問題。相同的設定。
- 重新安裝Windows
- 安裝VirtualBox
- 將虛擬機器新增至 VirtualBox 並啟動
它像以前一樣工作。