Пинг с подинтерфейса

Пинг с подинтерфейса

У меня есть подинтерфейс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), то все в порядке.

Я пробовал на Ubuntu 14.04 и CentOS 7.

решение1

Вы не можете определить eth0:0 как источник вашего ICMP-пакета с помощью pingкоманды; как было сказано в предыдущих комментариях, будут применены правила маршрутизации, и при маршрутизации в другие сети будет использоваться адрес eth0.

Однако вы можете подделать пакет ICMP, имеющий IP-адрес eth0:0 в качестве источника, с помощью hping3следующей команды:

sudo hping3 -1 8.8.8.8 -a 192.168.2.96

Обратите внимание: для работы ваш пограничный маршрутизатор должен выполнять NAT для сетевого блока 192.168.2.0/24.

решение2

Как только вы пропингуете адрес в своей сети

192.168.2.0/24

В качестве источника будет использован адрес eth0:0. В противном случае будет использован адрес интерфейса eth0.

Связанный контент