宛先IPアドレス(直接指定・範囲指定・アドレスグループ)を利用したフィルタリング設定

動作確認バージョン:Brocade 5600vRouter Version4.2R1S1
ここでは、ファイアウォールを通過するIP通信に対して許可または拒否する機能について紹介します。

パケットフィルタリング設定のながれ

1.パケットフィルタリング設定の名前を設定する
2.宛先IPアドレスの指定とそれを許可・拒否のルールを設定する
3.2.で作ったルールに該当しないIPアドレスをもつ通信に関して許可・拒否するルールを設定する
4.1.で作ったパケットフィルタリング設定を適用させるインタフェースに対してフィルタの方向について指定する

特定の宛先IPアドレスからの通信を拒否する設定

特定の宛先IPアドレスに向かう通信だけをファイアウォールのインタフェースで遮断する設定を行います。

サンプル設定のシナリオ

  • IPアドレス192.168.2.13に向かう通信をとめたい
  • インタフェース(dp0s6)にインプットするトラフィックに対して有効化したい
  • 192.168.2.13以外の宛先IPアドレスへの通信は、すべて許可する設定にしたい
構成図
Fig11

シナリオにおける設定のながれ

1.パケットフィルタリング設定の名前 test_rule
2.192.168.2.13を宛先IPアドレスとするパケットを拒否するルールを10として設定
3.192.168.2.13以外を宛先とするパケットについて許可する設定
4.dp0s6 インタフェースにてインプット方向へ適用

CLIにて入力するコマンド

set interfaces dataplane dp0s6 firewall in 'test_rule'
set security firewall name test_rule default-action 'accept'
set security firewall name test_rule rule 10 action 'drop'
set security firewall name test_rule rule 10 destination address '192.168.2.13'

注釈

シナリオと同じポリシーで、フィルタリング設定をアウトプット方向で適用したい場合は dp0s5 インタフェースにてout test_rule という形で指定してください。

正しく設定が完了したときのコンフィグレーションは次のとおりです。
interfaces {
       dataplane dp0s4 {
               address 192.168.1.50/24
       }
       dataplane dp0s5 {
               address 192.168.2.50/24
       }
       dataplane dp0s6 {
               address 192.168.3.5/24
               firewall {
                       in test_rule
               }
       }
}
security {
       firewall {
               name test_rule {
                       default-action accept
                       rule 10 {
                               action drop
                               destination {
                                       address 192.168.2.13
                               }
                       }
               }
       }
}

動作確認結果

以下の検証結果ログから、検証構成図にあるサーバ(192.168.3.3)から
192.168.2.12あての通信(Ping)が成功しますが、サーバ(192.168.3.3)から
フィルタリング設定で指定したIPアドレス(192.168.2.13)あての
通信(Ping)は失敗しておりパケットフィルタリング機能が動作していることが確認できました。
#192.168.2.12向け通信 -> OK

test@web1:~$ ping 192.168.2.12
PING 192.168.2.12 (192.168.2.12) 56(84) bytes of data.
64 bytes from 192.168.2.12: icmp_seq=1 ttl=63 time=2.84 ms
64 bytes from 192.168.2.12: icmp_seq=2 ttl=63 time=1.72 ms
64 bytes from 192.168.2.12: icmp_seq=3 ttl=63 time=1.32 ms
64 bytes from 192.168.2.12: icmp_seq=4 ttl=63 time=1.62 ms
^C
--- 192.168.2.12 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3005ms
rtt min/avg/max/mdev = 1.320/1.878/2.844/0.579 ms


#192.168.2.13向け通信 -> NG

test@web1:~$ ping 192.168.2.13
PING 192.168.2.13 (192.168.2.13) 56(84) bytes of data.
^C
--- 192.168.2.13 ping statistics ---
7 packets transmitted, 0 received, 100% packet loss, time 6040ms

特定の宛先IPアドレスからの通信だけ許可する設定

特定の宛先IPアドレスへの通信のみ許可して転送し、その他のIPアドレスを宛先とする
通信に関しては、ファイアウォールのインタフェースで遮断する設定を行います。

サンプル設定のシナリオ

  • 192.168.2.13を宛先IPアドレスとする通信だけ許可して転送したい
  • インタフェース(dp0s6)にインプットするトラフィックに対して有効化したい
  • 192.168.2.13以外の宛先IPアドレスへの通信は、すべて拒否して遮断したい
構成図
Fig12

シナリオにおける設定のながれ

1.パケットフィルタリング設定の名前 test_rule
2.192.168.2.13を宛先IPアドレスとするパケットを許可するルールを10として設定
3.192.168.2.13以外を宛先とするパケットについて拒否する設定
4.dp0s6 インタフェースにてインプット方向へ適用

CLIにて入力するコマンド

set interfaces dataplane dp0s6 firewall in 'test_rule'
set security firewall name test_rule default-action 'drop'
set security firewall name test_rule rule 10 action 'accept'
set security firewall name test_rule rule 10 destination address '192.168.2.13'

注釈

シナリオと同じポリシーで、フィルタリング設定をアウトプット方向で適用したい場合は dp0s5 インタフェースにてout test_rule という形で指定してください。

正しく設定が完了したときのコンフィグレーションは次のとおりです。
interfaces {
       dataplane dp0s4 {
               address 192.168.1.50/24
       }
       dataplane dp0s5 {
               address 192.168.2.50/24
       }
       dataplane dp0s6 {
               address 192.168.3.5/24
               firewall {
                       in test_rule
               }
       }
}
security {
       firewall {
               name test_rule {
                       default-action drop
                       rule 10 {
                               action accept
                               destination {
                                       address 192.168.2.13
                               }
                       }
               }
       }
}

動作確認結果

以下の検証結果ログから、検証構成図にあるサーバ(192.168.3.3)から
192.168.2.13あての通信(Ping)が成功しますが、その他の宛先IPアドレスに対する
通信(Ping)は失敗しておりパケットフィルタリング機能が動作していることが確認できました。
#192.168.2.12向け通信 -> NG

test@web1:~$ ping 192.168.2.12
PING 192.168.2.12 (192.168.2.12) 56(84) bytes of data.
^C
--- 192.168.2.12 ping statistics ---
4 packets transmitted, 0 received, 100% packet loss, time 3022ms


#192.168.2.13向け通信 -> OK

test@web1:~$ ping 192.168.2.13
PING 192.168.2.13 (192.168.2.13) 56(84) bytes of data.
64 bytes from 192.168.2.13: icmp_seq=1 ttl=63 time=4.63 ms
64 bytes from 192.168.2.13: icmp_seq=2 ttl=63 time=2.73 ms
64 bytes from 192.168.2.13: icmp_seq=3 ttl=63 time=2.63 ms
64 bytes from 192.168.2.13: icmp_seq=4 ttl=63 time=3.58 ms
^C
--- 192.168.2.13 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3004ms
rtt min/avg/max/mdev = 2.638/3.399/4.638/0.806 ms

宛先IPアドレス(範囲指定)を利用した拒否設定

特定の宛先IPアドレス範囲への通信をファイアウォールのインタフェースで遮断し
その他の宛先IPアドレスへの通信に関しては、転送する設定を行います。

サンプル設定のシナリオ

  • 192.168.2.12/30 を宛先IPアドレスとする通信を遮断したい
  • インタフェース(dp0s6)にインプットするトラフィックに対して有効化したい
  • 192.168.2.4/30 以外の宛先IPアドレスへの通信は、すべて転送したい

注釈

192.168.2.12/30 の範囲にあるホストは、192.168.2.12,192.168.2.13,192.168.2.14,192.168.2.15 の4つのIPアドレスになります。

構成図
Fig13

シナリオにおける設定のながれ

1.パケットフィルタリング設定の名前 test_rule
2.192.168.2.12/30を宛先IPアドレスとするパケットを拒否するルールを10として設定
3.192.168.2.12/30以外を宛先とするパケットについて許可する設定
4.dp0s6 インタフェースにてインプット方向へ適用

CLIにて入力するコマンド

set interfaces dataplane dp0s6 firewall in 'test_rule'
set security firewall name test_rule default-action 'accept'
set security firewall name test_rule rule 10 action 'drop'
set security firewall name test_rule rule 10 destination address '192.168.2.12/30'

注釈

シナリオと同じポリシーで、フィルタリング設定をアウトプット方向で適用したい場合は dp0s5 インタフェースにてout test_rule という形で指定してください。

正しく設定が完了したときのコンフィグレーションは次のとおりです。
interfaces {
       dataplane dp0s4 {
               address 192.168.1.50/24
       }
       dataplane dp0s5 {
               address 192.168.2.50/24
       }
       dataplane dp0s6 {
               address 192.168.3.5/24
               firewall {
                       in test_rule
               }
       }
}
security {
       firewall {
               name test_rule {
                       default-action accept
                       rule 10 {
                               action drop
                               destination {
                                       address 192.168.2.12/30
                               }
                       }
               }
       }
}

動作確認結果

以下の検証結果ログから、検証構成図にあるサーバ(192.168.3.3)から
192.168.2.6あての通信(Ping)が成功しますが、192.168.2.12/30に該当する宛先IPアドレスに対する
通信(Ping)は失敗しておりパケットフィルタリング機能が動作していることが確認できました。
#192.168.2.6向け通信 -> OK

test@web1:~$ ping 192.168.2.6
PING 192.168.2.6 (192.168.2.6) 56(84) bytes of data.
64 bytes from 192.168.2.6: icmp_seq=1 ttl=63 time=3.35 ms
64 bytes from 192.168.2.6: icmp_seq=2 ttl=63 time=1.72 ms
64 bytes from 192.168.2.6: icmp_seq=3 ttl=63 time=1.24 ms
64 bytes from 192.168.2.6: icmp_seq=4 ttl=63 time=1.22 ms
64 bytes from 192.168.2.6: icmp_seq=5 ttl=63 time=1.43 ms
64 bytes from 192.168.2.6: icmp_seq=6 ttl=63 time=1.19 ms
^C
--- 192.168.2.6 ping statistics ---
6 packets transmitted, 6 received, 0% packet loss, time 5007ms
rtt min/avg/max/mdev = 1.193/1.695/3.352/0.762 ms


#192.168.2.12向け通信 -> NG

test@web1:~$ ping 192.168.2.12
PING 192.168.2.12 (192.168.2.12) 56(84) bytes of data.
^C
--- 192.168.2.12 ping statistics ---
7 packets transmitted, 0 received, 100% packet loss, time 6046ms


#192.168.2.13向け通信 -> NG

test@web1:~$ ping 192.168.2.13
PING 192.168.2.13 (192.168.2.13) 56(84) bytes of data.
^C
--- 192.168.2.13 ping statistics ---
6 packets transmitted, 0 received, 100% packet loss, time 5040ms

宛先IPアドレス(範囲指定)を利用した許可設定

特定の宛先IPアドレスの範囲への通信のみ許可して、その他の宛先IPアドレスへの
通信に関しては、ファイアウォールのインタフェースで遮断する設定を行います。

サンプル設定のシナリオ

  • 192.168.2.4/30 に向かう通信だけ転送したい
  • インタフェース(dp0s6)にインプットするトラフィックに対して有効化したい
  • 192.168.2.4/30以外の宛先IPアドレスへの通信はすべて遮断したい

注釈

192.168.2.4/30 の範囲にあるホストは、192.168.2.4,192.168.2.5,192.168.2.6,192.168.2.7 の4つのIPアドレスになります。

構成図
Fig13

シナリオにおける設定のながれ

1.パケットフィルタリング設定の名前 test_rule
2.192.168.2.4/30を宛先IPアドレスとするパケットを許可するルールを10として設定
3.192.168.2.4/30以外を宛先とするパケットについて遮断する設定
4.dp0s6 インタフェースにてインプット方向へ適用

CLIにて入力するコマンド

set interfaces dataplane dp0s6 firewall in 'test_rule'
set security firewall name test_rule default-action 'drop'
set security firewall name test_rule rule 10 action 'accept'
set security firewall name test_rule rule 10 destination address '192.168.2.4/30'

注釈

シナリオと同じポリシーで、フィルタリング設定をアウトプット方向で適用したい場合は dp0s5 インタフェースにてout test_rule という形で指定してください。

正しく設定が完了したときのコンフィグレーションは次のとおりです。
interfaces {
       dataplane dp0s4 {
               address 192.168.1.50/24
       }
       dataplane dp0s5 {
               address 192.168.2.50/24
       }
       dataplane dp0s6 {
               address 192.168.3.5/24
               firewall {
                       in test_rule
               }
       }
}
security {
       firewall {
               name test_rule {
                       default-action drop
                       rule 10 {
                               action accept
                               destination {
                                       address 192.168.2.4/30
                               }

                       }
               }
       }
}

動作確認結果

以下の検証結果ログから、検証構成図にあるサーバ(192.168.3.3)から
192.168.2.6あての通信(Ping)が成功しますが、192.168.2.4/30に該当しない宛先IPアドレスに対する
通信(Ping)は失敗しておりパケットフィルタリング機能が動作していることが確認できました。
#192.168.2.6向け通信 -> OK

test@web1:~$ ping 192.168.2.6
PING 192.168.2.6 (192.168.2.6) 56(84) bytes of data.
64 bytes from 192.168.2.6: icmp_seq=1 ttl=63 time=3.33 ms
64 bytes from 192.168.2.6: icmp_seq=2 ttl=63 time=1.65 ms
64 bytes from 192.168.2.6: icmp_seq=3 ttl=63 time=1.77 ms
64 bytes from 192.168.2.6: icmp_seq=4 ttl=63 time=1.66 ms
64 bytes from 192.168.2.6: icmp_seq=5 ttl=63 time=1.66 ms
64 bytes from 192.168.2.6: icmp_seq=6 ttl=63 time=1.88 ms
64 bytes from 192.168.2.6: icmp_seq=7 ttl=63 time=2.07 ms
^C
--- 192.168.2.6 ping statistics ---
7 packets transmitted, 7 received, 0% packet loss, time 6010ms
rtt min/avg/max/mdev = 1.655/2.008/3.339/0.564 ms

#192.168.2.12向け通信 -> NG

test@web1:~$ ping 192.168.2.12
PING 192.168.2.12 (192.168.2.12) 56(84) bytes of data.
^C
--- 192.168.2.12 ping statistics ---
7 packets transmitted, 0 received, 100% packet loss, time 6047ms


#192.168.2.13向け通信 -> NG

test@web1:~$ ping 192.168.2.13
PING 192.168.2.13 (192.168.2.13) 56(84) bytes of data.
^C
--- 192.168.2.13 ping statistics ---
9 packets transmitted, 0 received, 100% packet loss, time 8064ms

宛先IPアドレス(アドレスグループ)を利用した拒否設定

アドレスグループを定義し、グループに含むIPアドレスを設定します。
アドレスグループに登録されているIPアドレスあての通信をファイアウォールのインタフェースで遮断し
その他のIPアドレスを宛先とする通信に関しては許可し転送させる設定をします。

注釈

アドレスグループは、複数のIPアドレスを登録されたリストになります。 グループ化することで、リストに対してのポリシーを設定することが可能です。

サンプル設定のシナリオ

  • IPアドレス 192.168.2.12と192.168.2.13 あての通信を遮断したい
  • 上記アドレスをアドレスグループとして設定したい
  • インタフェース(dp0s5)にインプットするトラフィックに対して有効化したい
  • アドレスグループ以外の宛先IPアドレスへの通信はすべて転送したい
構成図
Fig13

シナリオにおける設定のながれ

1.パケットフィルタリング設定の名前 test_rule
2.192.168.2.12と192.168.2.13をアドレスグループ g1 として設定
3.アドレスグループg1を宛先IPとするパケットを拒否するルールを10として設定
4.アドレスグループg1以外を宛先IPとするパケットについて許可する設定
5.dp0s6 インタフェースにてインプット方向へ適用

CLIにて入力するコマンド

set interfaces dataplane dp0s6 firewall in 'test_rule'
set resources group address-group g1 address 192.168.2.12
set resources group address-group g1 address 192.168.2.13
set security firewall name test_rule default-action 'accept'
set security firewall name test_rule rule 10 action 'drop'
set security firewall name test_rule rule 10 destination address 'g1'

注釈

シナリオと同じポリシーで、フィルタリング設定をアウトプット方向で適用したい場合は dp0s5 インタフェースにてout test_rule という形で指定してください。

正しく設定が完了したときのコンフィグレーションは次のとおりです。
interfaces {
       dataplane dp0s4 {
               address 192.168.1.50/24
       }
       dataplane dp0s5 {
               address 192.168.2.50/24
       }
       dataplane dp0s6 {
               address 192.168.3.5/24
               firewall {
                       in test_rule
               }
       }
}
resources {
       group {
               address-group g1 {
                       address 192.168.2.12
                       address 192.168.2.13
               }
       }
}
security {
       firewall {
               name test_rule {
                       default-action accept
                       rule 10 {
                               action drop
                               destination {
                                       address g1
                               }
                       }
               }
       }
}

動作確認結果

以下の検証結果ログから、検証構成図にあるサーバ(192.168.3.3)から
192.168.2.6 への通信(Ping)が成功しますが、アドレスグループg1に該当するIPアドレスあての
通信(Ping)は失敗しておりパケットフィルタリング機能が動作していることが確認できました。
#192.168.2.6向け通信 -> OK

itest@web1:~$ ping 192.168.2.6
PING 192.168.2.6 (192.168.2.6) 56(84) bytes of data.
64 bytes from 192.168.2.6: icmp_seq=1 ttl=63 time=3.20 ms
64 bytes from 192.168.2.6: icmp_seq=2 ttl=63 time=1.42 ms
64 bytes from 192.168.2.6: icmp_seq=3 ttl=63 time=1.43 ms
64 bytes from 192.168.2.6: icmp_seq=4 ttl=63 time=1.18 ms
64 bytes from 192.168.2.6: icmp_seq=5 ttl=63 time=1.26 ms
64 bytes from 192.168.2.6: icmp_seq=6 ttl=63 time=1.31 ms
^C
--- 192.168.2.6 ping statistics ---
6 packets transmitted, 6 received, 0% packet loss, time 5007ms
rtt min/avg/max/mdev = 1.186/1.638/3.204/0.706 ms

#192.168.2.12向け通信 -> NG

test@web1:~$ ping 192.168.2.12
PING 192.168.2.12 (192.168.2.12) 56(84) bytes of data.
^C
--- 192.168.2.12 ping statistics ---
5 packets transmitted, 0 received, 100% packet loss, time 4030ms

#192.168.2.13向け通信 -> NG

test@web1:~$ ping 192.168.2.13
PING 192.168.2.13 (192.168.2.13) 56(84) bytes of data.
^C
--- 192.168.2.13 ping statistics ---
5 packets transmitted, 0 received, 100% packet loss, time 3999ms

宛先IPアドレス(アドレスグループ)を利用した許可設定

アドレスグループを定義し、グループに含むIPアドレスを設定します。
アドレスグループに登録されているIPアドレスあての通信を許可して
その他のIPアドレスを宛先とする通信に関しては
ファイアウォールのインタフェースで遮断する設定を行います。

注釈

アドレスグループは、複数のIPアドレスを登録されたリストになります。 グループ化することで、リストに対してのポリシーを設定することが可能です。

サンプル設定のシナリオ

  • IPアドレス 192.168.2.6と192.168.2.12 あての通信だけを転送したい
  • 上記アドレスをアドレスグループとして設定したい
  • インタフェース(dp0s6)にインプットするトラフィックに対して有効化したい
  • アドレスグループ以外の宛先IPアドレスへの通信はすべて遮断したい
構成図
Fig14

シナリオにおける設定のながれ

1.パケットフィルタリング設定の名前 test_rule
2.192.168.2.6と192.168.2.12をアドレスグループ g1 として設定
3.アドレスグループg1を宛先IPとするパケットを許可するルールを10として設定
4.アドレスグループg1以外を宛先IPとするパケットについて拒否する設定
5.dp0s6 インタフェースにてインプット方向へ適用

CLIにて入力するコマンド

set interfaces dataplane dp0s6 firewall in 'test_rule'
set resources group address-group g1 address 192.168.2.6
set resources group address-group g1 address 192.168.2.12
set security firewall name test_rule default-action 'drop'
set security firewall name test_rule rule 10 action 'accept'
set security firewall name test_rule rule 10 destination address 'g1'

注釈

シナリオと同じポリシーで、フィルタリング設定をアウトプット方向で適用したい場合は dp0s5 インタフェースにてout test_rule という形で指定してください。

正しく設定が完了したときのコンフィグレーションは次のとおりです。
interfaces {
       dataplane dp0s4 {
               address 192.168.1.50/24
       }
       dataplane dp0s5 {
               address 192.168.2.50/24
       }
       dataplane dp0s6 {
               address 192.168.3.5/24
               firewall {
               in test_rule
               }
       }
}
resources {
       group {
               address-group g1 {
                       address 192.168.2.6
                       address 192.168.2.12
               }
       }
}
security {
       firewall {
               name test_rule {
                       default-action drop
                       rule 10 {
                               action accept
                               destination {
                                       address g1
                               }
                       }
               }
       }
}

動作確認結果

以下の検証結果ログから、検証構成図にあるサーバ(192.168.3.3)から
192.168.2.6ならびに192.168.2.12あての通信(Ping)が成功しますが
アドレスグループg1に該当しないIPアドレスへの通信(Ping)は
失敗しておりパケットフィルタリング機能が動作していることが確認できました。
#192.168.2.6向け通信 -> OK

test@web1:~$ ping 192.168.2.6
PING 192.168.2.6 (192.168.2.6) 56(84) bytes of data.
64 bytes from 192.168.2.6: icmp_seq=1 ttl=63 time=15.8 ms
64 bytes from 192.168.2.6: icmp_seq=2 ttl=63 time=2.21 ms
64 bytes from 192.168.2.6: icmp_seq=3 ttl=63 time=1.79 ms
64 bytes from 192.168.2.6: icmp_seq=4 ttl=63 time=1.52 ms
64 bytes from 192.168.2.6: icmp_seq=5 ttl=63 time=1.45 ms
64 bytes from 192.168.2.6: icmp_seq=6 ttl=63 time=1.88 ms
64 bytes from 192.168.2.6: icmp_seq=7 ttl=63 time=1.32 ms
^C
--- 192.168.2.6 ping statistics ---
7 packets transmitted, 7 received, 0% packet loss, time 6008ms
rtt min/avg/max/mdev = 1.327/3.726/15.885/4.971 ms

#192.168.2.12向け通信 -> OK

test@web1:~$ ping 192.168.2.12
PING 192.168.2.12 (192.168.2.12) 56(84) bytes of data.
64 bytes from 192.168.2.12: icmp_seq=1 ttl=63 time=2.95 ms
64 bytes from 192.168.2.12: icmp_seq=2 ttl=63 time=1.77 ms
64 bytes from 192.168.2.12: icmp_seq=3 ttl=63 time=1.77 ms
64 bytes from 192.168.2.12: icmp_seq=4 ttl=63 time=1.76 ms
64 bytes from 192.168.2.12: icmp_seq=5 ttl=63 time=1.91 ms
64 bytes from 192.168.2.12: icmp_seq=6 ttl=63 time=1.62 ms
^C
--- 192.168.2.12 ping statistics ---
6 packets transmitted, 6 received, 0% packet loss, time 5007ms
rtt min/avg/max/mdev = 1.621/1.965/2.950/0.452 ms

#192.168.2.13向け通信 -> NG

test@web1:~$ ping 192.168.2.13
PING 192.168.2.13 (192.168.2.13) 56(84) bytes of data.
^C
--- 192.168.2.13 ping statistics ---
8 packets transmitted, 0 received, 100% packet loss, time 6999ms