하위 인터페이스가 있습니다eth0:0
auto eth0:0
iface eth0:0 inet static
address 192.168.2.96
netmask 255.255.255.0
gateway 192.168.2.1
나는 노력한다
ping -I eth0:0 8.8.8.8
나는 얻다
ping: SO_BINDTODEVICE: Invalid argument
eth0
일반 인터페이스()에서 ping을 실행 하면 모든 것이 잘 작동합니다.
Ubuntu 14.04 및 CentOS 7에서 사용해 보았습니다.
답변1
다음 명령을 사용하여 eth0:0을 ICMP 패킷의 소스로 정의할 수 없습니다. ping
이전 설명에서 언급한 것처럼 라우팅 규칙이 적용되며 다른 네트워크로 라우팅하는 경우 eth0 주소가 사용됩니다.
hping3
그러나 다음 명령을 사용하여 eth0:0 IP 주소에서 발생하는 ICMP 패킷을 스푸핑할 수 있습니다.
sudo hping3 -1 8.8.8.8 -a 192.168.2.96
이것이 제대로 작동하려면 경계 라우터가 192.168.2.0/24 네트워크 블록에서 NAT를 수행해야 합니다.
답변2
네트워크의 주소를 ping하면
192.168.2.0/24
eth0:0 주소가 소스로 사용됩니다. 그렇지 않으면 eth0의 인터페이스 주소가 사용됩니다.