フォワーディングDB
■フォワーディングDBの概要
各ポートで受信したすべてのMACアドレスを、データベースとして保管しています。
このデータベース内の情報を基に、フレームを送信するかフィルタリングするかが決定されています。
■フォワーディングDBとarpテーブルはどのような関係があるのか
ARPテーブルは、IPアドレスとMACアドレスの対応表に過ぎません。
もっとも、L3スイッチなので、それにポート番号とVLANの識別も加わります。
hoge-sw1:6 # show iparp
Destination Mac Age Static VLAN [VID] Port
172.16.128.1 00:09:0F:06:FF:00 8 NO dmz [4087] 7
fdb
hoge-sw1:3 # show fdb
Index Mac Vlan Age Use Flags Port List
------------------------------------------------------------------------
01290-006 00:09:0F:06:FF:00 dmz(4087) 0000 4802 d i 7(「00:09:0F:06:FF:00は、ダイナミックエントリでIP」の意味です)
Flags : d - Dynamic, s - Static, p - Permanent, m - MAC, i - IP,
M - Mirror, B - Egress Blackhole, b - Ingress Blackhole.
Total: 383 Static: 42 Perm: 0 Dyn: 341 Dropped: 0
FDB Aging time: 300 seconds
ipfdb
hoge-sw1:1 # show ipfdb
Dest IP Addr TblIdx MacIdx Flag FlowInfo MAC Address VLAN Port
--------------- ------ ------ ---- -------- ----------------- ---- ----
172.16.128.1 02E0.0 0129.0 0000 00:09:0F:06:FF:00 4087 7
結局、よくわからないので、通信ができなくなった場合、
(他のL3スイッチのVLANにぶら下がっているノードから、SummitのVLANにぶら下がっているノードに対して通信できなくなる場合が多い。SummitのVLANのIPアドレスまではpingが通り、Summit自身からは両ノードに対してpingが通る。)
# clear fdb
として、フォワーディングDBのダイナミックエントリをクリアしてしまうのが一番です。
これが効かなかったら、通信できないノードをリブートさせるか、物理的配線を疑った方がよいと思います。
FDB のエントリのタイプ
ダイナミックエントリ
初期設定では、データベース内のすべてのエントリは、ダイナミックとなっています。
DBにエントリされたノードが、ある一定の時間(エージングタイム)内に通信しない場合には、そのノードのエントリは、DBから削除されます(エージアウト)。
スイッチがリセットされるか、電源のオフ/オン・サイクルされると、すべてのダイナミックエントリは削除されます。
エージングタイムの設定は
# config fdb agingtime number
設定できる時間は、15 秒から1,000,000 秒。(デフォルト値は300秒。)
ダイナミックエントリをクリアするには
# clear fdb {mac_address | vlan name |portlist}
ノンエージングエントリ
エージングタイムが0 に設定されると、スタティックなノンエージングエントリとみなされます。
これらのエントリはエージングを受けませんが、スイッチがリセットされた場合には削除されてしまいます。
※どうやって設定するのかは不明
パーマネントエントリ
パーマネントエントリは、スイッチがリセットされたり、電源がオフ/オンされたりしても、データベース内から削除されません。
パーマネントエントリは、ユニキャストMAC アドレスでもマルチキャストMAC アドレスでも可能です。
コマンドラインインターフェースから入力されたエントリは、すべてパーマネントとして保存されます。
パーマネントエントリの設定方法は次のコマンドをつかいます。
create fdbentry mac_address vlan name
パーマネントエントリは、一度作成されると、その作成された状態のままになります。
たとえば、次に示すいかなる場合でもパーマネントエントリの保存は更新されません。
― VLAN の削除
― VLANid の変更
― ポートモードの変更(タグ/アンタグ)
― ポートのVLAN からの削除
― ポートのディセーブル
― ブロッキング状態
― ポートQoS 設定の変更
― ポートのダウン(リンクダウン)
パーマネントエントリを削除するには次のコマンドを使います。
delete fdbentry mac_address vlan name
ブラックホールエントリ
ブラックホールエントリは、 指定したMAC 宛先アドレスを持つパケットが廃棄されるように設定するものです。
ブラックホールエントリは、安全確保のためや、廃棄したい宛先アドレスがある場合などに便利です。
スイッチがリセットされるか、電源のオフ/オン・サイクルが行われた場合でも、ブラックホールエント
リはパーマネントエントリと同様に扱われます。
ブラックホールエントリは、データベースからエージアウトされません。
ブラックホールエントリの設定方法は次のコマンドで行います。
create fdbentry mac_address vlan name blackhole