VLAN間ルーティングを有効化すると、全てのVLAN間で通信が可能になります。しかし、セキュリティやポリシー上、特定VLAN間の通信を制限したいケースは多くあります。その際に活用できるのがACL(アクセス制御リスト)です。本記事では、ACLを使ったVLAN間通信制限の方法を解説します。

1. ACLの種類

  • 標準ACL:送信元IPアドレスだけで制御
  • 拡張ACL:送信元IP、宛先IP、プロトコル、ポート番号まで制御可能

VLAN間通信の制御では、細かい条件を設定できる拡張ACLが推奨されます。

2. 設定例:VLAN 10からVLAN 20への通信を拒否

構成例:

  • VLAN 10:192.168.10.0/24(ゲートウェイ 192.168.10.1)
  • VLAN 20:192.168.20.0/24(ゲートウェイ 192.168.20.1)
Switch# configure terminal
! ACL 101を作成(VLAN 10 → VLAN 20 を拒否)
ip access-list extended VLAN10_TO_VLAN20_DENY
 deny ip 192.168.10.0 0.0.0.255 192.168.20.0 0.0.0.255
 permit ip any any
exit

! VLAN 10のSVIにACLを適用(in方向)
interface Vlan10
 ip access-group VLAN10_TO_VLAN20_DENY in

3. ACL適用の方向(in/out)

  • in:そのインターフェースに入ってくるトラフィックに適用
  • out:そのインターフェースから出ていくトラフィックに適用

VLAN間制限では、基本的に送信元側のSVIにinで適用する方が分かりやすく、影響範囲も限定できます。

4. 確認コマンド

Switch# show access-lists VLAN10_TO_VLAN20_DENY
Extended IP access list VLAN10_TO_VLAN20_DENY
    10 deny ip 192.168.10.0 0.0.0.255 192.168.20.0 0.0.0.255
    20 permit ip any any
  • deny/permitルールの順番は重要(上から順に評価)
  • ヒットカウントが増えているかで適用状況を確認

5. 動作検証

  1. VLAN 10の端末からVLAN 20の端末へping → 通らない
  2. VLAN 10の端末からインターネットや他VLANへのアクセス → 許可される

6. 運用上の注意

  • ACLは設定順序が重要。許可したい通信はdenyルールより上に記述
  • 複数のACLを同じ方向・インターフェースに適用できない(1方向1つまで)
  • 不要になったACLはインターフェースから解除後に削除
  • 変更時は一時的にpermit anyを使って通信断を防ぐ方法もある

7. まとめ

ACLを使えば、VLAN間ルーティングを有効にしつつも不要な通信を遮断できます。特に拡張ACLを活用すると、特定プロトコルやポートのみ許可するといった柔軟な制御も可能です。適用方向とルール順序を意識し、安全なネットワーク運用を実現しましょう。