Ich verwende Virtualbox, habe eine CentOS7-VM erstellt und es gibt einen NAT-Netzwerkadapter mit DHCP-Modus.
nachdem ich die VM gestartet habe, erhält sie die IP 10.0.2.15/24
und kann über das Gateway auf das Internet zugreifen 10.0.2.2
.
aber auf meinem Host (Win10) finde ich jedoch keine IP-Adresse in CIDR 10.0.2.0/24
.
(Dies ist ein Windows XP-Snapshot, der mein Windows 10 ersetzt. Ich poste hier, um meine PC-Informationen zu verbergen.)
Antwort1
VirtualBox NAT wird im Userspace durchgeführt,unabhängigvom Host-Betriebssystem – der VBoxNetNAT.exe
Prozess enthält den gesamten „Router“ und die NAT-Engine. Pakete vom Gast veranlassen VBoxNetNAT.exe, Pakete über die Ethernet-Schnittstelle Ihres Hosts zu senden.
(Tatsächlich sendet VBoxNetNAT nicht einmal rohe IP-Pakete – wenn es beispielsweise TCP-SYN-Pakete von einem Gast empfängt, verwendet VirtualBox einen normalen TCP-Socket, um eine neue Verbindung zum Ziel herzustellen. Wenn Sie in VirtualBox eine „Portweiterleitungs“-Regel erstellen, ist das keine echte DNAT-Regel – es veranlasst VBoxNetNAT lediglich dazu, selbst auf 127.0.0.1 auf Verbindungen zu warten, und wenn es eine Verbindung empfängt, generiert es neue TCP-SYN-Pakete für den Gast.)