私は大企業でネットワーク管理者として働いています。最近、ネットワークインフラストラクチャに問題があることに気づきました。基本的に、ネットワークバックエンドはメインのL3バックエンドスイッチとしてCatalystにあり、そのCatalystに接続されているEdgeL2スイッチとしてのCiscoNexusスイッチはほとんどありません。
この問題は、ホストの1つでトラフィックをスニッフィングしようとすると発生します。その後、(always)他のホスト間のユニキャストトラフィックが表示されます。
もっと詳しく説明しようと思います。ホスト10.0.0.1を使用していて、mac[〜#〜] mac [〜#〜]、コマンドを実行します-
tcpdump -i eth0 ether Host not MAC and Host not 10.0.0.1 and not broadcast and not multicast
私は常に他のホスト間のトラフィックを確認します。
nicast Flooding に関するシスコの記事を読みましたが、「現象」は、ネットワーク内のVLAN間を通過するときだけでなく、まったく同じVLAN上でも発生します。同じVLAN(VLANは多くのスイッチにまたがる)内のスイッチ間を通過するときに発生する可能性はありますか?すべてのスイッチはトランクによってCatalystに接続されています...
何か案は?
ありがとう。
編集:
問題の原因を見つけたようです。
基本的に、スイッチの1つが認識しないMACアドレスを持つフレームを取得するたびに、すべてのポートにフラッディングします。これは正常です-そして物事が進むべき方法。ただし、現在の設定では、スイッチのMACエントリは30分間「ライブ」である必要があります。 MACが30分間表示されなかった場合、MACは再び表示されるまでスイッチから削除されます。パケットがそのMACに送信され、それがテーブルにない場合、宛先MACポートを見つけるためにすべてのポートがフラッディングされます(ポートの1つから応答を取得することを期待しています)。
宛先MACの1つを見つけ、スイッチMACテーブルでそれを探しました。ネットワークがフラッディングしている間、テーブルにはMACが含まれていませんでした。そのMACに関連するアドレスをARPしようとしましたが、フラッドは停止しました(MACがMACテーブルに再表示されたため)。
しかし、数秒後、MACはMACテーブルから再び消え、フラッドが再び始まりました。
フラッドの問題は、スイッチのMACテーブルの問題に起因しているようです。 MACアドレスを必要以上に早く「忘れ」(MACは30分間留まる必要があります)、すべてのパケットをそのMACで溢れさせているように見えます。
簡単な前編-
ARPテーブル-L3デバイス(ルーター、ホストなど)は、特定のIPアドレスと対応するMACアドレスの間のマッピングを維持します。
CAMテーブル-これは特定のスイッチプラットフォームで他の名前で知られている場合がありますが、結果として、特定のL2スイッチングデバイスが特定のハードウェアアドレスと1つ以上の物理スイッチポート間のマッピングを維持します。
上記の場合に起こっていることは、ユニキャストフラッディングと呼ばれます。これは、スイッチのCAMテーブルが対応するエントリをフラッシュした場合でも、ルータにライブARPエントリが残っている状態です。その結果、ルーターが特定のホストのパケットを受信すると、最初にARP要求を送信せずに、単にスイッチに転送されます(IP:MACマッピングは引き続きキャッシュされます)。ただし、スイッチは、このMACアドレスがマップされているポートを認識しなくなります(このエントリは以前に期限切れになっています)。スイッチに特定のユニキャストMACのCAMエントリがない場合、応答(つまり、ARP要求への応答)が表示されるまで、そのMACのパケットをすべてのポートにフラッディングします。
あいまいな理由で、ARPタイマーとCAMタイマーは一般的にCiscoスイッチではまったく異なります。値は多少異なりますが、最新のNexusデバイスでは不一致が続いています。ベストプラクティスは、ARPタイマーとCAMタイマーを同様の値に設定することです。理想的には、CAMテーブルをARPより5秒程度長く設定します。スイッチがフラッディングするよりも、ルータが再ARPを実行する方が適切です。両方の値を約600秒(10分)に設定することは一般的にそれほど悪くはありませんが、ルーターで過剰なARPトラフィックが見られる場合は、環境によってはもう少し長くしたい場合があります。
はい、ARPブロードキャストです(wiresharkをスローすると、「Who's got blah blahblah。Tellblah。」と表示されます)。
クライアントは「それは私です!」と応答するはずです。したがって、応答に失敗しているクライアントを調査します。