Mímisbrunnr知恵の泉

← コンピュータネットワーク 一覧

🎓 レベル:標準 | 重要度:A(必須) 📎 前提:スイッチの動作(MACテーブル学習)

要点(BLUF)

なぜVLANが要るのか

スイッチだけのフラットなLANでは、ブロードキャスト(ARPなど)が全端末に届き、台数が増えるほど無駄と障害範囲が広がります。VLANで「営業部」「開発部」のように論理分割すれば、(1) ブロードキャストが各VLAN内に閉じる、(2) セキュリティ境界を作れる、(3) 物理配置に縛られず部署を構成できる、という利益が出ます。**「物理1台を、論理的に複数台に割る」**のがVLANです。

graph TD
  SW["1台のスイッチ"]
  SW --> V10["VLAN10 営業(独立したブロードキャストドメイン)"]
  SW --> V20["VLAN20 開発(独立したブロードキャストドメイン)"]
  V10 -.->|"通信にはL3が必要"| R["ルータ/L3スイッチ"]
  V20 -.->|"通信にはL3が必要"| R

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

graph LR
  PCa["PC(VLAN10)"] -->|"アクセス"| SW1["スイッチ1"]
  PCb["PC(VLAN20)"] -->|"アクセス"| SW1
  SW1 -->|"トランク(10と20を同時に運ぶ)"| SW2["スイッチ2"]
  SW2 -->|"アクセス"| PCc["PC(VLAN10)"]

802.1Q タグ

トランク上では、Ethernetフレームの送信元MACの直後に4バイトのタグを挿入します。中心は12ビットの**VLAN ID(1〜4094)**で、これでフレームの所属VLANを示します。

設定例(Cisco IOS)

VLAN作成、アクセスポート割当、トランク設定の最小形。

! VLANを作成
Switch(config)# vlan 10
Switch(config-vlan)# name Sales
Switch(config)# vlan 20
Switch(config-vlan)# name Dev

! Gi0/1 を VLAN10 のアクセスポートに
Switch(config)# interface Gi0/1
Switch(config-if)# switchport mode access
Switch(config-if)# switchport access vlan 10

! Gi0/24 をトランクに(ネイティブVLANを99に明示)
Switch(config)# interface Gi0/24
Switch(config-if)# switchport mode trunk
Switch(config-if)# switchport trunk native vlan 99
Switch(config-if)# switchport trunk allowed vlan 10,20,99

確認コマンド:

Switch# show vlan brief
Switch# show interfaces trunk

VLAN間ルーティング(つなぎ)

VLANをまたぐ通信は、(1) ルータの1本のトランクに複数の論理サブインターフェースを立てるRouter-on-a-stick、または (2) **L3スイッチのSVI(VLANインターフェース)**で行います。SVIの例:

Switch(config)# interface vlan 10
Switch(config-if)# ip address 192.168.10.1 255.255.255.0

この 192.168.10.1 が VLAN10 端末のデフォルトゲートウェイになります。ルーティングの考え方は第3章へ繋がります([[03-03_ルーティングの基礎]])。

⚠️ よくある誤解

対応 lab

関連