Red Hat Enterprise Linux5.X-ARPキャッシュのMACアドレスはGARPによって変更されない事象に関する情報です。
環境:
RHEL 5.X
通常、ARPキャッシュ内のMACアドレスは、GARP(Gratuitous ARP)を受信すると変更されます。
ただし、以下の場合、GARPによってMACアドレスが変更されることはありません。
00:01:21.053245 ll.mm.nn.oo-> xx.yy.zz.ww RADIUSアカウンティング-Request(4)(id = 63、l = 189)
00:01:21.061043 aa:bb:cc:dd:ee:ff-> xx.yy.zz.wwのブロードキャストARPGratuitous ARP(リクエスト)
注:Gratuitous arpを受け入れるには、arp_accept = 1を設定する必要があります。
/usr/share/doc/kernel-doc-2.6.X/Documentation/networking/ipvs-sysctl.txtから:
arp_accept-BOOLEAN
gratuitousarp応答を受信したときの動作を定義します
。0-gratuitousarpフレームを削除します
1-gratuitousarpフレームを受け入れます
例)
nt.ipv4.conf.eth0.arp_accept = 1
詳細
カーネルパラメータのロック時間(デフォルトは約1秒)は、ARPキャッシュのスラッシングを防ぎます。
したがって、上記の場合、ARPキャッシュのMACアドレスは変更されない可能性があります。
/usr/share/doc/kernel-doc-2.6.18/Documentation/filesystems/proc.txtから:
==========
ロック時間
--------
ARP /ネイバーエントリは、古いエントリが少なくとも
ロックタイム古い 場合にのみ新しいエントリに置き換えられます。これにより、ARPキャッシュのスラッシングが防止されます。
==========
#sysctl -a | グリップロックタイム| grep ipv4
net.ipv4.neigh.virbr0.locktime = 99
net.ipv4.neigh.eth0.locktime = 99
net.ipv4.neigh.lo.locktime = 99
net.ipv4.neigh.default.locktime = 99