Monday, May 22, 2006

Configuring Protected Ports(前半)

Geneさんのメルマガで先週の金曜日に掲載された記事をUPします。

はじめに
 前回は2回にわたってStorm-Controlをお勉強しました。
 今回はProtected Portsについてみていきます。
 このProtected Portsも前半と後半に分かれています。
 前半は動作についての話、後半は設定や練習問題をやります。

 このProtected PortsはPort Blockingと混同しやすいので、この
 記事を読んでProtected Portsの特徴を正しく掴みましょう。

Protected Portsとは
 Protected Portsがどんな役割を果たすのかを例をもとに説明します。

 SWのfa0/10とfa0/11は同一のセグメントで、それぞれのポートに
 サーバAとサーバBが接続されている、とします。
 fa0/10とfa0/11にProtected Portsの設定を行うと次の動作になり
 ます。

 -サーバAからサーバBへのユニキャストパケットがブロックさ
  れる。(その逆も同様)
 -サーバAからサーバBへのマルチキャストパケットがブロック
  される。(その逆も同様)
 -サーバAからサーバBへのブロードキャストパケットがブロック
  される。(その逆も同様)
 -サーバAからProtected Portsの設定されていないポートへ
  通信する場合は制限されない。(サーバBの場合も同様)

 つまり、Protected Portと設定されているポート間だけ直接のやり
 とりがブロックされます。

 また、例の最後にあるように、Protected Portsが設定されている
 ポートと、設定されていないポート間は何も制限はなく、通常の
 状態と変わりません。

 Protected Portsを設定するときに2点、注意が必要です。

 まず1点めは、Protected PortsはFallback Bridgingと連携して動作
 することができないということです。

 Fallback Bridgingとは異なるVLAN間をBridgingして、ルーティング
 することなく直接のやり取りを可能にする仕組みです。
 以下、例をもとに説明します。

 fa0/10はVLAN10に属していて、Protected Portsが設定されてい
 ます。Fa0/11はVLAN11に属していてProtected Portsが設定され
 ています。

 通常はVLAN10とVLAN11はVLANが異なるため、ルーティングさ
 れなければ直接のやりとりはできません。
 しかし、ここでは何か別の要件によって、VLAN10とVLAN11は
 ルーティングすることなく通信できる必要があったとしましょう。

 このような要件の場合、VLAN10とVLAN11はFallback Bridgingを
 設定します。
 #Fallback Bridgingの設定については、ここで解説するのが目的
 #ではないので、サンプル程度のコンフィグを示します。

 Switch(config)# int fa 0/10
 Switch(config-if)# switchport access vlan 10
 Switch(config-if)# switchport mode access
 Switch(config-if)# switchport protected
 Switch(config-if)# int fa 0/11
 Switch(config-if)# switchport access vlan 11
 Switch(config-if)# switchport mode access
 Switch(config-if)# switchport protected
 Switch(config-if)# exit
 Switch(config)# bridge 1 protocol vlan-bridge
 Switch(config)# int vlan 10
 Switch(config-if)# bridge group 1
 Switch(config-if)# int vlan 11
 Switch(config-if)# bridge group 1

 VLAN10とVLAN11でFallback Bridginを設定すると、fa0/10
 とfa0/11に設定したProtected Portsは機能しません。
 ですので、Fallback BridgingとProtected Portsは併用しないよう
 にしましょう。


 2点目は、問題というよりはSwitchの仕様です。

 最初の例で、サーバAとサーバBのお話をしました。
 その際、こんな疑問を感じませんでしたか?

 何故SwitchはサーバAからサーバB宛てのパケットを
 「fa0/10からfa0/11に流れる」
 と認識できたのでしょうか。

 Switchは、誰がどこにつながっているかを認識するためにMAC
 アドレスと、そのMACがどのポートの先に存在するかという2つの
 情報を併せてMACアドレステーブルに記憶しています。

 SwitchのMACテーブルが空っぽのとき、サーバAがサーバBに
 フレームを送った場合、SwitchはサーバBがどのポートに接続され
 ているのか判断できないため、Floodingするしかありません。

 よって、SwitchのMACテーブルが空っぽの場合や、あて先の
 MACアドレスを学習していない場合は、Protected Portsが設定さ
 れているポート同士でもパケットが届いてしまう場合があります。

 この動作を防ぐ方法は2つあります。1つは予めサーバAとサーバB
 のMACアドレスをStaticに設定します。もう1つは冒頭で述べた
 Port Blockingを使用します。
 このPort Blockingは、別の機会にとりあげますのでお楽しみに。


さて、次回はProtected Portsを設定するときのお話です。
 次回のコンテンツは、
 -はじめに
 -Default設定
 -Configuring Protected Ports
 -Configuration Example
 -Basic Configuring Exercise
 -Advanced Configuring Exercise
 -Further Reading
です。

No comments: