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. 動作検証
- VLAN 10の端末からVLAN 20の端末へping → 通らない
- VLAN 10の端末からインターネットや他VLANへのアクセス → 許可される
6. 運用上の注意
- ACLは設定順序が重要。許可したい通信はdenyルールより上に記述
- 複数のACLを同じ方向・インターフェースに適用できない(1方向1つまで)
- 不要になったACLはインターフェースから解除後に削除
- 変更時は一時的にpermit anyを使って通信断を防ぐ方法もある
7. まとめ
ACLを使えば、VLAN間ルーティングを有効にしつつも不要な通信を遮断できます。特に拡張ACLを活用すると、特定プロトコルやポートのみ許可するといった柔軟な制御も可能です。適用方向とルール順序を意識し、安全なネットワーク運用を実現しましょう。