
FreeBSD で、1 つのインターフェースに 2 つの IP がある場合:
ifconfig nic0 192.168.0.1 netmask 255.255.255.0
ifconfig nic0 alias 192.168.0.2 netmask 255.255.255.255
エイリアスに ping を実行する場合、ping 実行元のホスト (例: 192.168.0.20) がまだ ARP キャッシュに存在しない場合は、次の ARP 要求が送信されます。
Who has 192.168.0.20? Tell 192.168.0.1
つまり、ARP 要求はインターフェースのメイン IP から発信されます。
ただし、Windows 7 または Server 2008R2 でインターフェイスを同様に構成すると、次のようになります。
netsh int ipv4 set address "LAN" static 192.168.0.1 255.255.255.0
netsh int ipv4 add address "LAN" 192.168.0.2 255.255.255.255 skipassource=true
同じことを実行すると、次の ARP 要求が発生します。
Who has 192.168.0.20? Tell 192.168.0.2
Windows でも ARP 要求が常にメイン インターフェイス IP から発信されるようにこれを変更することはできますか?