例:除外するフィルターの設定 LAC 加入者の DHCPv6 および ICMPv6 制御トラフィック
この例では、DHCPv6およびICMPv6制御パケットを、LACのトンネル加入者のアイドルタイムアウト検出の対象から除外する標準ステートレスファイアウォールフィルターを設定する方法を示しています。
要件
この例を設定する前に、デバイスの初期化以外の特別な設定を行う必要はありません。
概要
LACでの加入者アクセスは、加入者セッションが確立された後、加入者がアイドル状態を維持できる最大時間を指定するアイドルタイムアウト期間を設定することで、加入者アクセスを制限できます。LACは、加入者のアップストリームおよびダウンストリームのデータトラフィックを監視して、加入者が非アクティブかどうかを判断します。セッションアカウンティング統計に基づいています。いずれの方向でもデータトラフィックが検出される限り、加入者はアイドルとは見なされません。アイドルタイムアウト期間中にトラフィックが検出されない場合、加入者は、RADIUS が開始する切断または CLI が開始するログアウトと同様に、正常にログアウトされます。
ただし、L2TP加入者用にトンネルが確立されると、LACのトンネルを通過するすべてのパケットはデータパケットとして扱われます。その結果、セッションのアカウンティング統計は不正確であり、DHCPv6およびICMPv6制御パケットが送信されている限り、加入者はアイドル状態とは見なされません。
これらの制御パケットで一致する条件を使用して、 inet6 ファミリーのファイアウォールフィルターを定義できます。これらの制御パケットをドロップするためのフィルター条件に、 exclude-accounting 終了アクションの使用を含めます。
設定
CLIクイックコンフィグレーション
この例をすばやく設定するには、以下のコマンドをコピーしてテキストファイルに貼り付け、改行を削除して、ネットワーク構成に合わせて必要な詳細を変更し、[ edit] 階層レベルのCLIにコマンドをコピー&ペーストします。
set access profile v6-exclude-idle session-options client-idle-timeout 10 set access profile v6-exclude-idle session-options client-idle-timeout-ingress-only edit firewall family inet6 filter EXCLUDE-ACCT-INET6-FILTER set interface-specific set term EXCLUDE-ACCT-DHCP-INET6 from next-header udp set term EXCLUDE-ACCT-DHCP-INET6 from source-port 546 set term EXCLUDE-ACCT-DHCP-INET6 from source-port 547 set term EXCLUDE-ACCT-DHCP-INET6 from destination-port 546 set term EXCLUDE-ACCT-DHCP-INET6 from destination-port 547 set term EXCLUDE-ACCT-DHCP-INET6 then count exclude-acct-dhcpv6 set term EXCLUDE-ACCT-DHCP-INET6 then exclude-accounting set term EXCLUDE-ACCT-ICMP6 from next-header icmp6 set term EXCLUDE-ACCT-ICMP6 from icmp-type router-solicit set term EXCLUDE-ACCT-ICMP6 from icmp-type neighbor-solicit set term EXCLUDE-ACCT-ICMP6 from icmp-type neighbor-advertisement set term EXCLUDE-ACCT-ICMP6 then count exclude-acct-icmpv6 set term EXCLUDE-ACCT-ICMP6 then exclude-accounting set term default then accept top edit dynamic-profiles pppoe-dynamic-profile interfaces pp0 unit "$junos-interface-unit" set family inet6 filter input EXCLUDE-ACCT-INET6-FILTER set family inet6 filter output EXCLUDE-ACCT-INET6-FILTER set actual-transit-statistics
フィルターを設定する
ステップバイステップの手順
次の例では、設定階層内のさまざまなレベルに移動する必要があります。CLIのナビゲーションについては、『CLIユーザーガイド』の「設定モードでのCLIエディターの使用」を参照してください。
フィルターを設定するには:
加入者セッションのアイドルタイムアウトを設定します。
[edit access profile v6-exclude-idle] user@host# set session-options client-idle-timeout 10
アイドルタイムアウトがイングレストラフィックにのみ適用されることを指定します。
[edit access profile v6-exclude-idle] user@host# set session-options client-idle-timeout-ingress-only
会計統計からDHCPv6制御パケットを除外するファイアウォールフィルター条件を定義します。
最初の[次のヘッダー]フィールドがUDP(17)に設定されているパケットで一致を指定します。
[edit firewall family inet6 filter EXCLUDE-ACCT-INET6-FILTER] user@host# set term EXCLUDE-ACCT-DHCP-INET6 from next-header udp
送信元ポートが 546 または 547(DHCPv6)のパケットで一致を指定します。
[edit firewall family inet6 filter EXCLUDE-ACCT-INET6-FILTER] user@host# set term EXCLUDE-ACCT-DHCP-INET6 from source-port 546 user@host# set term EXCLUDE-ACCT-DHCP-INET6 from source-port 547
DHCPv6(DHCPv6)のDHCP宛先ポートが546または547のパケットで一致を指定します。
[edit firewall family inet6 filter EXCLUDE-ACCT-INET6-FILTER] user@host# set term EXCLUDE-ACCT-DHCP-INET6 from destination-port 546 user@host# set term EXCLUDE-ACCT-DHCP-INET6 from destination-port 547
一致したDHCPv6パケットをカウントします。
[edit firewall family inet6 filter EXCLUDE-ACCT-INET6-FILTER] user@host# set term EXCLUDE-ACCT-DHCP-INET6 then count exclude-acct-dhcpv6
一致したDHCPv6パケットをアカウンティング統計から除外します。
[edit firewall family inet6 filter EXCLUDE-ACCT-INET6-FILTER] user@host# set term EXCLUDE-ACCT-DHCP-INET6 then exclude-accounting
会計統計からICMPv6制御パケットを除外するファイアウォールフィルター条件を定義します。
最初の[次のヘッダー]フィールドがICMPv6(58)に設定されているパケットで一致を指定します。
[edit firewall family inet6 filter EXCLUDE-ACCT-INET6-FILTER] user@host# set term EXCLUDE-ACCT-ICMP6 from next-header icmp6
ICMPv6 メッセージタイプを持つパケットで一致を指定します。
[edit firewall family inet6 filter EXCLUDE-ACCT-INET6-FILTER] user@host# set term EXCLUDE-ACCT-ICMP6 from icmp-type router-solicit user@host# set term EXCLUDE-ACCT-ICMP6 from icmp-type neighbor-solicit user@host# set term EXCLUDE-ACCT-ICMP6 from icmp-type neighbor-advertisement
一致したICMPv6パケットをカウントします。
[edit firewall family inet6 filter EXCLUDE-ACCT-INET6-FILTER] user@host# set term EXCLUDE-ACCT-ICMP6 then count exclude-acct-icmpv6
一致したICMPv6パケットをアカウンティング統計から除外します。
[edit firewall family inet6 filter EXCLUDE-ACCT-INET6-FILTER] user@host# set term EXCLUDE-ACCT-DHCP-INET6 then exclude-accounting
他のすべてのパケットを受け入れるように、デフォルトのフィルター条件を定義します。
[edit firewall family inet6 filter EXCLUDE-ACCT-INET6-FILTER] user@host# set term default then accept
inet6ファミリーの入出力インターフェイスにフィルターを適用するように動的プロファイルを設定します。[edit dynamic-profiles pppoe-dynamic-profile interfaces pp0 unit "$junos-interface-unit"] user@host# set family inet6 filter input EXCLUDE-ACCT-INET6-FILTER user@host# set family inet6 filter output EXCLUDE-ACCT-INET6-FILTER
加入者管理の正確なアカウンティングを可能にします。
[edit dynamic-profiles pppoe-dynamic-profile interfaces pp0 unit "$junos-interface-unit"] user@host# set actual-transit-statistics
結果
設定モードから、 show access、 show firewall、 show dynamic-profiles コマンドを入力して設定を確認します。出力に意図した設定が表示されない場合は、この例の手順を繰り返して設定を修正します。
user@host# show access
profile v6-exclude-idle {
session-options {
client-idle-timeout 10;
client-idle-timeout-ingress-only;
}
}
user@host# show firewall
family inet6 {
filter EXCLUDE-ACCT-INET6-FILTER {
interface-specific;
term EXCLUDE-ACCT-DHCP-INET6 {
from {
next-header udp;
source-port [ 546 547 ];
destination-port [ 546 547 ];
}
then {
count exclude-acct-dhcpv6;
exclude-accounting
}
}
term EXCLUDE-ACCT-ICMP6 {
from {
next-header icmp6;
icmp-type [ router-solicit neighbor-solicit neighbor-advertisement ]
}
then {
count exclude-acct-icmpv6;
exclude-accounting;
}
}
term default {
then accept;
}
}
}
user@host# show dynamic-profiles
pppoe-dynamic-profile {
interfaces {
pp0 {
unit "$junos-interface-unit" {
actual-transit-statistics;
family inet6 {
filter {
input EXCLUDE-ACCT-INET6-FILTER;
output EXCLUDE-ACCT-INET6-FILTER;
}
}
}
}
}
}
デバイスの設定が完了したら、設定モードから コミット を入力します。