タグVLAN と ネイティブVLAN (PVID)の違い、native vlanを変更する理由、不一致による影響

タグVLAN とは

タグVLAN (Tag VLAN) とは、複数のVLANを1本のLAN接続だけで複数スイッチ間で共有できる技術です。IEEE802.1q という規格で規定されており、VLAN IDは 1~4094が使えます

具体的な例として、スイッチ同士を接続するポートに trunk port (トランクポート。 tag portと呼ばれたりします) の設定を入れて接続します。するとそのリンク(トランクリンク)はVLAN ID 情報を含む Tag を付けて通信するようになります

例ではVLANが3つだけですので、各VLAN1本ずつ、系3本のスイッチ間接続をする、という構成も可能です。しかし例えばこれが、VLANが20個あったとしたらそれだけでポートを20ポートも消費してしまいます。このようなケースでも、タグVLAN を使えば1ポートだけで20個のVLANを共有できます。

Native VLAN (PVID) とは

Native VLAN とはトランクポートの中で、タグを付けない VLAN ID のことを指します。デフォルトVLAN や PVID (Port VLAN ID) も同じ意味です。

この Native VLAN も IEEE802.1q の規格で決まっており、各トランクポートで1つだけ、この Native VLAN を指定することができます(機器単位ではなくポート単位で指定できるものが多いです)。デフォルトでは全ポート VLAN ID=1 が Native VLAN になっています。

Native VLAN の不一致

上図左側の例に示した通り、Native VLAN はトランクリンクの両端で揃える必要があります(スイッチの全トランクポートでそろえる必要はありません)。

もし揃えないと、例の右側の「悪い例」のように、VLAN 1 の通信が VLAN 2 に混入したりと、論理構成に捻じれが発生したりします

Native VLAN の不一致は、特にPVSTPではループの検知が出来なくなる可能性があるため、エラーにも出力されます。

なお、CDP (Cisco Discovery Protocol) には Native VLAN 情報も乗っており、不一致があると "%CDP-4-NATIVE_VLAN_MISMATCH: Native VLAN mismatch discovered on " といったログが出力されます。

どういう時にネイティブVLANを変更する?

変更する理由は基本的には無いはずですが、ケースとして2つ例を挙げます。

1つ目は、例えばネイティブVLANを10にすると、そのポートにPCやVLAN非対応のスイッチングハブを接続すると、VLAN10で通信できます。このあたりは下記記事にも記載しています。

トランクポートとアクセスポートの違い、trunk port に access port や PC を接続するとどうなるか
トランクポートとアクセスポートの違い、trunk port に access port や PC を接続するとどうなるか
タグVLANを使う場合はポートにトランクポートという設定を入れる必要があります。...

2つ目は、1つ目に関連するのですが、デフォルトVLANであるVLAN1は、telnet接続用等の管理用として使われることも多いです。トランクポートを一般ユーザが物理的にいじれる位置にあると、そのポートを引っこ抜いてPCに接続するとVLAN1へアクセスできてしまいます

そのようなセキュリティの理由で、適当なVLANに変更するケースが考えられます。

accessポート、trunkポートとtagged, untaggedについて

メーカによっては、accessポート、trunkポートという括りがなく、単純にポート単位でtagged、untaggedのVLAN IDを指定するスイッチもあります。

例えば以下のような対応になります。

access, trunktagged, untagged
access vlan=10untagged=10
trunk vlan=10,20tagged=10,20
trunk vlan=20(native vlan), 30,40untagged=20, tagged=30,40

Native VLAN をタグ付きで受信した場合の挙動

Native VLAN や untagged に指定したVLANを、タグ付きで受信した場合の挙動は、メーカによって異なります

例えば、Native VLAN=10 に設定したポートで、タグ付きのVLAN 10を受信した場合、通常のVLAN=10として許可する場合もありますし、破棄されてしまう場合もありますので、もしそのような構成をする場合は事前に確認が必要です。

voice vlan でタグを付ける理由

voice vlan はタグを付けるのが cisco の推奨です。2 byte とはいえ、速度にシビアな音声パケットにオーバーヘッドともなるタグを付けるのは何故でしょうか?

これは、tag vlan には IEEE802.1p という QoS で利用できるフィールド (通称 cos) があるからです。音声パケットはこの cos 値を 5 に設定することで、スイッチに『このパケットは優先で通過させてね』と伝えるのです。

なお、単に cos 値を 5 にセットするだけでは QoS は動作しません。経由する各スイッチで『cos 値 = 5 のパケットを優先で出力する』という設定が必要です。

シェアする

  • このエントリーをはてなブックマークに追加

フォローする