패킷은 어떤 경로를 사용합니까?

패킷은 어떤 경로를 사용합니까?

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 게이트웨이나 호스트의 인터페이스가 사용되는 목록을 나열하지 않음을 의미합니다. 호스트에서 트래픽을 전송합니다.

관련 정보