RAガードとは
**RAガード(Router Advertisement Guard)**は、IPv6ネットワークにおけるセキュリティ機能の一つで、不正なIPv6ルーターアドバタイズメント(RA)メッセージをブロックし、ネットワーク内での誤ったルーティング情報の拡散を防ぐために使用されます。
IPv6ネットワークでは、ルーターがICMPv6 Router Advertisement(RA)メッセージを送信し、ホストに対してプレフィックス情報やデフォルトゲートウェイなどの重要なネットワーク設定を通知します。これにより、ホストは自動的にアドレスを設定し、ネットワークに接続できます。しかし、攻撃者がネットワークに不正なRAメッセージを送信することで、ホストが誤ったルーター情報を使用してしまうことがあります。これを防ぐのがRAガードです。
RAガードの目的
RAガードの主な目的は、ネットワーク内での不正なRAメッセージによる攻撃(RAスプーフィング)を防ぎ、ホストが誤ったルーターに接続しないようにすることです。不正なRAメッセージが流入すると、以下のような問題が発生します。
- 偽のデフォルトゲートウェイ設定:
- 攻撃者が不正なRAメッセージを送信し、ホストが偽のデフォルトゲートウェイを使用するように誘導されると、トラフィックが攻撃者の制御下に置かれます。これを**中間者攻撃(Man-in-the-Middle Attack)**と呼びます。
- ネットワークの混乱:
- 複数の不正なRAメッセージがネットワーク内に存在すると、ホストが正しいルーターに接続できず、ネットワーク全体が不安定になる可能性があります。
RAガードの設定
基本構文
RAガードポリシーを作成します。
Switch(config)#ipv6 nd raguard policy policy-name
ポートに接続されているデバイスの役割を指定します。デフォルトは host です。
Switch(config-ra-guard)#device-role {host | monitor | router | switch}
RAメッセージのホップ数の最大値または最小値を制限します。
Switch(config-ra-guard)#hop-limit {maximum | minimum limit}
RAメッセージに含まれる管理フラグ(Managed Config Flag)が有効か無効かを指定します。
Switch(config-ra-guard)#managed-config-flag {on | off}
| コマンド | 内容 |
|---|---|
| on | 管理フラグ(Managed Config Flag)が 1 の RA メッセージを受け入れて転送し、0 のものをブロックします。 |
| off | 管理フラグ(Managed Config Flag)が 0 の RA メッセージを受け入れて転送し、1 のものをブロックします。 |
特定のIPv6アクセスリスト(ACL)またはプレフィックスリストに基づいてRAメッセージをフィルタリングします。
Switch(config-ra-guard)#match ipv6 access-list ipv6-access-list-name
Switch(config-ra-guard)#match ra prefix-list ipv6-prefix-list-name
他の設定フラグ(Other Config Flag)が有効か無効かを指定します。
Switch(config-ra-guard)#other-config-flag {on | off}
| コマンド | 内容 |
|---|---|
| on | 他の設定フラグ(Other Config Flag)が 1 の RA メッセージを受け入れて転送し、0 のものをブロックします。 |
| off | 他の設定フラグ(Other Config Flag)が 0 の RA メッセージを受け入れて転送し、1 のものをブロックします。 |
RAメッセージのルーター優先度を基にフィルタリングします。
Switch(config-ra-guard)#router-preference maximum {high | low | medium}
信頼されたポートとして指定されたインターフェースからのRAメッセージを許可します。
witch(config-ra-guard)#trusted-port
IPv6RAガードポリシーをインターフェイスに適用します。
Switch(config)#interface interface-id
Switch(config-if)#ipv6 nd raguard attach-policy [policy-name [vlan {add | except | none | remove | all }
| コマンド | 内容 |
|---|---|
| add | ポリシーを指定したVLANに追加します。 |
| except | 指定したVLANをRAガードポリシーの適用対象から除外します。 |
| none | VLAN設定を行わず、RAガードポリシーを適用しません。 |
| remove | 指定したVLANからRAガードポリシーを削除します。 |
| all | すべてのVLANに対してRAガードポリシーを適用します。 |
設定例
ホストデバイスが接続されるインターフェースでの不正なRAメッセージをブロックするためのものです。RAメッセージを監視し、不正なホップリミットや不適切なフラグを持つメッセージをフィルタリングします。
Switch(config)# ipv6 nd raguard policy RA_POLICY_1
Switch(config-ra-guard)# device-role host
Switch(config-ra-guard)# hop-limit maximum 255
Switch(config-ra-guard)# managed-config-flag on
Switch(config-ra-guard)# other-config-flag off
Switch(config-ra-guard)# exit