
Linuxでは、パケットが到着するとARPエントリの寿命がリセット/更新されます。ただし、FreeBSDは、対応するMACアドレス/ IPを持つパケットが通過してもタイマーを設定し、無条件ARPエントリを削除するようです。 Linuxでトラフィックが確認されたときに年齢の動作を更新する方法はありますか?
その結果、20分ごとにLAN上で多くのARPブロードキャストトラフィックが発生します。 FreeBSDキャッシュの寿命を変更することは可能ですが、これはバースト間の間隔だけを変更します。まず発症を防ぎたいです。
答え1
FreeBSDの最大の利点は、文書化されていることです。ARP(4)
私たちは:
これらのパスは定期的にタイムアウトします(通常、検証後20分、未使用項目は検証されません)。
...そして...
max_ageリフレッシュするまでARPエントリがキャッシュに残っている期間。デフォルト値は1200秒です。
あたかもその中の項目を見たかのように読んでから、妥当性が確認されmaxage
ました。つまり、使用時に検証されます。
したがって、次のようにします。
arp -i ixl0 -a
? (192.168.1.2) at 00:00:00:00:00:00 on ixl0 expires in 237 seconds [ethernet]
? (192.168.1.1) at 00:00:00:00:00:01 on ixl0 permanent [ethernet]
arpエントリとその期間が表示されます。キャッシュ期間を延長するには変更するだけですmax_age
。