FutureNet

NXR,WXRシリーズ

L2TPv3編

2. L2TPv3応用設定

2-7. L2TPv3フィルタ設定

Xconnectインタフェース上でL2TPv3フィルタを利用する設定例です。この例では特定の端末からサーバへのアクセスは許可するが、それ以外の端末からのアクセスは破棄します。

 

【 構成図 】

  • L2TPv3ファストフォワーディング機能を利用している場合、ファストフォワーディングエントリに登録済みのセッションに対しては、当該セッションが(タイムアウト等によって)エントリから消えるまでフィルタリングは適用されません。

 

【 設定データ 】

〔NXR_Aの設定〕

設定項目 設定内容
ホスト名 NXR_A
LAN側インタフェース ethernet0のIPアドレス 192.168.10.1/24
WAN側インタフェース PPPoEクライアント(ethernet1) ppp0
ppp0のIPアドレス 10.10.10.1/32
IPマスカレード 有効
IPアクセスグループ in ppp0_in
SPIフィルタ 有効
TCP MSS調整 オート
ISP接続用ユーザID test1@example.jp
ISP接続用パスワード test1pass
スタティックルート 宛先IPアドレス 0.0.0.0/0
ゲートウェイ(インタフェース) ppp0
IPフィルタ ルール名 ppp0_in
ppp0_in 動作 許可
送信元IPアドレス any
宛先IPアドレス 10.10.10.1
プロトコル 115(L2TP)
L2TPv3 ホスト名 nxra
ルータID 172.20.10.1
MACアドレス学習機能 有効
MACアドレス保持時間 300秒
Path MTU Discovery 有効
L2TPv3トンネル1 名前 NXR_B
リモートホスト名 nxrb
リモートルータID 172.20.20.1
リモートベンダーID ietf
L2TPv3 Xconnect1 名前 NXR_B
L2TPv3トンネルID 1
Xconnectインタフェース ethernet0
リモートエンドID 1
TCP MSS調整 オート
DNS サービス 有効
FastFowarding 有効
L2TPv3 FastFowarding 有効

〔NXR_Bの設定〕

設定項目 設定内容
ホスト名 NXR_B
LAN側インタフェース ethernet0のIPアドレス 192.168.10.2/24
L2TPv3アクセスグループ in l2f-eth0_in
WAN側インタフェース PPPoEクライアント(ethernet1) ppp0
ppp0のIPアドレス 動的IPアドレス
IPマスカレード 有効
IPアクセスグループ in ppp0_in
SPIフィルタ 有効
TCP MSS調整 オート
ISP接続用ユーザID test2@example.jp
ISP接続用パスワード test2pass
スタティックルート 宛先IPアドレス 0.0.0.0/0
ゲートウェイ(インタフェース) ppp0
IPフィルタ ルール名 ppp0_in
ppp0_in 動作 許可
送信元IPアドレス 10.10.10.1
宛先IPアドレス any
プロトコル 115(L2TP)
L2TPv3 ホスト名 nxrb
ルータID 172.20.20.1
MACアドレス学習機能 有効
MACアドレス保持時間 300秒
Path MTU Discovery 有効
L2TPv3トンネル1 名前 NXR_A
リモートトンネルアドレス 10.10.10.1
リモートホスト名 nxra
リモートルータID 172.20.10.1
リモートベンダーID ietf
L2TPv3 Xconnect1 名前 NXR_A
L2TPv3トンネルID 1
Xconnectインタフェース ethernet0
リモートエンドID 1
再送間隔 30秒
TCP MSS調整 オート
L2TPv3フィルタ ルール名 l2f-eth0_in
l2f-eth0_in 動作 破棄
ACL root
No.1 layer2 ACL l2_acl_arp
No.2 layer2 ACL l2_acl_ip
ルール名 l2_acl_arp
l2_acl_arp 動作 破棄
ACL layer2
No.1 ethernet-type arp
extended ACL arp_acl
ルール名 l2_acl_ip
l2_acl_ip 動作 破棄
ACL layer2
No.1 ethernet-type ip
extended ACL ip_acl
ルール名 arp_acl
arp_acl 動作 許可
ACL extended arp
OPCODE Request
送信元MACアドレス 00:80:6D:XX:XX:00
送信元IPアドレス 192.168.10.101
宛先IPアドレス 192.168.10.100
ルール名 ip_acl
ip_acl 動作 許可
ACL extended ip
送信元IPアドレス 192.168.10.101
宛先IPアドレス 192.168.10.100
DNS サービス 有効
FastFowarding 有効
L2TPv3 FastFowarding 有効

 

【 設定例 】

〔NXR_Aの設定〕

nxr350#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
nxr350(config)#hostname NXR_A
NXR_A(config)#interface ethernet 0
NXR_A(config-if)#ip address 192.168.10.1/24
NXR_A(config-if)#exit
NXR_A(config)#ip route 0.0.0.0/0 ppp 0
NXR_A(config)#ip access-list ppp0_in permit any 10.10.10.1 115
NXR_A(config)#ppp account username test1@example.jp password test1pass
NXR_A(config)#interface ppp 0
NXR_A(config-ppp)#ip address 10.10.10.1/32
NXR_A(config-ppp)#ip masquerade
NXR_A(config-ppp)#ip access-group in ppp0_in
NXR_A(config-ppp)#ip spi-filter
NXR_A(config-ppp)#ip tcp adjust-mss auto
NXR_A(config-ppp)#ppp username test1@example.jp
NXR_A(config-ppp)#exit
NXR_A(config)#interface ethernet 1
NXR_A(config-if)#no ip address
NXR_A(config-if)#pppoe-client ppp 0
NXR_A(config-if)#exit
NXR_A(config)#l2tpv3 hostname nxra
NXR_A(config)#l2tpv3 router-id 172.20.10.1
NXR_A(config)#l2tpv3 mac-learning
NXR_A(config)#l2tpv3 mac-aging 300
NXR_A(config)#l2tpv3 path-mtu-discovery
NXR_A(config)#l2tpv3 tunnel 1
NXR_A(config-l2tpv3-tunnel)#description NXR_B
NXR_A(config-l2tpv3-tunnel)#tunnel hostname nxrb
NXR_A(config-l2tpv3-tunnel)#tunnel router-id 172.20.20.1
NXR_A(config-l2tpv3-tunnel)#tunnel vendor ietf
NXR_A(config-l2tpv3-tunnel)#exit
NXR_A(config)#l2tpv3 xconnect 1
NXR_A(config-l2tpv3-xconnect)#description NXR_B
NXR_A(config-l2tpv3-xconnect)#tunnel 1
NXR_A(config-l2tpv3-xconnect)#xconnect ethernet 0
NXR_A(config-l2tpv3-xconnect)#xconnect end-id 1
NXR_A(config-l2tpv3-xconnect)#ip tcp adjust-mss auto
NXR_A(config-l2tpv3-xconnect)#exit
NXR_A(config)#dns
NXR_A(config-dns)#service enable
NXR_A(config-dns)#exit
NXR_A(config)#fast-forwarding enable
NXR_A(config)#l2tpv3 fast-forwarding enable
NXR_A(config)#exit
NXR_A#save config

〔NXR_Bの設定〕

nxrg100#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
nxrg100(config)#hostname NXR_B
NXR_B(config)#l2tpv3 access-list arp_acl extended arp permit
NXR_B(config-l2tpv3-eacl)#sender-mac 00:80:6D:XX:XX:00
NXR_B(config-l2tpv3-eacl)#sender-ip 192.168.10.101
NXR_B(config-l2tpv3-eacl)#target-ip 192.168.10.100
NXR_B(config-l2tpv3-eacl)#opcode request
NXR_B(config-l2tpv3-eacl)#exit
NXR_B(config)#l2tpv3 access-list ip_acl extended ip permit
NXR_B(config-l2tpv3-eacl)#source 192.168.10.101
NXR_B(config-l2tpv3-eacl)#destination 192.168.10.100
NXR_B(config-l2tpv3-eacl)#exit
NXR_B(config)#l2tpv3 access-list l2_acl_arp layer2 deny
NXR_B(config-l2tpv3-acl)#ethernet-type arp extended arp_acl 1
NXR_B(config-l2tpv3-acl)#exit
NXR_B(config)#l2tpv3 access-list l2_acl_ip layer2 deny
NXR_B(config-l2tpv3-acl)#ethernet-type ip extended ip_acl 1
NXR_B(config-l2tpv3-acl)#exit
NXR_B(config)#l2tpv3 access-list l2f-eth0_in root deny
NXR_B(config-l2tpv3-acl)#layer2 access-list l2_acl_arp 1
NXR_B(config-l2tpv3-acl)#layer2 access-list l2_acl_ip 2
NXR_B(config-l2tpv3-acl)#exit
NXR_B(config)#interface ethernet 0
NXR_B(config-if)#ip address 192.168.10.2/24
NXR_B(config-if)#l2tpv3 access-group in l2f-eth0_in
NXR_B(config-if)#exit
NXR_B(config)#ip route 0.0.0.0/0 ppp 0
NXR_B(config)#ip access-list ppp0_in permit 10.10.10.1 any 115
NXR_B(config)#ppp account username test2@example.jp password test2pass
NXR_B(config)#interface ppp 0
NXR_B(config-ppp)#ip address negotiated
NXR_B(config-ppp)#ip masquerade
NXR_B(config-ppp)#ip access-group in ppp0_in
NXR_B(config-ppp)#ip spi-filter
NXR_B(config-ppp)#ip tcp adjust-mss auto
NXR_B(config-ppp)#ppp username test2@example.jp
NXR_B(config-ppp)#exit
NXR_B(config)#interface ethernet 1
NXR_B(config-if)#no ip address
NXR_B(config-if)#pppoe-client ppp 0
NXR_B(config-if)#exit
NXR_B(config)#l2tpv3 hostname nxrb
NXR_B(config)#l2tpv3 router-id 172.20.20.1
NXR_B(config)#l2tpv3 mac-learning
NXR_B(config)#l2tpv3 mac-aging 300
NXR_B(config)#l2tpv3 path-mtu-discovery enable
NXR_B(config)#l2tpv3 tunnel 1
NXR_B(config-l2tpv3-tunnel)#description NXR_A
NXR_B(config-l2tpv3-tunnel)#tunnel address 10.10.10.1
NXR_B(config-l2tpv3-tunnel)#tunnel hostname nxra
NXR_B(config-l2tpv3-tunnel)#tunnel router-id 172.20.10.1
NXR_B(config-l2tpv3-tunnel)#tunnel vendor ietf
NXR_B(config-l2tpv3-tunnel)#exit
NXR_B(config)#l2tpv3 xconnect 1
NXR_B(config-l2tpv3-xconnect)#description NXR_A
NXR_B(config-l2tpv3-xconnect)#tunnel 1
NXR_B(config-l2tpv3-xconnect)#xconnect ethernet 0
NXR_B(config-l2tpv3-xconnect)#xconnect end-id 1
NXR_B(config-l2tpv3-xconnect)#retry-interval 30
NXR_B(config-l2tpv3-xconnect)#ip tcp adjust-mss auto
NXR_B(config-l2tpv3-xconnect)#exit
NXR_B(config)#dns
NXR_B(config-dns)#service enable
NXR_B(config-dns)#exit
NXR_B(config)#fast-forwarding enable
NXR_B(config)#l2tpv3 fast-forwarding enable
NXR_B(config)#exit
NXR_B#save config

 

【 設定例解説 】

〔NXR_Aの設定〕

1. <ホスト名の設定>
nxr350(config)#hostname NXR_A

ホスト名を設定します。

 

2. <LAN側(ethernet0)インタフェース設定>
NXR_A(config)#interface ethernet 0
NXR_A(config-if)#ip address 192.168.10.1/24

ethernet0インタフェースのIPアドレスを設定します。

 

3. <スタティックルート設定>
NXR_A(config)#ip route 0.0.0.0/0 ppp 0

デフォルトルートを設定します。

 

4. <IPアクセスリスト設定>
NXR_A(config)#ip access-list ppp0_in permit any 10.10.10.1 115

IPアクセスリスト名をppp0_inとし、ルータNXR_AのWAN側IPアドレス10.10.10.1宛のL2TPパケット(プロトコル番号115)を許可します。
なおこのIPアクセスリスト設定はppp0インタフェース設定で登録します。
(☞) IPアクセスリストを設定しただけではフィルタとして有効にはなりません。フィルタリングしたいインタフェースでの登録が必要になります。

 

5. <PPPアカウント設定>
NXR_A(config)#ppp account username test1@example.jp password test1pass

ppp0インタフェースで使用するISP接続用ユーザID,パスワードを設定します。
(☞) ここで設定したアカウントはppp0インタフェースの設定で利用します。

 

6. <WAN側(ppp0)インタフェース設定>
NXR_A(config)#interface ppp 0
NXR_A(config-ppp)#ip address 10.10.10.1/32

ppp0インタフェースのIPアドレスを設定します。

NXR_A(config-ppp)#ip masquerade
NXR_A(config-ppp)#ip access-group in ppp0_in
NXR_A(config-ppp)#ip spi-filter
NXR_A(config-ppp)#ip tcp adjust-mss auto

IPマスカレード、ステートフルパケットインスペクションを有効に設定します。またIPアクセスリストppp0_inをinフィルタに適用します。そしてTCP MSSの調整機能をオートに設定します。

NXR_A(config-ppp)#ppp username test1@example.jp

ISP接続用ユーザIDを設定します。

 

7. <ethernet1インタフェース設定>
NXR_A(config)#interface ethernet 1
NXR_A(config-if)#no ip address
NXR_A(config-if)#pppoe-client ppp 0

PPPoEクライアントとしてppp0インタフェースを使用できるように設定します。

 

8. <L2TPv3設定>
NXR_A(config)#l2tpv3 hostname nxra
NXR_A(config)#l2tpv3 router-id 172.20.10.1

L2TPv3のホスト名としてnxraを設定します。またルータIDを設定します。

NXR_A(config)#l2tpv3 mac-learning
NXR_A(config)#l2tpv3 mac-aging 300
NXR_A(config)#l2tpv3 path-mtu-discovery

MACアドレス学習機能を有効にし、エージングタイムを設定します。またPath MTU Discoveryを有効にします。

 

9. <L2TPv3トンネル設定>
NXR_A(config)#l2tpv3 tunnel 1
NXR_A(config-l2tpv3-tunnel)#description NXR_B

L2TPv3トンネル1の説明としてNXR_Bを設定します。なおルータNXR_BのWAN側IPアドレスが動的IPアドレスのため、リモートトンネルアドレスは設定しません。

NXR_A(config-l2tpv3-tunnel)#tunnel hostname nxrb
NXR_A(config-l2tpv3-tunnel)#tunnel router-id 172.20.20.1
NXR_A(config-l2tpv3-tunnel)#tunnel vendor ietf

ルータNXR_BのL2TPv3ホスト名およびルータIDを設定します。そしてベンダIDとしてietfを設定します。
(☞) ルータNXR_BのL2TPv3設定にあるホスト名,ルータIDと同一の値を設定します。

 

10. <L2TPv3 Xconnect設定>
NXR_A(config)#l2tpv3 xconnect 1
NXR_A(config-l2tpv3-xconnect)#description NXR_B
NXR_A(config-l2tpv3-xconnect)#tunnel 1

L2TPv3 Xconnect1の説明としてNXR_B、関連づけを行うL2TPv3トンネルとしてL2TPv3トンネル1を設定します。

NXR_A(config-l2tpv3-xconnect)#xconnect ethernet 0
NXR_A(config-l2tpv3-xconnect)#xconnect end-id 1
NXR_A(config-l2tpv3-xconnect)#ip tcp adjust-mss auto

Xconnectインタフェースとしてethernet0インタフェースおよびリモートエンドIDを設定します。またTCP MSSの調整機能をオートに設定します。

 

11. <DNS設定>
NXR_A(config)#dns
NXR_A(config-dns)#service enable

DNSサービスを有効にします。

 

12. <ファストフォワーディングの有効化>
NXR_A(config)#fast-forwarding enable
NXR_A(config)#l2tpv3 fast-forwarding enable 

ファストフォワーディングおよびL2TPv3ファストフォワーディングを有効にします。
(☞) ファストフォワーディングおよびL2TPv3ファストフォワーディングの詳細および利用時の制約については、NXR,WXRシリーズのユーザーズガイド(CLI版)に記載されているファストフォワーディングの解説をご参照ください。

 

〔NXR_Bの設定〕

1. <ホスト名の設定>
nxrg100(config)#hostname NXR_B

ホスト名を設定します。

 

2. <L2TPv3フィルタ(Extended ACL)設定>
NXR_B(config)#l2tpv3 access-list arp_acl extended arp permit
NXR_B(config-l2tpv3-eacl)#opcode request
NXR_B(config-l2tpv3-eacl)#sender-mac 00:80:6D:XX:XX:00
NXR_B(config-l2tpv3-eacl)#sender-ip 192.168.10.101
NXR_B(config-l2tpv3-eacl)#target-ip 192.168.10.100

L2TPv3アクセスリスト名をarp_acl、拡張ACLをARPとします。そしてOPコードがRequest(ARP Request),送信元MACアドレス00:80:6D:XX:XX:00,送信元IPアドレス192.168.10.101,宛先IPアドレス192.168.10.100のフレームを許可します。

NXR_B(config)#l2tpv3 access-list ip_acl extended ip permit
NXR_B(config-l2tpv3-eacl)#source 192.168.10.101
NXR_B(config-l2tpv3-eacl)#destination 192.168.10.100

L2TPv3アクセスリスト名をip_acl、拡張ACLをIPとします。そして送信元IPアドレス192.168.10.101,宛先IPアドレス192.168.10.100のフレームを許可します。

 

3. <L2TPv3フィルタ(Layer2 ACL)設定>
NXR_B(config)#l2tpv3 access-list l2_acl_arp layer2 deny
NXR_B(config-l2tpv3-acl)#ethernet-type arp extended arp_acl 1

L2TPv3アクセスリスト名をl2_acl_arpとするLayer2ACLを設定します。そしてethernet-typeをARPとする拡張ACL arp_aclを設定します。なおarp_aclに一致しない場合、フレームを破棄します。

NXR_B(config)#l2tpv3 access-list l2_acl_ip layer2 deny
NXR_B(config-l2tpv3-acl)#ethernet-type ip extended ip_acl 1

L2TPv3アクセスリスト名をl2_acl_ipとするLayer2ACLを設定します。そしてethernet-typeをIPとする拡張ACL ip_aclを設定します。なおip_aclに一致しない場合、フレームを破棄します。

 

4. <L2TPv3フィルタ(Root ACL)設定>
NXR_B(config)#l2tpv3 access-list l2f-eth0_in root deny
NXR_B(config-l2tpv3-acl)#layer2 access-list l2_acl_arp 1
NXR_B(config-l2tpv3-acl)#layer2 access-list l2_acl_ip 2

L2TPv3アクセスリスト名をl2f-eth0_inとするRootACLを設定します。そしてLayer2ACLとしてl2_acl_arp,l2_acl_ipをそれぞれ設定します。なおこれらACLに一致しない場合、フレームを破棄します。

 

5. <LAN側(ethernet0)インタフェース設定>
NXR_B(config)#interface ethernet 0
NXR_B(config-if)#ip address 192.168.10.2/24

ethernet0インタフェースのIPアドレスを設定します。

NXR_B(config-if)#l2tpv3 access-group in l2f-eth0_in

L2TPv3フィルタ(Root ACL)設定で設定したl2f-eth0_inをXconnectインタフェースのinフィルタに適用します。これによりXconnectインタフェースからセッション(本装置への入力)方向のフレームに対してL2TPv3フィルタによるチェックが行われます。
(☞) L2TPv3ファストフォワーディング機能を利用している場合、ファストフォワーディングエントリに登録済みのセッションに対しては、当該セッションが(タイムアウト等によって)エントリから消えるまでフィルタリングは適用されません。

 

6. <スタティックルート設定>
NXR_B(config)#ip route 0.0.0.0/0 ppp 0

デフォルトルートを設定します。

 

7. <IPアクセスリスト設定>
NXR_B(config)#ip access-list ppp0_in permit 10.10.10.1 any 115

IPアクセスリスト名をppp0_inとし、送信元がルータNXR_AのWAN側IPアドレス10.10.10.1のL2TPパケット(プロトコル番号115)を許可します。
なおこのIPアクセスリスト設定はppp0インタフェース設定で登録します。
(☞) IPアクセスリストを設定しただけではフィルタとして有効にはなりません。フィルタリングしたいインタフェースでの登録が必要になります。

 

8. <PPPアカウント設定>
NXR_B(config)#ppp account username test2@example.jp password test2pass

ppp0インタフェースで使用するISP接続用ユーザID,パスワードを設定します。
(☞) ここで設定したアカウントはppp0インタフェースの設定で利用します。

 

9. <WAN側(ppp0)インタフェース設定>
NXR_B(config)#interface ppp 0
NXR_B(config-ppp)#ip address negotiated

ppp0インタフェースのIPアドレスが動的IPアドレスの場合は、negotiatedを設定します。

NXR_B(config-ppp)#ip masquerade
NXR_B(config-ppp)#ip access-group in ppp0_in
NXR_B(config-ppp)#ip spi-filter
NXR_B(config-ppp)#ip tcp adjust-mss auto

IPマスカレード、ステートフルパケットインスペクションを有効に設定します。またIPアクセスリストppp0_inをinフィルタに適用します。そしてTCP MSSの調整機能をオートに設定します。

NXR_B(config-ppp)#ppp username test2@example.jp

ISP接続用ユーザIDを設定します。

 

10. <ethernet1インタフェース設定>
NXR_B(config)#interface ethernet 1
NXR_B(config-if)#no ip address
NXR_B(config-if)#pppoe-client ppp 0

PPPoEクライアントとしてppp0インタフェースを使用できるように設定します。

 

11. <L2TPv3設定>
NXR_B(config)#l2tpv3 hostname nxrb
NXR_B(config)#l2tpv3 router-id 172.20.20.1

L2TPv3のホスト名としてnxrbを設定します。またルータIDを設定します。

NXR_B(config)#l2tpv3 mac-learning
NXR_B(config)#l2tpv3 mac-aging 300
NXR_B(config)#l2tpv3 path-mtu-discovery enable

MACアドレス学習機能を有効にし、エージングタイムを設定します。またPath MTU Discoveryを有効にします。

 

12. <L2TPv3トンネル設定>
NXR_B(config)#l2tpv3 tunnel 1
NXR_B(config-l2tpv3-tunnel)#description NXR_A
NXR_B(config-l2tpv3-tunnel)#tunnel address 10.10.10.1

L2TPv3トンネル1の説明としてNXR_A、リモートアドレスにルータNXR_AのWAN側IPアドレスを設定します。

NXR_B(config-l2tpv3-tunnel)#tunnel hostname nxra
NXR_B(config-l2tpv3-tunnel)#tunnel router-id 172.20.10.1
NXR_B(config-l2tpv3-tunnel)#tunnel vendor ietf

ルータNXR_AのL2TPv3ホスト名およびルータIDを設定します。そしてベンダIDとしてietfを設定します。
(☞) ルータNXR_AのL2TPv3設定にあるホスト名,ルータIDと同一の値を設定します。

 

13. <L2TPv3 Xconnect設定>
NXR_B(config)#l2tpv3 xconnect 1
NXR_B(config-l2tpv3-xconnect)#description NXR_A
NXR_B(config-l2tpv3-xconnect)#tunnel 1

L2TPv3 Xconnect1の説明としてNXR_A、関連づけを行うL2TPv3トンネルとしてL2TPv3トンネル1を設定します。

NXR_B(config-l2tpv3-xconnect)#xconnect ethernet 0
NXR_B(config-l2tpv3-xconnect)#xconnect end-id 1
NXR_B(config-l2tpv3-xconnect)#retry-interval 30
NXR_B(config-l2tpv3-xconnect)#ip tcp adjust-mss auto

Xconnectインタフェースとしてethernet0インタフェースおよびリモートエンドIDを設定します。またリトライインターバルを設定します。そしてTCP MSSの調整機能をオートに設定します。

 

14. <DNS設定>
NXR_B(config)#dns
NXR_B(config-dns)#service enable

DNSサービスを有効にします。

 

15. <ファストフォワーディングの有効化>
NXR_B(config)#fast-forwarding enable
NXR_B(config)#l2tpv3 fast-forwarding enable

ファストフォワーディングおよびL2TPv3ファストフォワーディングを有効にします。

 

【 端末の設定例 】

LAN_Aのサーバ LAN_Bの端末
IPアドレス 192.168.10.100 192.168.10.101
サブネットマスク 255.255.255.0
デフォルトゲートウェイ 192.168.10.1 192.168.10.2
DNSサーバ