スイッチが2台あり、それぞれにVLAN 10とVLAN 20の機器が混在しているとき、両方のVLANの通信を1本のケーブルだけで2台のスイッチ間に流すことはできるでしょうか?
VLANごとに専用の配線を用意していたら、VLANの数だけケーブルが増えてしまいます。もっとスマートな方法があります。想像しながら読み進めてください。
複数VLANを1本のケーブルで運ぶ「トランク」
前回、VLANごとにアクセスポートを設定する方法を学びました。しかし、スイッチ同士を接続するリンクで、VLANの数だけケーブルを用意するのは非効率です。そこで使われるのがトランクポートです。
トランクポートは、複数のVLANのフレームを1本の物理リンクにまとめて流すための特殊なポートです。宅配便のトラック1台に、複数の家庭あての荷物をまとめて積み込むイメージに近いです。ただし、荷物を混同しないためには、それぞれの荷物に「どの家庭あてか」を示す荷札が必要ですよね。トランクリンクでも同じように、フレームに「どのVLANのものか」を示す目印が必要です。それを実現するのがIEEE 802.1Qという規格です。
IEEE 802.1Qタグの中身
802.1Qは、イーサネットフレームに4バイトのタグを挿入することで、そのフレームがどのVLANに属するかを示す規格です。このタグの中にVLAN IDを格納するフィールドがあり、これは12ビットの長さです。
12ビットで表現できる範囲は 0〜4095 ですが、実際に使えるVLAN IDは1〜4094です(0と4095は予約されており、通常は使用しません)。これが「VLAN IDは1〜4094まで」という数字の根拠です。
タグにはVLAN IDのほかに、優先度情報(CoS、QoSに関わる3ビットのフィールド)なども含まれますが、CCNAレベルではまず「4バイトのタグにVLAN IDが12ビットで入っている」という点を押さえておけば十分です。
トランクポートの設定
トランクポートの設定はシンプルです。対象のポートに switchport mode trunk を設定します。
Switch(config)# interface gigabitEthernet 0/1
Switch(config-if)# switchport mode trunk
Switch(config-if)# switchport trunk allowed vlan 10,20,30
switchport mode trunk でこのポートをトランクポートにします。さらに switchport trunk allowed vlan で、このトランクリンクを通過させたいVLANを明示的に指定できます。これを設定しない場合はデフォルトですべてのVLANが許可されますが、実務ではセキュリティや帯域の観点から、必要なVLANだけに絞り込むのが一般的です。
設定を確認する
トランクの状態は show interfaces trunk で確認します。
Switch# show interfaces trunk
Port Mode Encapsulation Status Native vlan
Gi0/1 on 802.1q trunking 1
Port Vlans allowed on trunk
Gi0/1 10,20,30
Modeがtrunkとして動作していること、使われているEncapsulationが802.1qであること、そしてVlans allowed on trunkに許可したVLANが表示されていることを確認できます。Native vlanという項目も見えますが、こちらは次回のテーマです。
802.1QタグでVLAN IDを格納するフィールドは何ビットで、その結果、実際に使用できるVLAN IDの範囲はどこからどこまででしょう?
答えを見る
答えは「12ビット」で、実際に使用できるVLAN IDの範囲は1〜4094です。12ビットは0〜4095を表現できますが、0と4095は予約されているため通常は使用しません。
試験でのポイント
CCNA試験では、802.1Qのタグサイズ(4バイト)、VLAN IDのビット数(12ビット)、使用可能なVLAN IDの範囲(1〜4094)という3つの数字がセットで問われやすいです。また、トランクポートの設定コマンド switchport mode trunk と、許可VLANを絞り込む switchport trunk allowed vlan の役割の違いも狙われます。「トランクにすればVLANを自動的に絞り込んでくれる」という誤解をしないよう、デフォルトではすべてのVLANが許可される点も覚えておきましょう。
トランクポートで switchport trunk allowed vlan を一度も設定していない場合、デフォルトの動作として正しいのはどれでしょう?
答えを見る
答えは「すべてのVLANのフレームがそのトランクリンクを通過できる」です。switchport trunk allowed vlan を設定しない限り、デフォルトではすべてのVLANがトランクを通過可能な状態になっています。
トランクは複数VLANを1本のケーブルで運ぶ仕組み、802.1Qタグは4バイトでVLAN IDは12ビット——この数字、試験でよく聞かれるからしっかり覚えておいてね。次はトランクに関わるもう一つの重要な話、ネイティブVLANと音声VLANを見ていくよ。