🎓 レベル:標準 | 重要度:B(重要) 📎 前提:スイッチの動作(MACテーブル学習)
要点(BLUF)
- L2(スイッチ)は便利な自己学習ゆえに悪用もされやすい。代表的な攻撃に対し、スイッチ自身で防ぐ機能がCCNAで問われます。
- ポートセキュリティ=ポートに許すMACを制限(MACフラッディング対策)。DHCPスヌーピング=不正DHCPサーバを遮断。DAI=ARPスプーフィング対策。
- DAIはDHCPスヌーピングの情報(バインディング表)を土台に動くため、順に積み上げるのが定石です。
ポートセキュリティ:MACを縛る
攻撃者が大量の偽MACを送るとMACテーブルが溢れ、スイッチが全フレームをフラッディングし始めます(盗聴可能に)。ポートセキュリティは1ポートで学習するMAC数や特定MACに制限し、違反時にポートを保護します。
Switch(config)# interface Gi0/1
Switch(config-if)# switchport mode access
Switch(config-if)# switchport port-security
Switch(config-if)# switchport port-security maximum 2
Switch(config-if)# switchport port-security mac-address sticky
Switch(config-if)# switchport port-security violation shutdown
- maximum:許可するMAC数。
- sticky:学習したMACを動的に設定へ保存。
- violation:違反時の動作(
shutdown=err-disable /restrict=破棄+ログ /protect=破棄のみ)。
DHCPスヌーピング:偽サーバを止める
攻撃者が勝手なDHCPサーバを立て、偽のゲートウェイ/DNSを配ると、通信を乗っ取れます(中間者攻撃)。DHCPスヌーピングは、ポートを**信頼(trust)/非信頼(untrust)**に分け、正規サーバが居る信頼ポートからのDHCP応答だけを通します。
graph TD SV["正規DHCPサーバ(信頼ポート)"] SW["スイッチ(スヌーピング有効)"] ATK["不正DHCPサーバ(非信頼ポート→応答を遮断)"] PC["端末"] SV -->|"DHCP応答を許可"| SW ATK -->|"DHCP応答を破棄"| SW SW --> PC
Switch(config)# ip dhcp snooping
Switch(config)# ip dhcp snooping vlan 10
Switch(config)# interface Gi0/24
Switch(config-if)# ip dhcp snooping trust
スヌーピングは副産物として、どのポートにどのIP/MACの端末がいるかの「バインディング表」を作ります。これがDAIの土台になります。
DAI(動的ARP検査):なりすましを弾く
ARPは認証がなく、「このIPは私のMACです」と嘘をつけます(ARPスプーフィング)。DAIは、スヌーピングのバインディング表と照合し、IPとMACの対応が正しいARPだけを通します。
Switch(config)# ip arp inspection vlan 10
Switch(config)# interface Gi0/24
Switch(config-if)# ip arp inspection trust
なぜL2で防ぐのか(設計の直観)
これらの攻撃は同一LAN内(L2)で完結し、ルータやファイアウォール(L3以上)の手前で起きます。上位層の防御では届かないため、最も近いスイッチで断つのが合理的です。スイッチの「つなぐだけで学習する」便利さは、裏返せば「嘘の情報も素直に学ぶ」弱点。だから信頼の境界(trust/untrust)を明示し、正規の情報源だけを信じるよう設定で縛ります。なお、FW/IPS/VPNなど本格的な防御の深掘りはサイバーセキュリティ分野へ繋ぎます。
⚠️ よくある誤解
- 「DAIだけ有効にすれば防げる」ではない。DAIはDHCPスヌーピングのバインディング表に依存。スヌーピング無しでは静的設定が要り、実質機能しません。順序が大事。
- 「信頼ポートは安全なポート」ではない。trustは「ここからのDHCP/ARPを検査せず通す」指定。正規サーバ/上位スイッチ向けだけに付け、端末ポートはuntrustが原則。
- 「ポートセキュリティのstickyは恒久保存」ではない。学習はしますが、
write memoryしないと再起動で消えます。
対応 lab
- なし(IOS設定。Packet Tracer等での違反再現を推奨)
関連
- スイッチの学習:
[[02-02_スイッチの動作]]/ARPの素性:[[03-04_ARPとICMP]]/DHCP:[[05-03_DHCP]] - 上位の防御はセキュリティ分野へ/L3の許可制御:
[[07-02_ACL]]