サブインターフェースからのping

サブインターフェースからのping

サブインターフェースがあります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 アドレスが使用されます。

ただし、次のコマンドを使用して、eth0:0 IP アドレスを送信元とする ICMP パケットを偽装することができますhping3

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 のインターフェース アドレスが使用されます。

関連情報