다중 인터페이스를 갖춘 핑 시스템

다중 인터페이스를 갖춘 핑 시스템

설정:

  • 호스트 시스템: macOS, IPv6 주소 - 2002::3/64(vmnet1)
  • 게스트 머신: vmware 내에서 실행되는 Ubuntu, IPv6 주소 - 2002::2/64(eth0) 및 2001::1/64(tun0)

구성:

  • Ubuntu에서 IPv4 및 IPv6 전달을 활성화했습니다.
  • macOS에 추가된 경로:sudo route add -inet6 2001::/64 -interface vmnet1

구성_설정_다이어그램

ping6 2001::1문제: macOS에서 할 수 없습니다 . 그러나 나는 할 수 있습니다 ping6 2002::2. VMware의 "내 Mac과 공유", "자동 감지" 및 "Mac에 개인 정보" 설정을 사용해 보았습니다.

답변1

vmnet1을 통해 2001::/64를 라우팅하는 것만으로는 충분하지 않습니다. 당신은 또한 지정해야어느 게이트웨이vmnet1에서 패킷은 이 경우 2002::2로 전송되어야 합니다.

게이트웨이 사양이 없으면 소스는 ARP(IPv4용) 또는 NDP(ICMPv6 Neighbor Discovery)를 사용하여 대상을 직접 확인하려고 시도합니다. 그러나 IPv6은 일반적으로 주소를 전체 호스트가 아닌 개별 인터페이스 또는 링크에 속하는 것으로 간주합니다. 따라서 IPv6 호스트는 일반적으로 해당 주소가 할당되지 않은 인터페이스를 통해 도착하는 경우 Neighbor Discovery 요청을 무시합니다.(이는 IPv4의 Linux arp_ignore=1과 유사합니다.)

따라서 Ubuntu 시스템은 eth0을 통해 도착하는 2001::1에 대한 NDP 쿼리에 응답하지 않습니다. eth0에는 해당 주소가 없고 tun0에만 할당되기 때문입니다. 그러나 2002::2에 대한 NDP 쿼리에는 응답하므로 경로는 다음과 같습니다.

route add -inet6 2001::/64 2002::2

(즉, 패킷이 L2를 통해 올바른 MAC 주소로 성공적으로 라우팅되면 Ubuntu 시스템은~ 할 것이다IP 헤더(L3)에서 2001::1을 수락하고 인식합니다. 해당 주소는 라우팅 테이블에서 로컬로 표시되기 때문입니다.)

관련 정보