スイッチのポートの種類

VLANの仕組みをしっかりと理解するには、スイッチの内部でのVLANとポートの割り当てを意識することが重要です。レイヤ2スイッチ内部でどのようにVLANとポートが割り当てられているかによって、スイッチのポートは次の2つにわけて考えます。

  • アクセスポート
  • トランクポート

アクセスポートとは、1つのVLANにのみ割り当てられているポートです。割り当てられているVLANのイーサネットフレームのみ転送できます。一方、トランクポートは複数のVLANに割り当てられているポートで、複数のVLANのイーサネットフレームを転送できます。

アクセスポートとトランクポートをまとめて「スイッチポート」と呼ぶことがあります。「スイッチポート」という言葉は、レイヤ2スイッチとしてのポートを指していると考えてください。

このページでは、トランクポートについて詳しく解説します。

レイヤ2スイッチのポートの大切なポイント

  • VLANとポートの割り当てをきちんと意識する
  • アクセスポートは、1つのVLANのみに割り当てられているポート
  • トランクポートは、複数のVLANに割り当てられているポート

トランクポート

ネットワークは1台のスイッチだけではなく、複数のスイッチを利用して構築することが多いでしょう。すると、スイッチをまたがってVLANの構築を行いたいということもあるでしょう。その場合、スイッチ間で複数のVLANのイーサネットフレームを転送することになります。スイッチをまたがって複数のVLANを構築するときに、スイッチ間の接続をシンプルにするためにトランクポートを利用します。

1つのポートで複数のVLANのイーサネットフレームを転送するために、ポートをトランクポートとして設定します。

「トランクポート」はベンダによっては「タグVLAN」と呼ぶこともあります。

スイッチをまたがったVLAN構成

スイッチをまたがったVLAN構成について具体的に考えます。話を簡単にするために、以下の図では、2台のレイヤ2スイッチをまたがってVLAN10、VLAN20という2つのVLANを構成する場合を考えています。

VLANによって、レイヤ2スイッチは同じVLANのポート間のみイーサネットフレームを転送するようになります。そのため、2台のレイヤ2スイッチをまたがってVLAN10を構成するには、レイヤ2スイッチ間をVLAN10に割り当てているアクセスポートで接続すればよいことになります。

同様に2台のレイヤ2スイッチでVLAN20を構成するには、VLAN20に割り当てているポートで接続します。

VLANごとにスイッチ間を接続
図 VLANごとにスイッチ間を接続

VLANごとにレイヤ2スイッチ間を接続すれば、スイッチをまたがってVLANを構成できます。しかし、このようなスイッチ間の接続は効率的ではありません。VLANが増えれば増えるほど、スイッチのポートをたくさん使うことになります。そして、あとからVLANを追加すると、スイッチの設定変更だけでなく物理的な配線の追加も必要です。そこで、スイッチ間をトランクポートで接続します。

トランクポートによるスイッチ間の接続

レイヤ2スイッチのポートをトランクポートとして設定することができます。スイッチをまたがって複数のVLANを構成するとき、トランクポートを利用すれば、スイッチ間の接続は1本だけですみます。トランクポートとは、複数のVLANに割り当てられていて、複数のVLANのイーサネットフレームを転送できるポートです。そして、トランクポートで送受信するイーサネットフレームには、VLANタグが付加されます。

VLANの基本的な仕組みは、これまでにも述べているように「同じVLANのポート間でのみイーサネットフレームを転送する」ことです。スイッチは、自身の内部のVLANとポートの割り当てはわかりますが、他のスイッチの内部のVLANとポートの割り当てはわかりません。

以下の図のL2SW1は自身のVLANとポートの割り当ては把握していても、L2SW2のVLANとポートの割り当てがわかりません。そのため、L2SW2から転送されてきたイーサネットフレームがもともとどのVLANであるかがはっきりとわかりません。

図 自分自身のVLANとポートの割り当てはわかる

そこで、VLANタグを利用します。トランクポート上で転送するイーサネットフレームにはVLANタグを付加します。VLANタグによって、スイッチ間で転送されるイーサネットフレームがもともとどのVLANのものであるかがわかるようにしています。そして、複数のスイッチをまたがっていてもVLANの基本的な仕組みである同一VLANのポート間のみでイーサネットフレームを転送します。

IEEE802.1Q VLANタグ

VLANタグはIEEE802.1Qで規定されています。VLANタグを付加するIEEE802.1Qをトランクプロトコルと呼んでいます。トランクポートで扱うイーサネットフレームは、以下の図のようにヘッダ部分にVLANタグが追加されます。

IEEE802.1Q VLANタグ
図 IEEE802.1Q VLANタグ

VLANタグを付加すると、イーサネットヘッダが変更されます。そのため、FCSの再計算も行われます。

VLANタグのプライオリティによって、イーサネットフレームの優先度を決めることができます。VLANタグのプライオリティビットを利用した優先制御(QoS)の規格がIEEE802.1pです。

トランクプロトコルにはCisco独自のISL(Inter Switch Link)もあります。ただ、ISLを利用することはまずありません。

トランクポートでのイーサネットフレームの転送

「図 VLANごとにスイッチ間を接続する」のネットワーク構成に変わって、トランクポートでスイッチ間を接続したネットワーク構成でのイーサネットフレームの転送について考えます。トランクポートを利用すれば、L2SW1-L2SW2間を1本のリンク(ポート8)のみで接続すればよいです。L2SW1、L2SW2のポート8をトランクポートとして設定すると、ポート8はVLAN10にもVLAN20にも割り当てられるので、VLAN10のイーサネットフレームもVLAN20のイーサネットフレームも転送可能です。

VLAN10のPC1からPC3へのイーサネットフレームを送信するとL2SW1のポート1で受信します。ポート1はVLAN10に割り当てられています。VLAN10で受信したイーサネットフレームは同じVLAN10に割り当てられているトランクポート8に転送可能です。そして、ポート8からイーサネットフレームを転送するときには、VLAN10のイーサネットフレームであることを表すVLANタグを付加します。

L2SW2のポート8でタグ付きのイーサネットフレームを受信すると、タグからVLAN10であることがわかります。そこで、L2SW2は同じVLAN10のポートであるポート1へイーサネットフレームを転送します。このとき、VLANタグは除去して元のイーサネットフレームとしています。

こうして、2台のレイヤ2スイッチL2SW1とL2SW2をまたがって同じVLAN10のPC1からPC3へイーサネットフレームを転送できるようになります。VLAN20のPC2とPC4でも同様です。

図 L2SW1、L2SW2をまたがったVLAN10のイーサネットフレームの転送

図では省略していますが、VLANの設定をしているときでも受信したイーサネットフレームの送信元MACアドレスをMACアドレステーブルに登録しています。そして、宛先MACアドレスとMACアドレステーブルから転送先ポートを判断しています。

トランクポートをわかりやすく考えると、「割り当てているVLANごとに分割できるポート」です。ポート8をトランクポートにしてVLAN10とVLAN20に割り当てると、ポート8は2つに分割されることになります。

VLANによってスイッチを分割でき、トランクポートによってVLANごとにポートを分割できるので、ここまで考えているネットワーク構成は、次のようなネットワーク構成に置き換えられます。

VLANとトランクポートによるネットワーク構成
図 VLANとトランクポートによるネットワーク構成

トランクポートが割り当てられるVLANのデフォルトは、スイッチの製品によって異なります。デフォルトですべてのVLANに割り当てるようにしている製品もあれば、トランクポートに割り当てるVLANを明示的に設定しなければいけない製品もあります。Ciscoのデフォルトは、トランクポートにすると、そのスイッチ内のすべてのVLANに割り当てます。

トランクポートにするべきポート

トランクポートにするべきポートをあらためて明確にしておきましょう。

トランクポートにするべきポート

トランクポートにするポート : 1つのポートで複数のVLANのイーサネットフレームを転送するポート

「スイッチ同士を接続するポートをトランクポートにする」といった解説がされていることが多いのですが、スイッチ同士を接続するポートを必ずトランクポートにするわけではありません。その点を勘違いしないでください。(筆者はそのように思いこんでいましたが・・・)

1つのポートで複数のVLANのイーサネットフレームを転送したいポートをトランクポートにします。そのため、スイッチ同士を接続するポートで1つのVLANのイーサネットフレームしか転送しないのであれば、トランクポートにしなくてもいいです。また、PCやサーバを接続するポートであっても、複数のVLANのイーサネットフレームを転送する必要があればトランクポートにします。

まとめ

ポイント

  • トランクポートとは複数のVLANに割り当てられていて、複数のVLANのイーサネットフレームを送受信するポートです。
  • トランクポートからイーサネットフレームを転送するときにVLANタグが付加されます。VLANタグによって、転送されるイーサネットフレームがどのVLANのものかがわかります。
  • VLANタグを付加するためのプロトコルがIEEE802.1Qです。
  • トランクポートにするべきポートは、1つのポートで複数のVLANのイーサネットフレームを転送するポートです。

VLAN(Virtual LAN)の仕組み