FutureNet

NXR,VXRシリーズ

L2TPv3編

2. L2TPv3応用設定

2-6. L2TPv3 over IPsec設定(DDNSの利用)

ダイナミックDNSを利用し、動的IPアドレスのルータ同士でL2TPv3 over IPsec接続する設定例です。なお、この例では片方の拠点でダイナミックDNSサービスとして弊社が提供しているWarpLink DDNSサービスを使用します。

 

【 L2TPv3,IPsec機能対応機種 】NXR-1300シリーズ,NXR-650,NXR-610Xシリーズ,NXR-530,NXR-350/C,NXR-230/C,NXR-160/LW,NXR-G180/L-CA,NXR-G200シリーズ,NXR-G110シリーズ,NXR-G100シリーズ,NXR-G050シリーズ,VXRシリーズ(2023/5現在)

設定例で使用している機能の対応状況は、各製品の更新履歴やユーザーズガイドをご確認ください。

 

コンテンツ
構成図 設定例 設定例解説 端末の設定例 補足 付録

 

【 構成図 】

  • この例で使用しているルータは、NXR_AがNXR-650、NXR_BがNXR-G110/Lです。
  • NXR_A,NXR_BのWAN側IPアドレスはグローバルアドレスが割り当てられることを想定しています。
    NXR_Bでシェアードアドレスが割り当てられる場合は、こちらも併せてご参照ください。
  • NXR-G180/L-CAはキャリアアグリゲーション対応の内蔵通信モジュールがmobile1(LTE1),キャリアアグリゲーション未対応の内蔵通信モジュールがmobile2(LTE2)となりますので、モバイル設定する場合はmobile1をmobile2に読み替えて設定してください。
  • NXR-G050シリーズの内蔵通信モジュールはmobile2となりますので、モバイル設定する場合はmobile1をmobile2に読み替えて設定してください。

 

【 設定例 】

 

〔 NXR_Aの設定 〕

nxr650#configure terminal
nxr650(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 192.168.10.2/32 tunnel 1 1
NXR_A(config)#ip route 192.168.10.2/32 null 254
NXR_A(config)#ip route 0.0.0.0/0 ppp 0
NXR_A(config)#ip access-list ppp0_IN permit any any udp 500 500
NXR_A(config)#ip access-list ppp0_IN permit any any 50
NXR_A(config)#ipsec access-list IPsec_ACL ip any any
NXR_A(config)#ipsec local policy 1
NXR_A(config-ipsec-local)#address ip
NXR_A(config-ipsec-local)#self-identity fqdn NXRA
NXR_A(config-ipsec-local)#exit
NXR_A(config)#ipsec isakmp policy 1
NXR_A(config-ipsec-isakmp)#description NXR_B
NXR_A(config-ipsec-isakmp)#authentication pre-share IPsecKEY
NXR_A(config-ipsec-isakmp)#hash sha256
NXR_A(config-ipsec-isakmp)#encryption aes128
NXR_A(config-ipsec-isakmp)#group 5
NXR_A(config-ipsec-isakmp)#lifetime 86400
NXR_A(config-ipsec-isakmp)#isakmp-mode aggressive
NXR_A(config-ipsec-isakmp)#remote address ip any
NXR_A(config-ipsec-isakmp)#remote identity fqdn NXRB
NXR_A(config-ipsec-isakmp)#keepalive 30 3 periodic clear
NXR_A(config-ipsec-isakmp)#local policy 1
NXR_A(config-ipsec-isakmp)#exit
NXR_A(config)#interface tunnel 1
NXR_A(config-tunnel)#ip address 192.168.10.1/32
NXR_A(config-tunnel)#tunnel mode ipsec ipv4
NXR_A(config-tunnel)#tunnel protection ipsec policy 1
NXR_A(config-tunnel)#ip tcp adjust-mss auto
NXR_A(config-tunnel)#exit
NXR_A(config)#ipsec tunnel policy 1
NXR_A(config-ipsec-tunnel)#description NXR_B
NXR_A(config-ipsec-tunnel)#negotiation-mode responder
NXR_A(config-ipsec-tunnel)#set transform esp-aes128 esp-sha256-hmac
NXR_A(config-ipsec-tunnel)#set pfs group5
NXR_A(config-ipsec-tunnel)#set sa lifetime 28800
NXR_A(config-ipsec-tunnel)#set key-exchange isakmp 1
NXR_A(config-ipsec-tunnel)#match address IPsec_ACL
NXR_A(config-ipsec-tunnel)#exit
NXR_A(config)#ppp account username [ISP接続用ユーザID] password [ISP接続用パスワード]
NXR_A(config)#interface ppp 0
NXR_A(config-ppp)#ip address negotiated
NXR_A(config-ppp)#ip masquerade
NXR_A(config-ppp)#ip spi-filter
NXR_A(config-ppp)#ip access-group in ppp0_IN
NXR_A(config-ppp)#ip tcp adjust-mss auto
NXR_A(config-ppp)#ppp username [ISP接続用ユーザID]
NXR_A(config-ppp)#ipsec policy 1
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 192.168.10.1
NXR_A(config)#l2tpv3 mac-learning
NXR_A(config)#l2tpv3 mac-aging 300
NXR_A(config)#l2tpv3 path-mtu-discovery enable
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 192.168.10.2
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)#warplink
NXR_A(config-warplink)#service enable
NXR_A(config-warplink)#account username [WarpLink DDNS用ユーザID] password [WarpLink DDNS用パスワード]
NXR_A(config-warplink)#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の設定 〕

nxrg110#configure terminal
nxrg110(config)#hostname NXR_B
NXR_B(config)#interface ethernet 0
NXR_B(config-if)#ip address 192.168.10.2/24
NXR_B(config-if)#exit
NXR_B(config)#ip route 192.168.10.1/32 tunnel 1 1
NXR_B(config)#ip route 192.168.10.1/32 null 254
NXR_B(config)#ip route 0.0.0.0/0 ppp 0
NXR_B(config)#ip access-list ppp0_IN permit any any udp 500 500
NXR_B(config)#ip access-list ppp0_IN permit any any 50
NXR_B(config)#ipsec access-list IPsec_ACL ip any any
NXR_B(config)#ipsec local policy 1
NXR_B(config-ipsec-local)#address ip
NXR_B(config-ipsec-local)#self-identity fqdn NXRB
NXR_B(config-ipsec-local)#exit
NXR_B(config)#ipsec isakmp policy 1
NXR_B(config-ipsec-isakmp)#description NXR_A
NXR_B(config-ipsec-isakmp)#authentication pre-share IPsecKEY
NXR_B(config-ipsec-isakmp)#hash sha256
NXR_B(config-ipsec-isakmp)#encryption aes128
NXR_B(config-ipsec-isakmp)#group 5
NXR_B(config-ipsec-isakmp)#lifetime 86400
NXR_B(config-ipsec-isakmp)#isakmp-mode aggressive
NXR_B(config-ipsec-isakmp)#remote address ip [NXR_AのWarpLink DDNS FQDN名]
NXR_B(config-ipsec-isakmp)#remote identity fqdn NXRA
NXR_B(config-ipsec-isakmp)#keepalive 30 3 periodic restart
NXR_B(config-ipsec-isakmp)#local policy 1
NXR_B(config-ipsec-isakmp)#exit
NXR_B(config)#interface tunnel 1
NXR_B(config-tunnel)#ip address 192.168.10.2/32
NXR_B(config-tunnel)#tunnel mode ipsec ipv4
NXR_B(config-tunnel)#tunnel protection ipsec policy 1
NXR_B(config-tunnel)#ip tcp adjust-mss auto
NXR_B(config-tunnel)#exit
NXR_B(config)#ipsec tunnel policy 1
NXR_B(config-ipsec-tunnel)#description NXR_A
NXR_B(config-ipsec-tunnel)#negotiation-mode auto
NXR_B(config-ipsec-tunnel)#set transform esp-aes128 esp-sha256-hmac
NXR_B(config-ipsec-tunnel)#set pfs group5
NXR_B(config-ipsec-tunnel)#set sa lifetime 28800
NXR_B(config-ipsec-tunnel)#set key-exchange isakmp 1
NXR_B(config-ipsec-tunnel)#match address IPsec_ACL
NXR_B(config-ipsec-tunnel)#exit
NXR_B(config)#ppp account username [モバイル(PPP)接続用ユーザID] password [モバイル(PPP)接続用パスワード]
NXR_B(config)#interface ppp 0
NXR_B(config-ppp)#ip address negotiated
NXR_B(config-ppp)#ip masquerade
NXR_B(config-ppp)#ip spi-filter
NXR_B(config-ppp)#ip access-group in ppp0_IN
NXR_B(config-ppp)#ip tcp adjust-mss auto
NXR_B(config-ppp)#ppp username [モバイル(PPP)接続用ユーザID]
NXR_B(config-ppp)#mobile apn [APN] cid 1 pdp-type ip
NXR_B(config-ppp)#dial-up string *99***1#
NXR_B(config-ppp)#dial-up timeout 30
NXR_B(config-ppp)#ipsec policy 1
NXR_B(config-ppp)#exit
NXR_B(config)#mobile error-recovery-reset
NXR_B(config)#mobile termination-recovery reset
NXR_B(config)#mobile 1 ppp 0
NXR_B(config)#mobile 1 carrier [キャリア]
NXR_B(config)#exit
NXR_B#clear mobile 1
NXR_B#configure terminal
NXR_B(config)#l2tpv3 hostname NXRB
NXR_B(config)#l2tpv3 router-id 192.168.10.2
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 192.168.10.1
NXR_B(config-l2tpv3-tunnel)#tunnel hostname NXRA
NXR_B(config-l2tpv3-tunnel)#tunnel router-id 192.168.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)#exit
NXR_B#save config

 

【 設定例解説 】

 

〔 NXR_Aの設定 〕

1. <ホスト名の設定>
nxr650(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 192.168.10.2/32 tunnel 1 1
NXR_A(config)#ip route 192.168.10.2/32 null 254

192.168.10.2/32向けのルートを設定します。

NXR_A(config)#ip route 0.0.0.0/0 ppp 0

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

 

4. <IPアクセスリスト設定>
NXR_A(config)#ip access-list ppp0_IN permit any any udp 500 500
NXR_A(config)#ip access-list ppp0_IN permit any any 50

IPアクセスリストppp0_INを以下のルールで設定します。

  • 送信元,宛先UDPポート500番を許可
  • プロトコル番号50(ESP)を許可

(☞) IPアクセスリストを設定しただけではフィルタとして有効にはなりません。フィルタリングを行うインタフェースでの登録が必要になります。

 

5. <IPsecアクセスリスト設定>
NXR_A(config)#ipsec access-list IPsec_ACL ip any any

IPsecアクセスリストIPsec_ACLを以下のルールで設定します。

  • 送信元IPアドレス … any
  • 宛先IPアドレス … any

 

6. <IPsecローカルポリシー設定>
NXR_A(config)#ipsec local policy 1
NXR_A(config-ipsec-local)#address ip

IPsecトンネルの送信元IPアドレスにipを設定します。

NXR_A(config-ipsec-local)#self-identity fqdn NXRA

セルフID(FQDN方式)を設定します。
(☞) NXR_Bのipsec isakmp policy 1のリモートIDと同じIDを設定します。

 

7. <IPsec ISAKMPポリシー設定>
NXR_A(config)#ipsec isakmp policy 1
NXR_A(config-ipsec-isakmp)#description NXR_B

ISAKMPポリシー1の説明文を設定します。

NXR_A(config-ipsec-isakmp)#authentication pre-share IPsecKEY

認証方式としてpre-share(事前共有鍵)を選択し、事前共有鍵を設定します。
(☞) 事前共有鍵はNXR_Bのipsec isakmp policy 1と共通の値を設定します。

NXR_A(config-ipsec-isakmp)#hash sha256

認証アルゴリズムをsha256に設定します。

NXR_A(config-ipsec-isakmp)#encryption aes128

暗号化アルゴリズムをaes128に設定します。

NXR_A(config-ipsec-isakmp)#group 5

Diffie-Hellman(DH)グループをgroup 5に設定します。

NXR_A(config-ipsec-isakmp)#lifetime 86400

ISAKMP SAのライフタイムを設定します。

NXR_A(config-ipsec-isakmp)#isakmp-mode aggressive

フェーズ1のネゴシエーションモードをアグレッシブモードに設定します。

NXR_A(config-ipsec-isakmp)#remote address ip any

リモートアドレスにanyを設定します。

NXR_A(config-ipsec-isakmp)#remote identity fqdn NXRB

リモートID(FQDN方式)を設定します。
(☞) NXR_Bのipsec local policy 1のセルフIDと同じIDを設定します。

NXR_A(config-ipsec-isakmp)#keepalive 30 3 periodic clear

IKE KeepAlive(DPD)を以下のルールで設定します。

  • 監視間隔 … 30秒
  • リトライ回数 … 3回
  • ダウン検知後の動作 … SA削除
NXR_A(config-ipsec-isakmp)#local policy 1

このIPsec ISAKMPポリシーで使用するIPsecローカルポリシーを設定します。

 

8. <トンネル1インタフェース設定>
NXR_A(config)#interface tunnel 1
NXR_A(config-tunnel)#ip address 192.168.10.1/32

トンネル1インタフェースのIPアドレスを設定します。

NXR_A(config-tunnel)#tunnel mode ipsec ipv4

トンネルモードをipsec ipv4に設定します。

NXR_A(config-tunnel)#tunnel protection ipsec policy 1

このトンネルインタフェースで使用するIPsecトンネルポリシーを設定します。

NXR_A(config-tunnel)#ip tcp adjust-mss auto

TCP MSSの調整機能をオートに設定します。

 

9. <IPsec トンネルポリシー設定>
NXR_A(config)#ipsec tunnel policy 1
NXR_A(config-ipsec-tunnel)#description NXR_B

IPsecトンネルポリシー1の説明文を設定します。

NXR_A(config-ipsec-tunnel)#negotiation-mode responder

ネゴシエーションモードをresponderに設定します。

NXR_A(config-ipsec-tunnel)#set transform esp-aes128 esp-sha256-hmac

暗号化アルゴリズムをaes128、認証アルゴリズムをsha256に設定します。

NXR_A(config-ipsec-tunnel)#set pfs group5

PFSを有効、DHグループをgroup5に設定します。

NXR_A(config-ipsec-tunnel)#set sa lifetime 28800

IPsec SAのライフタイムを設定します。

NXR_A(config-ipsec-tunnel)#set key-exchange isakmp 1

このIPsecトンネルポリシーで使用するIPsec ISAKMPポリシーを設定します。

NXR_A(config-ipsec-tunnel)#match address IPsec_ACL

IPsecアクセスリストを設定します。

 

10. <PPPアカウント設定>
NXR_A(config)#ppp account username [ISP接続用ユーザID] password [ISP接続用パスワード]

ISP接続用ユーザID,パスワードを設定します。

 

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

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

NXR_A(config-ppp)#ip masquerade
NXR_A(config-ppp)#ip spi-filter

IPマスカレード、ステートフルパケットインスペクションを有効にします。

NXR_A(config-ppp)#ip access-group in ppp0_IN

IPアクセスグループのinフィルタにIPアクセスリストppp0_INを設定します。

NXR_A(config-ppp)#ip tcp adjust-mss auto

TCP MSSの調整機能をオートに設定します。

NXR_A(config-ppp)#ppp username [ISP接続用ユーザID]

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

NXR_A(config-ppp)#ipsec policy 1

このインタフェースで使用するIPsecローカルポリシーを設定します。

 

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

PPPoEクライアントにppp0を設定します。

 

13. <L2TPv3設定>
NXR_A(config)#l2tpv3 hostname NXRA

L2TPv3のホスト名を設定します。

NXR_A(config)#l2tpv3 router-id 192.168.10.1

L2TPv3のルータIDを設定します。

NXR_A(config)#l2tpv3 mac-learning

MACアドレス学習機能を有効にします。

NXR_A(config)#l2tpv3 mac-aging 300

MACアドレス学習機能のエージングタイムを設定します。

NXR_A(config)#l2tpv3 path-mtu-discovery enable

L2TPv3のPath MTU Discoveryを有効にします。

 

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

L2TPv3トンネル1の説明文を設定します。

NXR_A(config-l2tpv3-tunnel)#tunnel hostname NXRB

NXR_BのL2TPv3のホスト名を設定します。
(☞) このホスト名はNXR_Bのl2tpv3 hostnameと同一の値を設定します。

NXR_A(config-l2tpv3-tunnel)#tunnel router-id 192.168.10.2

NXR_BのL2TPv3のルータIDを設定します。
(☞) このルータIDはNXR_Bのl2tpv3 router-idと同一の値を設定します。

NXR_A(config-l2tpv3-tunnel)#tunnel vendor ietf

ベンダIDをietfに設定します。

 

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

L2TPv3 Xconnect1の説明文を設定します。

NXR_A(config-l2tpv3-xconnect)#tunnel 1

このL2TPv3 Xconnectで使用するL2TPv3トンネルを設定します。

NXR_A(config-l2tpv3-xconnect)#xconnect ethernet 0

Xconnectインタフェースを設定します。

NXR_A(config-l2tpv3-xconnect)#xconnect end-id 1

リモートエンドIDを設定します。
(☞) Xconnectインタフェースを識別する際に使用するIDのため、NXR_Bで設定するリモートエンドIDと同じIDを設定します。

NXR_A(config-l2tpv3-xconnect)#ip tcp adjust-mss auto

TCP MSSの調整機能をオートに設定します。

 

16. <WarpLink DDNS設定>
NXR_A(config)#warplink
NXR_A(config-warplink)#service enable

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

NXR_A(config-warplink)#account username [WarpLink DDNS用ユーザID] password [WarpLink DDNS用パスワード]

WarpLink DDNS用ユーザID,パスワードを設定します。

 

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

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

 

18. <ファストフォワーディング設定>
NXR_A(config)#fast-forwarding enable

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

NXR_A(config)#l2tpv3 fast-forwarding enable

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

 

19. <設定の保存>
NXR_A#save config

設定内容を保存します。

 

〔 NXR_Bの設定 〕

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

ホスト名を設定します。

 

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

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

 

3. <スタティックルート設定>
NXR_B(config)#ip route 192.168.10.1/32 tunnel 1 1
NXR_B(config)#ip route 192.168.10.1/32 null 254

192.168.10.1/32向けのルートを設定します。

NXR_B(config)#ip route 0.0.0.0/0 ppp 0

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

 

4. <IPアクセスリスト設定>
NXR_B(config)#ip access-list ppp0_IN permit any any udp 500 500
NXR_B(config)#ip access-list ppp0_IN permit any any 50

IPアクセスリストppp0_INを以下のルールで設定します。

  • 送信元,宛先UDPポート500番を許可
  • プロトコル番号50(ESP)を許可

 

5. <IPsecアクセスリスト設定>
NXR_B(config)#ipsec access-list IPsec_ACL ip any any

IPsecアクセスリストIPsec_ACLを以下のルールで設定します。

  • 送信元IPアドレス … any
  • 宛先IPアドレス … any

 

6. <IPsecローカルポリシー設定>
NXR_B(config)#ipsec local policy 1
NXR_B(config-ipsec-local)#address ip

IPsecトンネルの送信元IPアドレスにipを設定します。

NXR_B(config-ipsec-local)#self-identity fqdn NXRB

セルフID(FQDN方式)を設定します。
(☞) NXR_Aのipsec isakmp policy 1のリモートIDと同じIDを設定します。

 

7. <IPsec ISAKMPポリシー設定>
NXR_B(config)#ipsec isakmp policy 1
NXR_B(config-ipsec-isakmp)#description NXR_A

ISAKMPポリシー1の説明文を設定します。

NXR_B(config-ipsec-isakmp)#authentication pre-share IPsecKEY

認証方式としてpre-share(事前共有鍵)を選択し、事前共有鍵を設定します。
(☞) 事前共有鍵はNXR_Aのipsec isakmp policy 1と共通の値を設定します。

NXR_B(config-ipsec-isakmp)#hash sha256

認証アルゴリズムをsha256に設定します。

NXR_B(config-ipsec-isakmp)#encryption aes128

暗号化アルゴリズムをaes128に設定します。

NXR_B(config-ipsec-isakmp)#group 5

DHグループをgroup 5に設定します。

NXR_B(config-ipsec-isakmp)#lifetime 86400

ISAKMP SAのライフタイムを設定します。

NXR_B(config-ipsec-isakmp)#isakmp-mode aggressive

フェーズ1のネゴシエーションモードをアグレッシブモードに設定します。

NXR_B(config-ipsec-isakmp)#remote address ip [NXR_AのWarpLink DDNS FQDN名]

リモートアドレスにNXR_AのWarpLink DDNS FQDN名を設定します。

NXR_B(config-ipsec-isakmp)#remote identity fqdn NXRA

リモートID(FQDN方式)を設定します。
(☞) NXR_Aのipsec local policy 1のセルフIDと同じIDを設定します。

NXR_B(config-ipsec-isakmp)#keepalive 30 3 periodic restart

IKE KeepAlive(DPD)を以下のルールで設定します。

  • 監視間隔 … 30秒
  • リトライ回数 … 3回
  • ダウン検知後の動作 … IKEの再ネゴシエーション
NXR_B(config-ipsec-isakmp)#local policy 1

このIPsec ISAKMPポリシーで使用するIPsecローカルポリシーを設定します。

 

8. <トンネル1インタフェース設定>
NXR_B(config)#interface tunnel 1
NXR_B(config-tunnel)#ip address 192.168.10.2/32

トンネル1インタフェースのIPアドレスを設定します。

NXR_B(config-tunnel)#tunnel mode ipsec ipv4

トンネルモードをipsec ipv4に設定します。

NXR_B(config-tunnel)#tunnel protection ipsec policy 1

このトンネルインタフェースで使用するIPsecトンネルポリシーを設定します。

NXR_B(config-tunnel)#ip tcp adjust-mss auto

TCP MSSの調整機能をオートに設定します。

 

9. <IPsec トンネルポリシー設定>
NXR_B(config)#ipsec tunnel policy 1
NXR_B(config-ipsec-tunnel)#description NXR_A

IPsecトンネルポリシー1の説明文を設定します。

NXR_B(config-ipsec-tunnel)#negotiation-mode auto

ネゴシエーションモードをautoに設定します。

NXR_B(config-ipsec-tunnel)#set transform esp-aes128 esp-sha256-hmac

暗号化アルゴリズムをaes128、認証アルゴリズムをsha256に設定します。

NXR_B(config-ipsec-tunnel)#set pfs group5

PFSを有効、DHグループをgroup5に設定します。

NXR_B(config-ipsec-tunnel)#set sa lifetime 28800

IPsec SAのライフタイムを設定します。

NXR_B(config-ipsec-tunnel)#set key-exchange isakmp 1

このIPsecトンネルポリシーで使用するIPsec ISAKMPポリシーを設定します。

NXR_B(config-ipsec-tunnel)#match address IPsec_ACL

IPsecアクセスリストを設定します。

 

10. <PPPアカウント設定>
NXR_B(config)#ppp account username [モバイル(PPP)接続用ユーザID] password [モバイル(PPP)接続用パスワード]

モバイル(PPP)接続用ユーザID,パスワードを設定します。

 

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

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

NXR_B(config-ppp)#ip masquerade
NXR_B(config-ppp)#ip spi-filter

IPマスカレード、ステートフルパケットインスペクションを有効にします。

NXR_B(config-ppp)#ip access-group in ppp0_IN

IPアクセスグループのinフィルタにIPアクセスリストppp0_INを設定します。

NXR_B(config-ppp)#ip tcp adjust-mss auto

TCP MSSの調整機能をオートに設定します。

NXR_B(config-ppp)#ppp username [モバイル(PPP)接続用ユーザID]

モバイル(PPP)接続用ユーザIDを設定します。

NXR_B(config-ppp)#mobile apn [APN] cid 1 pdp-type ip

APN,CID,PDPタイプを設定します。

NXR_B(config-ppp)#dial-up string *99***1#

発信用の電話番号を設定します。
(☞) 電話番号の#の前の数字はCIDを表しています。

NXR_B(config-ppp)#dial-up timeout 30

ダイアルタイムアウトを設定します。

NXR_B(config-ppp)#ipsec policy 1

このインタフェースで使用するIPsecローカルポリシーを設定します。

 

12. <モバイルエラーリカバリー設定>
NXR_B(config)#mobile error-recovery-reset

内蔵通信モジュールとの通信に重大な問題が発生する可能性が高いと判断した場合、内蔵通信モジュールのリセットを行うように設定します。

 

13. <モバイルターミネーションリカバリー設定>
NXR_B(config)#mobile termination-recovery reset

PPP接続時に網側から切断された場合、内蔵通信モジュールのリセットを行うように設定します。

 

14. <モバイル割り当て設定>
NXR_B(config)#mobile 1 ppp 0

mobile1として認識されている内蔵通信モジュールとppp0インタフェースの関連づけを行います。
内蔵通信モジュールをPPPインタフェースで使用する場合は、mobileコマンドによるPPPインタフェースへの関連付けが必要になります。
(☞) mobile1の情報はshow mobile 1コマンドで確認することができます。

 

15. <モバイルキャリア設定>
NXR_B(config)#mobile 1 carrier [キャリア]

mobile1のキャリアを設定します。
(☞) キャリア設定は「clear mobile 1」コマンドによるモバイルリセットを行うことで反映されます。

 

16. <L2TPv3設定>
NXR_B(config)#l2tpv3 hostname NXRB

L2TPv3のホスト名を設定します。

NXR_B(config)#l2tpv3 router-id 192.168.10.2

L2TPv3のルータIDを設定します。

NXR_B(config)#l2tpv3 mac-learning

MACアドレス学習機能を有効にします。

NXR_B(config)#l2tpv3 mac-aging 300

MACアドレス学習機能のエージングタイムを設定します。

NXR_B(config)#l2tpv3 path-mtu-discovery enable

L2TPv3のPath MTU Discoveryを有効にします。

 

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

L2TPv3トンネル1の説明文を設定します。

NXR_B(config-l2tpv3-tunnel)#tunnel address 192.168.10.1

トンネルアドレスにNXR_AのトンネルインタフェースのIPアドレスを設定します。

NXR_B(config-l2tpv3-tunnel)#tunnel hostname NXRA

NXR_AのL2TPv3のホスト名を設定します。
(☞) このホスト名はNXR_Aのl2tpv3 hostnameと同一の値を設定します。

NXR_B(config-l2tpv3-tunnel)#tunnel router-id 192.168.10.1

NXR_AのL2TPv3のルータIDを設定します。
(☞) このルータIDはNXR_Aのl2tpv3 router-idと同一の値を設定します。

NXR_B(config-l2tpv3-tunnel)#tunnel vendor ietf

ベンダIDをietfに設定します。

 

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

L2TPv3 Xconnect1の説明文を設定します。

NXR_B(config-l2tpv3-xconnect)#tunnel 1

このL2TPv3 Xconnectで使用するL2TPv3トンネルを設定します。

NXR_B(config-l2tpv3-xconnect)#xconnect ethernet 0

Xconnectインタフェースを設定します。

NXR_B(config-l2tpv3-xconnect)#xconnect end-id 1

リモートエンドIDを設定します。

NXR_B(config-l2tpv3-xconnect)#retry-interval 30

リトライインターバルを設定します。

NXR_B(config-l2tpv3-xconnect)#ip tcp adjust-mss auto

TCP MSSの調整機能をオートに設定します。

 

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

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

 

20. <設定の保存>
NXR_B#save config

設定内容を保存します。

 

【 端末の設定例 】

NXR_A配下 NXR_B配下
IPアドレス 192.168.10.101 192.168.10.102
サブネットマスク 255.255.255.0
デフォルトゲートウェイ 192.168.10.1 192.168.10.2
DNSサーバアドレス

 

【 補足 】

モバイル回線で割り当てられるIPアドレスがシェアードアドレスなどグローバルアドレスではない場合、IPsec NATトラバーサルを設定する必要があります。また、それに伴いIPアクセスリスト設定も変更します。

 

 

〔 NXR_Aの設定 〕

<IPsec NATトラバーサル設定>
NXR_A(config)#ipsec nat-traversal enable

IPsec NATトラバーサルを有効にします。

 

<IPアクセスリスト設定>
NXR_A(config)#ip access-list ppp0_IN permit any any udp any 500
NXR_A(config)#ip access-list ppp0_IN permit any any udp any 4500

IPアクセスリストppp0_INを以下のルールで設定します。

  • 宛先UDPポート500番を許可
  • 宛先UDPポート4500番を許可

(☞) IPsecでNATトラバーサル以外の拠点間通信がある場合は、以下のルールも追加してください。

NXR_A(config)#ip access-list ppp0_IN permit any any 50
  • プロトコル番号50(ESP)を許可

 

〔 NXR_Bの設定 〕

<IPsec NATトラバーサル設定>
NXR_B(config)#ipsec nat-traversal enable

IPsec NATトラバーサルを有効にします。

 

【 付録 】