【Juniper Networks】MX204におけるinet filter, bridge filterの設定例

前回の記事にてfilter設定について少し触れましたので、今回はそのfilter設定について解説します。

MX-SeriesのMX204にてinet filterとbridge filterの設定を作成する機会がありましたので、その際に行った設計例の紹介と、それぞれの設定行について解説します。

inet filterの設定例

まずはinet filterの設定例です。これはルータであるMX204の一般的なインターフェース設定となるrouted portのインターフェースにて利用できるfilterになります。

インターフェースの設定

フィルターを利用するインターフェース側の設定例です。

set interfaces xe-0/0/1 unit 0 family inet filter output "フィルター名"
set interfaces xe-0/0/1 unit 0 family inet address 172.16.0.254/24

内容は簡単で、1行目がinet filterを適用する設定行、2行目がIPアドレスを設定する設定行です。

今回の設定例ではoutput、インターフェースから出ていく通信(egress方向)に対してフィルターの処理が行われる設定です。

フィルターの設定

インターフェースに適用するフィルターの実体の設定例です。

set firewall family inet filter "フィルター名" from source-address 192.168.0.1/32
set firewall family inet filter "フィルター名" from destination-address 10.0.0.1/32
set firewall family inet filter "フィルター名" then next-ip 172.16.0.201/32
set firewall family inet filter "フィルター名" then next-ip routing-instance "ルーティングインスタンス名"

1行目はフィルター適用の条件設定行、送信元IPアドレスの条件とて"192.168.0.1/32"を指定しています。2行目も同様に条件設定行で、宛先IPアドレスとして"10.0.0.1/32"を指定しています。

3行目は条件にマッチした通信について、nexthopのIPアドレスを"172.16.0.201"として設定している行です。これによりルーティングテーブルに載っているnexthopではなく、172.16.0.201の方向へと変更することが可能となります。

4行目は通信処理をこれ以降どのルーティングインスタンスで処理させるかの設定行です。ルーティングインスタンスとはJuniperにおける仮想ルータのことになり、filter処理によってその仮想サーバ間での通信の受け渡しが可能です。

bridge filterの設定例

次にbridge filterの設定例です。前回の記事にてbridge接続用のインターフェース設定も解説しましたが、そのbridge接続用のインターフェースに利用できるfilter設定になります。

インターフェースの設定

フィルターを利用するインターフェース側の設定例です。

set interfaces xe-0/1/1 vlan-tagging
set interfaces xe-0/1/1 encapsulation flexible-ethernet-services
set interfaces xe-0/1/1 unit "UNIT番号" encapsulation vlan-bridge
set interfaces xe-0/1/1 unit "UNIT番号" vlan-id "VLAN番号"
set interfaces xe-0/1/1 unit "UNIT番号" family bridge filter output "フィルター名"

1-4行目はブリッジ接続用のインターフェースの設定です。各行については以前に公開した記事『【Juniper Networks】MX204におけるブリッジ接続の設定例』で解説しています。

5行目がbridge filterを適用する設定行です。inet filterの設定例と同じく、インターフェースから出ていく通信(egress方向)に対してフィルターの処理が行われる設定です。

フィルターの設定(+ポリサーの設定)

set firewall family bridge filter "フィルター名" from dscp cs4
set firewall family bridge filter "フィルター名" then policer "policer名" 
set firewall family bridge filter "フィルター名" then forwarding-class Q1
set firewall policer "policer名" if-exceeding bandwidth-limit "Q1に割り当てる優先帯域"
set firewall policer "policer名" if-exceeding burst-size-limit "許容するバースト帯域"
set firewall policer "policer名" then discard

1-3行目がフィルターの設定で、1行目が条件設定行、2, 3行目が条件にマッチした通信にどのような処理をするのかの設定行です。"フィルター名"の次がfromであれば条件設定行、thenであれば処理設定行ということです。

また、inet filterの設定と見比べてみると、構文としてはinetとなっていた階層がbridgeになっていることが分かりますでしょうか。

4-6行目はフィルター設定内にて指定しているポリサーの設定です。

各設定行の内容ですが、これらは以前に公開した記事『【Juniper Networks】MX204, MX150におけるQoSの設定例』の一部となり、各行の意味合いも同記事中の解説のとおりです。

以前の記事中ではinet filterを使ってQoS設定の解説を行っていますが、bridge filterでもinet filterと同様にQoS設定を行うことができるということです。

設定例についてのまとめ

2種類のfilter設定例について紹介と解説をしましたが、コンフィグ行としては階層部分がinetであるかbridgeであるかが違うだけで、同じような書き方の設定行となることがわかったかと思います。

気をつけないといけないことは、各filterにて条件として設定できる内容や、条件にマッチした通信に対する処理内容が異なるという点です。今回の設定例ではinet filterの3, 4行目の設定はbridge filterでは設定できません。

「別のfilterでこんな感じに通信方向を変更する設定をしていたから、今回予定している通信制御もfilterで対応できるだろう」と考えていたがインタフェース設定の違いにより同じ制御はできないことが分かった、となればネットワーク設計のやり直しになってしまいます。

似たような設定項目でも「おそらく実現可能」で進めようとはせずに、「実現可能かどうかについて、何が確認できていて何が確認できていないのか」ということに注意して設計を進める必要があります。

執筆担当者プロフィール
廣瀬 翔也

廣瀬 翔也(日本ビジネスシステムズ株式会社)

クラウドソリューション事業本部 セキュリティ&ネットワークインテグレーション2部 所属 主な業務経験範囲はネットワーク分野。 備忘録も兼ねて”ユーザ要望を実現するためのコンフィグ設計例”を掲載していく予定です。

担当記事一覧