VirtualBox에서 호스트 전용 네트워킹을 설정했습니다.
Windows 호스트:
VirtualBox Host-Only Network
IPv4 Address. . . . . . . . . . . : 192.168.56.1
Wireless LAN Adapter Wireless Network Connection 2
IPv4 Address. . . . . . . . . . . : 172.19.156.59
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . : 172.19.156.1
CentOS 가상 머신:
eth0 Link encap:Ethernet HWaddr 08:00:27:AF:A3:28
inet addr:10.0.2.15 Bcast:10.0.2.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:feaf:a328/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:381 errors:0 dropped:0 overruns:0 frame:0
TX packets:423 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:56181 (54.8 KiB) TX bytes:50846 (49.6 KiB)
eth1 Link encap:Ethernet HWaddr 08:00:27:C4:A8:B6
inet addr:192.168.56.101 Bcast:192.168.56.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fec4:a8b6/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:8984 errors:0 dropped:0 overruns:0 frame:0
TX packets:162 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1155253 (1.1 MiB) TX bytes:31231 (30.4 KiB)
eth2 Link encap:Ethernet HWaddr 08:00:27:DB:B6:AB
inet addr:10.0.4.15 Bcast:10.0.4.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fedb:b6ab/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:220 errors:0 dropped:0 overruns:0 frame:0
TX packets:487 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:87762 (85.7 KiB) TX bytes:37818 (36.9 KiB)
CentOS VM에서 인터넷에 연결되어 있을 때 패킷이 google.com에 도달하기 위해 어떤 경로를 사용하는지 확인하고 Windows 호스트의 기본 게이트웨이를 핑할 수 있으며 주요 관심은 패킷이 거기에 어떻게 도달하는지 확인하는 것입니다. .
[root@localhost network-scripts]# traceroute -I 172.19.156.1
traceroute to 172.19.156.1 (172.19.156.1), 30 hops max, 60 byte packets
1 172.19.156.1 (172.19.156.1) 1.182 ms 3.395 ms 0.825 ms
[root@localhost network-scripts]# traceroute -T 172.19.156.1
traceroute to 172.19.156.1 (172.19.156.1), 30 hops max, 60 byte packets
1 172.19.156.1 (172.19.156.1) 14.336 ms 13.957 ms 19.046 ms
[root@localhost network-scripts]# route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default 10.0.2.2 0.0.0.0 UG 0 0 0 eth0
10.0.2.0 * 255.255.255.0 U 0 0 0 eth0
10.0.4.0 * 255.255.255.0 U 0 0 0 eth2
link-local * 255.255.0.0 U 1002 0 0 eth0
link-local * 255.255.0.0 U 1003 0 0 eth1
link-local * 255.255.0.0 U 1004 0 0 eth2
192.168.56.0 * 255.255.255.0 U 0 0 0 eth1
UDP를 통해 반환된 기본 추적 경로로 -I 및 -T 핸들을 사용했습니다.* 위 출력은 패킷이 10.0.2.2에서 172.19.156.1로 직접 전송된다는 의미입니까?
또한 Traceroute -T 172.16.156.59(Windows 호스트)를 시도할 때 *가 여러 개 표시됩니다.
답변1
이것버추얼 박스 매뉴얼NAT 네트워크에 대해 다음과 같은 말이 있습니다.
VirtualBox의 NAT 엔진은 게스트 운영 체제로부터 네트워크 프레임을 수신하고 TCP/IP 데이터를 추출한 후 호스트 운영 체제를 사용하여 다시 보냅니다. 호스트의 응용 프로그램이나 호스트와 동일한 네트워크에 있는 다른 컴퓨터로 데이터는 해당 호스트에 속한 IP 주소를 사용하여 호스트의 VirtualBox 응용 프로그램에 의해 전송되는 것으로 보입니다.
따라서 NAT 인터페이스를 통한 가상 머신의 모든 추적 경로는 호스트에서 실행 중인 추적 경로와 동일한 게이트웨이 세트를 보고할 것이라고 믿습니다. 이는 추적 경로가 VirtualBox NAT 게이트웨이나 호스트의 인터페이스가 사용되는 목록을 나열하지 않음을 의미합니다. 호스트에서 트래픽을 전송합니다.