ISDN
9. ポリシーフィルタの設定
9.1 サービスの定義
[ 書式 ] ip policy service id service_name protocol [source_port destination_port] ipv6 policy service id service_name protocol [source_port destination_port] no ip policy service id [service_name [protocol [source_port destination_port]]]
no ipv6 policy service id [service_name [protocol [source_port destination_port]]]
[ 設定値 ] ○ id... サービスの識別子 (1 .. 65535)
○ service_name... サービスの名前 ( 最大 16 文字まで )
○ protocol ... プロトコル (tcp, udp, icmp, ipv6, rsvp, gre, esp, ah, icmp6, ospf, pim)
○ source_port... 始点ポート番号 ( プロトコルが tcp または udp のときのみ指定できる )
● * ... すべて
● 番号 (0 .. 65535)
● 番号の範囲 ( 例 : 6000-、6000-6010、-6010)
○ destination_port .. 終点ポート番号 ( プロトコルが tcp または udp のときのみ指定できる )
● 書式はsource_portと同じ。
[ 説明 ] サービスを定義する。このコマンドで定義したサービスは、ip/ipv6 policy filterコマンドや、ip/ipv6 policy service groupコマンドで指定できる。
[ ノート ] service_nameとして整数は設定できない。
[ 初期値 ] 設定されていない
9.2 インタフェースグループの定義
[ 書式 ] ip policy interface group id [name=name] [interface ...] [group group_id ... ] ipv6 policy interface group id [name=name] [interface ...] [group group_id ... ] no ip policy interface group id [name=name] [interface ...] [group group_id ... ] no ipv6 policy interface group id [name=name] [interface ...] [group group_id ... ]
[ 設定値 ] ○ id... インタフェースグループの識別子 (1 .. 65535)
○ name... 名前 ( 半角 32 文字以内 )
○ interface... インタフェース
● * ... すべて
● lan* ... すべての LAN インタフェース
● pp* ... すべての PP インタフェース
● tunnel*... すべての TUNNEL インタフェース
● lanN-lanM... LAN インタフェースの範囲 ( 例 : lan1-lan3)
● ppN-ppM... PP インタフェースの範囲 ( 例 : pp1-pp30)
● tunnelN-tunnelM... TUNNEL インタフェースの範囲 ( 例 : tunnel1-tunnel10)
● lanN... LAN インタフェース
● ppN... PP インタフェース
● tunnelN... TUNNEL インタフェース
● local... ルーター自身
○ group_id... 他のip/ipv6 policy interface groupコマンドで定義したインタフェースグループの識 別子 (1 .. 65535)
[ 説明 ] インタフェースのグループを定義する。group キーワードの後ろにgroup_idを記述することで、他のインタ フェースグループを入れ子にすることができる。ただし、さらにその先のグループは参照されない。ここで定義し たグループは、ip/ipv6 policy filterコマンドで指定できる。
[ 適用モデル ] RTX3000 RTX1200 RTX1100 RTX800 RT107e
[ 適用モデル ] RTX3000 RTX1200 RTX1100 RTX800 RT107e
9.3 アドレスグループの定義
[ 書式 ] ip policy address group id [name=name] [address ...] [group group_id ... ] ipv6 policy address group id [name=name] [address ...] [group group_id ... ] no ip policy address group id [name=name] [address ...] [group group_id ... ] no ipv6 policy address group id [name=name] [address ...] [group group_id ... ]
[ 設定値 ] ○ id... アドレスグループの識別子 (1 .. 65535)
○ name... 名前 ( 半角 32 文字以内 )
○ address... アドレス
● * ... すべて
● IP アドレス ... 単一の IP アドレス
● IP アドレス / ネットマスク長 ... 単一のネットワーク
● IP アドレス -IP アドレス ... IP アドレスの範囲
○ group_id... 他のip/ipv6 policy address groupコマンドで定義したアドレスグループの識別子 (1 .. 65535)
[ 説明 ] アドレスのグループを定義する。group キーワードの後ろにgroup_idを記述することで、他のアドレスグループ を入れ子にすることができる。ただし、さらにその先のグループは参照されない。このコマンドで定義したグルー プは、ip/ipv6 policy filterコマンドで指定できる。
9.4 サービスグループの定義
[ 書式 ] ip policy service group id [name=name] [service ...] [group group_id ... ] ipv6 policy service group id [name=name] [service ...] [group group_id ... ] no ip policy service group id [name=name] [service ...] [group group_id ... ] no ipv6 policy service group id [name=name] [service ...] [group group_id ... ]
[ 設定値 ] ○ id... サービスグループの識別子 (1 .. 65535)
○ name... 名前 ( 半角 32 文字以内 )
○ service... サービス
● * ...すべて
● 定義済みサービス ...http, ftp, dns などip filterコマンドのポート設定のニーモニックに準ずる
● ユーザ定義サービス...ip/ipv6 policy serviceコマンドで定義した名前
● プロトコルとポート番号 ...tcp/ ポート番号、または udp/ ポート番号
○ group_id... 他のip/ipv6 policy service groupコマンドで定義したサービスグループの識別子 (1 .. 65535)
[ 説明 ] サービスのグループを定義する。group キーワードの後ろにgroup_idを記述することで、他のサービスグループ を入れ子にすることができる。ただし、さらにその先のグループは参照されない。このコマンドで定義したグルー プは、ip/ipv6 policy filterコマンドで指定できる。
[ 適用モデル ] RTX3000 RTX1200 RTX1100 RTX800 RT107e
[ 適用モデル ] RTX3000 RTX1200 RTX1100 RTX800 RT107e
9.5 ポリシーフィルタの定義
[ 書式 ] ip policy filter id action source_interface [dest_interface [source_address [dest_address [service ]]]]
ipv6 policy filter id action source_interface [dest_interface [source_address [dest_address [service ]]]]
no ip policy filter id [action [source_interface [dest_interface [source_address [dest_address [service ]]]]]]
no ipv6 policy filter id [action [source_interface [dest_interface [source_address [dest_address [service ]]]]]]
[ 設定値 ] ○ id... ポリシーフィルタの識別子 (1 .. 65535)
○ action... 動作
● pass-log... 通過させてログに記録する
● pass-nolog... 通過させてログに記録しない
● reject-log... 破棄してログに記録する
● reject-nolog... 破棄してログに記録しない
● restrict-log... 回線がつながっているときのみ通過させてログに記録する
● restrict-nolog... 回線がつながっているときのみ通過せてログに記録しない
● static-pass-log... Stateful Inspection を使わずに通過させてログに記録する
● static-pass-nolog... Stateful Inspection を使わずに通過させてログに記録しない
○ source_interface .. 始点インタフェース
● * ... すべて
● lan* ... すべての LAN インタフェース
● pp* ... すべての PP インタフェース
● tunnel* ... すべての TUNNEL インタフェース
● lanN-lanM... LAN インタフェースの範囲 ( 例 : lan1-lan3)
● ppN-ppM... PP インタフェースの範囲 ( 例 : pp1-pp30)
● tunnelN-tunnelM... TUNNEL インタフェースの範囲 ( 例 : tunnel1-tunnel10)
● lanN... LAN インタフェース
● ppN... PP インタフェース
● tunnelN... TUNNEL インタフェース
● local... ルーター自身
● グループ番号 ... ip/ipv6 policy interface groupコマンドで定義した番号
○ dest_interface... 終点インタフェース
● 書式は始点インタフェースと同じ
○ source_address ... 始点アドレス
● * ... すべて
● IP アドレス ... 単一の IP アドレス
● IP アドレス / ネットマスク長 ... 単一のネットワーク
● IP アドレス -IP アドレス ... IP アドレスの範囲
● グループ番号 ... ip/ipv6 policy address groupコマンドで定義した番号
○ dest_address... 終点アドレス
● 書式は始点アドレスと同じ
○ service... サービス
● * ... すべて
● ユーザ定義サービス... ip/ipv6 policy serviceコマンドで定義した名前
● プロトコルとポート番号 ... tcp/ ポート番号、または udp/ ポート番号
● グループ番号... ip/ipv6 policy service groupコマンドで定義した番号
[ 説明 ] ポリシーフィルタを定義する。パラメータを省略したときには「*」が指定されたものとして扱う。
インタフェースとして anonymous インタフェースは定義できない。
なお、このコマンドの定義は、ip/ipv6 policy filter setコマンドやip/ipv6 policy filter set enableコマン ドを設定しないと有効にならない。
[ 初期値 ] 設定されていない
[ 設定例 ] LAN1 の PC から LAN2 の Web サーバーへのアクセスを許可する
# ip policy filter 1 pass-log lan1 lan2 * * http
[ 適用モデル ] RTX3000 RTX1200 RTX1100 RTX800 RT107e
9.6 ポリシーセットの定義
[ 書式 ] ip policy filter set id [name=name] filter_set ...
ipv6 policy filter set id [name=name] filter_set ...
no ip policy filter set id [name=name] filter_set ...
no ipv6 policy filter set id [name=name] filter_set ...
[ 設定値 ] ○ id... ポリシーセットの識別子 (1 .. 65535)
○ name... 名前 ( 半角 32 文字以内 )
○ filter_set ... 空白で区切られたポリシー番号の並び ( 最大 128 個まで )
「[」や「]」記号により階層構造を表現できる
[ 説明 ] ポリシーセットを定義する。新しいコネクションが発生するたびに、先頭から順に一致するか否かを評価する。
階層的な構造になっている場合には、上位のポリシーフィルタから順に評価し、より深い階層のポリシーフィルタ を採用する。
階層を表現するためには「[」と「]」の記号を用いる。「[」は 1 つ下の階層への移動、「]」は 1 つ上の階層への移 動を意味する。
「[」は番号の前に記述し「]」は番号の直後に記述する。
ポリシーフィルタの番号の直後に「-」を付け加えることで、そのポリシーフィルタを無効にすることができる。
なお、同じポリシーフィルタを重複して設定することはできない。
[ 初期値 ] 設定されていない
[ 設定例 ] LAN から PP へは WEB サイトの閲覧のみを許可する
#ip policy filter 1 reject-nolog lan1 pp1 * * *
#ip policy filter 2 pass-nolog * * * * www
#ip policy filter set 1 name="WWW Access" 1 [2]
#ip policy filter set enable 1
9.7 ポリシーセットの有効化
[ 書式 ] ip policy filter set enable id ipv6 policy filter set enable id no ip policy filter set enable [id] no ipv6 policy filter set enable [id]
[ 設定値 ] ○ id... ポリシーセットの識別子 (1 .. 65535)
[ 説明 ] ポリシーセットを指定する。このコマンドで指定したポリシーセットだけが実際に有効になる。
同時に有効にできるポリシーセットは 1 つだけである。
[ ノート ] 有効なポリシーセットの内容が変更された後には必ず本コマンドを実行する。
[ 初期値 ] 設定されていない
[ 適用モデル ] RTX3000 RTX1200 RTX1100 RTX800 RT107e
[ 適用モデル ] RTX3000 RTX1200 RTX1100 RTX800 RT107e
9.8 ポリシーセットの自動切り替え
[ 書式 ] ip policy filter set switch original backup trigger trigger ... [count=count] [interval=interval] [recovery-time=time]
ipv6 policy filter set switch original backup trigger trigger ... [count=count] [interval=interval] [recov-ery-time=time]
no ip policy filter set switch original backup [trigger trigger ... [count=count] [interval=interval] [recovery-time=time]]
no ipv6 policy filter set switch original backup [trigger trigger ... [count=count] [interval=interval] [recovery-time=time]]
[ 設定値 ] ○ original... 切り替え元のポリシーセットの番号 (1 .. 65535)
○ backup... 切り替え後のポリシーセットの番号 (1 .. 65535)
○ trigger... 切り替えのトリガ
● winny... 不正アクセス検知機能で Winny を検知したとき
● share... 不正アクセス検知機能で Share を検知したとき
● ethernet-filter... イーサネットフィルタで IP パケットが破棄されたとき
● qos-class-control... DCC (Dynamic Class Control) で帯域の占有を検知したとき
○ count... ポリシーセットを切り替えるまでに受信するトリガの回数。intervalで設定した時間中に
countで設定した個数のトリガを受信したらポリシーセットを切り替える。
● 1 .. 10
○ interval ... トリガの発生回数を計測する時間。intervalで設定した時間中にcountで設定した個数の トリガを受信したらポリシーセットを切り替える。
● 秒数 (2 .. 600)
○ time ... トリガの事象が最後に発生してから元のポリシーセットに戻すまでの猶予時間
● 秒数 (60 .. 604800)
● infinity... ポリシーセットを元に戻さない
[ 説明 ] triggerパラメータで指定した事象を契機として、ポリシーセットを自動的に切り替える。
original、backupパラメータには、ip/ipv6 policy filter setコマンドで定義したポリシーセットの識別番号を 指定する。
事象によって切り替えるポリシーセットを変えることができる。このためには、下記のように複数のコマンドを設 定すればよい。
○ ip policy filter set switch1 2 triger winny
○ ip policy filter set switch1 3triger ethernet-filter
○ ip policy filter set switch1 4 triger qos-class-control
事象が発生したときに切り替えるタイミングを、countとintervalの組み合わせで指定できる。
intervalで指定した時間内にcountで指定した回数の事象が発生したら、ポリシーセットを切り替える。
countが 1 のときには、最初の事象が発生したときにすぐにポリシーセットを切り替えるので、intervalの設定は
意味を持たない。
事象が発生しなくなってから元のポリシーセットに戻すまでの時間をtimeで指定できる。
timeとしてinfinityを指定したときには、ポリシーセットを元に戻さない。
この場合には、ip/ipv6 policy filter set enableコマンドを実行することでポリシーセットを元に戻すことがで きる。
切り替えが動作しているときにip/ipv6 policy filter setコマンドやip/ipv6 policy filter set enableコマン ドの設定を変更したときには、切り替えに関する動作は中断し、切り替え前の状態に戻る。
なお、originalとbackupに同じポリシーセットを指定することはできない。
また、original、backupパラメータで指定したポリシーセットが定義されていないときには、ポリシーセットは
切り替わらない。
[ 初期値 ] count... 1[ 回 ]
interval... 5[ 秒 ]
time... 3600[ 秒 ]
[ 設定例 ] winny の検知とイーサネットフィルタによるパケット破棄を契機として、ポリシーセットを 1 番から 2 番に切り替 える。
ip policy filter set 1 name="main" 101 102 103 104 105 106 ip policy filter set 2 name="backup" 201 202 203 204 205 206 ip policy filter set switch 1 2 trigger winny ethernet-filter
[ 適用モデル ] RTX3000 RTX1200 RTX1100 RTX800 RT107e
9.9 タイマーの設定
[ 書式 ] ip policy filter timer [option=timeout ... ] no ip policy filter timer
[ 設定値 ] ○ option... オプション名
● tcp-syn-timeout.... SYN を受けてから設定された時間内にデータが流れなければセッションを切断する
● tcp-fin-timeout .... FIN を受けてから設定された時間が経てばセッションを強制的に解放する
● tcp-idle-time... 設定された時間内に TCP セッションのデータが流れなければセッションを切断する
● udp-idle-time... 設定された時間内に UDP セッションのデータが流れなければセッションを切断する
● dns-timeout... DNS の query を受けてから設定された時間内にデータが流れなければセッションを切断 する
● icmp-timeout... 設定された時間内に ICMP セッションのデータが流れなければセッションを切断する (ping に適用される )
○ timeout... タイムアウト時間 ( 秒 )
[ 説明 ] ポリシーフィルタで使用するタイマーの値を設定する。このコマンドの設定は IPv4 と IPv6 で共通である。
[ 初期値 ] tcp-syn-timeout=30 tcp-fin-timeout=5 tcp-idle-time=3600 udp-idle-time=30 dns-timeout=5 icmp-timeout=10
[ 適用モデル ] RTX3000 RTX1200 RTX1100 RTX800 RT107e