0

PC1 経由で PC2 にデータを送信しています。どちらも Linux 2.6 カーネル マシンです。この転送には数時間かかります。ARP キャッシュの古いタイムアウトは、PC1 で 50 秒に設定されています。したがって、データ転送中、PC1 は 50 秒ごとに ARP 要求を PC2 に送信します (PC1 で arp キャッシュが期限切れになるため)。しかし、理論的には、データ転送が進行中なので、ARP 要求を PC2 に送信する必要はありません (PC1 は PC2 がまだそこにあることを知っているため)。

PC1 内の PC2 の ARP エントリの有効期限を無効にするにはどうすればよいですか (PC2 へのデータ転送がまだ進行中の場合)。

注: PC2 への転送中に、PC2 ARP キャッシュ エントリに対してのみ arp-cache の有効期限を無効にしたいと考えています。転送後、ARP エントリの有効期限が切れます。

4

2 に答える 2

3

Get a new switch.

Really. Don't try to work around hardware issues by fooling around in the kernel.

If you really insist on getting this working, just set up static ARP entries. They don't time out.

于 2012-04-19T10:03:56.393 に答える
0

一般に、ARP の有効期限が切れると接続の信頼性が向上しますが、その逆ではありません。
PC2 が何らかの理由で MAC アドレスを変更したとします。ネットワーク セグメント内ではあまり意味がないかもしれませんが、より複雑なネットワークでは意味があります。ARP を使用すると、PC1 はすぐに新しい MAC を学習して続行します。それがなくても、古い MAC と通信しようとします。

つまり、スタティック ARP ( arp -s) を使用して、PC2 の MAC アドレスを PC1 に永久に (または次のブートのどちらか早い方) 伝えることができます。

于 2012-04-19T12:47:11.680 に答える