FutureNet
NXR,WXRシリーズ
IPsec編
1. Route Based IPsec設定
1-8. FQDNでのIPsec接続設定
ダイナミックDNSを利用し動的IPアドレスのルータ同士でIPsec接続する設定例です。この例ではダイナミックDNSサービスとして弊社が提供しているWarpLinkDDNSサービスを使用します。
コンテンツ | |||||
構成図 | 設定フロー | 設定例 | 設定例解説 | 端末の設定例 | 付録 |
【 構成図 】
- WarpLinkDDNSサービスは、弊社が提供している有償のDDNSサービスとなります。
詳細は下記URLからご確認下さい。
http://www.warplink.ne.jp/ddns/index.html - IPsec接続は、FQDNの名前解決後、開始します。
(☞) 設定したFQDNの名前解決後IPsec接続を開始しますので、名前解決できない場合IPsec接続を開始することができない点にご注意ください。 - 両拠点ルータでWarpLinkDDNSサービスを動作させることで、両拠点ルータからIPsec接続を開始することが可能となり、片側でWarpLinkDDNSサービスを動作させる場合に比べ再接続性の向上が期待できます。
- この設定例では各ルータのFQDNを下記とします。
・NXR_A:nxra.subdomain.warplink.ne.jp
・NXR_B:nxrb.subdomain.warplink.ne.jp
【 設定フロー 】
〔NXR_Aの設定フロー〕
〔NXR_Bの設定フロー〕
【 設定例 】
〔NXR_Aの設定〕
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 192.168.20.0/24 tunnel 1 1
NXR_A(config)#ip route 192.168.20.0/24 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 10800
NXR_A(config-ipsec-isakmp)#isakmp-mode aggressive
NXR_A(config-ipsec-isakmp)#remote address ip nxrb.subdomain.warplink.ne.jp
NXR_A(config-ipsec-isakmp)#remote identity fqdn nxrb
NXR_A(config-ipsec-isakmp)#keepalive 30 3 periodic restart
NXR_A(config-ipsec-isakmp)#local policy 1
NXR_A(config-ipsec-isakmp)#exit
NXR_A(config)#interface tunnel 1
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 auto
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 3600
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 test1@example.jp password test1pass
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 test1@example.jp
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)#warplink
NXR_A(config-warplink)#service enable
NXR_A(config-warplink)#account username [WarpLink用ユーザID] password [WarpLink用パスワード]
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)#exit
NXR_A#save config
〔NXR_Bの設定〕
Enter configuration commands, one per line. End with CNTL/Z.
nxrg100(config)#hostname NXR_B
NXR_B(config)#interface ethernet 0
NXR_B(config-if)#ip address 192.168.20.1/24
NXR_B(config-if)#exit
NXR_B(config)#ip route 192.168.10.0/24 tunnel 1 1
NXR_B(config)#ip route 192.168.10.0/24 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 10800
NXR_B(config-ipsec-isakmp)#isakmp-mode aggressive
NXR_B(config-ipsec-isakmp)#remote address ip nxra.subdomain.warplink.ne.jp
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)#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 3600
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 [モバイル接続用ユーザID] password [モバイル接続用パスワード]
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 [モバイル接続用ユーザID]
NXR_B(config-ppp)#mobile apn [APN] cid [CID] pdp-type ip
NXR_B(config-ppp)#dial-up string *99***[CID]#
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
% Please execute ‘clear mobile 1′ command to take affect.
NXR_B(config)#mobile 1 carrier [キャリア]
% Please execute ‘clear mobile 1′ command to take affect.
NXR_B(config)#exit
NXR_B#clear mobile 1
Reset mobile device 1 … Please wait.
NXR_B#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
NXR_B(config)#warplink
NXR_B(config-warplink)#service enable
NXR_B(config-warplink)#account username [WarpLink用ユーザID] password [WarpLink用パスワード]
NXR_B(config-warplink)#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. <ホスト名の設定>
ホスト名を設定します。
2. <LAN側(ethernet0)インタフェース設定>
NXR_A(config-if)#ip address 192.168.10.1/24
ethernet0インタフェースのIPアドレスを設定します。
3. <スタティックルート設定>
NXR_A(config)#ip route 192.168.20.0/24 null 254
192.168.20.0/24向けのルートを設定します。なおIPsec SA確立時はトンネル1インタフェースを、未確立時はnullインタフェースのルートを利用するように設定します。
デフォルトルートを設定します。
4. <IPアクセスリスト設定>
NXR_A(config)#ip access-list ppp0_in permit any any 50
IPアクセスリスト名をppp0_inとします。そしてIKE(UDPポート500番)、ESP(プロトコル番号50)のパケットを許可します。
(☞) IPアクセスリストを設定しただけではフィルタとして有効にはなりません。フィルタリングを行うインタフェースでの登録が必要になります。
5. <IPsecアクセスリスト設定>
ipsec_aclという名前のIPsecアクセスリストを設定します。なお送信元IPアドレス,宛先IPアドレスともにanyとします。
6. <IPsecローカルポリシー設定>
NXR_A(config-ipsec-local)#address ip
NXR_A(config-ipsec-local)#self-identity fqdn nxra
IPsecトンネルの送信元IPアドレスにip(IPv4)を設定します。またセルフIDをFQDN方式でnxraとし、NXR_BのIPsec ISAKMPポリシー1のリモートIDと同じIDを設定します。
7. <IPsec ISAKMPポリシー設定>
NXR_A(config-ipsec-isakmp)#description NXR_B
NXR_A(config-ipsec-isakmp)#authentication pre-share ipseckey
ISAKMPポリシー1の説明としてNXR_B、認証方式としてpre-share(事前共有鍵)を選択し、事前共有鍵ipseckeyを設定します。なお事前共有鍵はNXR_Bのipsec isakmp policy 1と共通の値を設定します。
NXR_A(config-ipsec-isakmp)#encryption aes128
NXR_A(config-ipsec-isakmp)#group 5
NXR_A(config-ipsec-isakmp)#lifetime 10800
NXR_A(config-ipsec-isakmp)#isakmp-mode aggressive
認証アルゴリズムとしてsha256、暗号化アルゴリズムとしてaes128,Diffie-Hellman(DH)グループとしてgroup 5、ISAKMP SAのライフタイムとして10800秒、フェーズ1のネゴシエーションモードとしてアグレッシブモードを設定します。
NXR_A(config-ipsec-isakmp)#remote identity fqdn nxrb
NXR_A(config-ipsec-isakmp)#keepalive 30 3 periodic restart
NXR_A(config-ipsec-isakmp)#local policy 1
リモートアドレスにNXR_BのFQDNを設定します。またリモートIDをFQDN方式でnxrbとし、NXR_BのIPsecローカルポリシー1のセルフIDと同じIDを設定します。そしてIKE KeepAlive(DPD)を監視間隔30秒,リトライ回数3回とし、keepalive失敗時にSAを削除しIKEのネゴシエーションを開始するように設定します。さらにIPsecローカルポリシー1と関連づけを行います。
8. <トンネル1インタフェース設定>
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
トンネル1インタフェースでトンネルモードをipsec ipv4、使用するIPsecトンネルポリシーとして1を設定します。またTCP MSSの調整機能をオートに設定します。
9. <IPsec トンネルポリシー設定>
NXR_A(config-ipsec-tunnel)#description NXR_B
NXR_A(config-ipsec-tunnel)#negotiation-mode auto
IPsecトンネルポリシー1の説明としてNXR_B、ネゴシエーションモードとしてautoを設定します。
NXR_A(config-ipsec-tunnel)#set pfs group5
NXR_A(config-ipsec-tunnel)#set sa lifetime 3600
暗号化アルゴリズムとしてaes128、認証アルゴリズムとしてsha256、PFSを有効にし、かつDHグループとしてgroup5、IPsec SAのライフタイムとして3600秒を設定します。
NXR_A(config-ipsec-tunnel)#match address ipsec_acl
ISAKMPポリシー1と関連づけを行い、IPsecアクセスリストipsec_aclを設定します。
10. <PPPアカウント設定>
ppp0インタフェースで使用するISP接続用ユーザID,パスワードを設定します。
(☞) ここで設定したアカウントはppp0インタフェースの設定で利用します。
11. <WAN側(ppp0)インタフェース設定>
NXR_A(config-ppp)#ip address negotiated
ppp0インタフェースのIPアドレスは動的のため、negotiatedを設定します。
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
IPマスカレード、ステートフルパケットインスペクションを有効にします。またIPアクセスリストppp0_inをinフィルタに適用します。そしてTCP MSSの調整機能をオートに設定します。
NXR_A(config-ppp)#ipsec policy 1
ISP接続用ユーザIDを設定します。またIPsecトンネルのエンドポイントとなるためIPsecローカルポリシー1を設定します。
12. <ethernet1インタフェース設定>
NXR_A(config-if)#no ip address
NXR_A(config-if)#pppoe-client ppp 0
PPPoEクライアントを設定します。また使用するPPPインタフェースとしてppp0を指定します。
13. <WarpLink設定>
NXR_A(config-warplink)#service enable
NXR_A(config-warplink)#account username [WarpLink用ユーザID] password [WarpLink用パスワード]
WarpLinkサービスを有効にします。またWarpLinkサービスで使用するユーザID,パスワードを設定します。
14. <DNS設定>
NXR_A(config-dns)#service enable
DNSサービスを有効にします。
15. <ファストフォワーディング設定>
ファストフォワーディングを有効にします。ファストフォワーディングを有効にすることでパケット転送を高速に処理することができます。
(☞) ファストフォワーディングの詳細および利用時の制約については、各シリーズのユーザーズガイド(CLI版)に記載されているファストフォワーディングの解説をご参照ください。
〔NXR_Bの設定〕
1. <ホスト名の設定>
ホスト名を設定します。
2. <LAN側(ethernet0)インタフェース設定>
NXR_B(config-if)#ip address 192.168.20.1/24
ethernet0インタフェースのIPアドレスを設定します。
3. <スタティックルート設定>
NXR_B(config)#ip route 192.168.10.0/24 null 254
192.168.10.0/24向けのルートを設定します。なおIPsec SA確立時はトンネル1インタフェースを、未確立時はnullインタフェースのルートを利用するように設定します。
デフォルトルートを設定します。
4. <IPアクセスリスト設定>
NXR_B(config)#ip access-list ppp0_in permit any any 50
IPアクセスリスト名をppp0_inとします。そしてIKE(UDPポート500番)、ESP(プロトコル番号50)のパケットを許可します。
5. <IPsecアクセスリスト設定>
ipsec_aclという名前のIPsecアクセスリストを設定します。なお送信元IPアドレス,宛先IPアドレスともにanyとします。
6. <IPsecローカルポリシー設定>
NXR_B(config-ipsec-local)#address ip
NXR_B(config-ipsec-local)#self-identity fqdn nxrb
IPsecトンネルの送信元IPアドレスにip(IPv4)を設定します。またセルフIDをFQDN方式でnxrbとし、NXR_AのIPsec ISAKMPポリシー1のリモートIDと同じIDを設定します。
7. <IPsec ISAKMPポリシー設定>
NXR_B(config-ipsec-isakmp)#description NXR_A
NXR_B(config-ipsec-isakmp)#authentication pre-share ipseckey
ISAKMPポリシー1の説明としてNXR_A、認証方式としてpre-share(事前共有鍵)を選択し、事前共有鍵ipseckeyを設定します。なお事前共有鍵はNXR_Aのipsec isakmp policy 1と共通の値を設定します。
NXR_B(config-ipsec-isakmp)#encryption aes128
NXR_B(config-ipsec-isakmp)#group 5
NXR_B(config-ipsec-isakmp)#lifetime 10800
NXR_B(config-ipsec-isakmp)#isakmp-mode aggressive
認証アルゴリズムとしてsha256、暗号化アルゴリズムとしてaes128,Diffie-Hellman(DH)グループとしてgroup 5、ISAKMP SAのライフタイムとして10800秒、フェーズ1のネゴシエーションモードとしてアグレッシブモードを設定します。
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_AのFQDNを設定します。またリモートIDをFQDN方式でnxraとし、NXR_AのIPsecローカルポリシー1のセルフIDと同じIDを設定します。そしてIKE KeepAlive(DPD)を監視間隔30秒,リトライ回数3回とし、keepalive失敗時にSAを削除しIKEのネゴシエーションを開始するように設定します。さらにIPsecローカルポリシー1と関連づけを行います。
8. <トンネル1インタフェース設定>
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
トンネル1インタフェースでトンネルモードをipsec ipv4、使用するIPsecトンネルポリシーとして1を設定します。またTCP MSSの調整機能をオートに設定します。
9. <IPsec トンネルポリシー設定>
NXR_B(config-ipsec-tunnel)#description NXR_A
NXR_B(config-ipsec-tunnel)#negotiation-mode auto
IPsecトンネルポリシー1の説明としてNXR_A、ネゴシエーションモードとしてautoを設定します。
NXR_B(config-ipsec-tunnel)#set pfs group5
NXR_B(config-ipsec-tunnel)#set sa lifetime 3600
暗号化アルゴリズムとしてaes128、認証アルゴリズムとしてsha256、PFSを有効にし、かつDHグループとしてgroup5、IPsec SAのライフタイムとして3600秒を設定します。
NXR_B(config-ipsec-tunnel)#match address ipsec_acl
ISAKMPポリシー1と関連づけを行い、IPsecアクセスリストipsec_aclを設定します。
10. <PPPアカウント設定>
ppp0インタフェースで使用するモバイル接続用ユーザID,パスワードを設定します。
(☞) ここで設定したアカウントはppp0インタフェースの設定で指定します。
11. <WAN側(ppp0)インタフェース設定>
NXR_B(config-ppp)#ip address negotiated
ppp0インタフェースのIPアドレスは動的のため、negotiatedを設定します。
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
IPマスカレード、ステートフルパケットインスペクションを有効にします。またIPアクセスリストppp0_inをinフィルタに適用します。そしてTCP MSSの調整機能をオートに設定します。
NXR_B(config-ppp)#mobile apn [APN] cid [CID] pdp-type ip
モバイル接続用ユーザIDを設定します。またAPN,CID,PDPタイプを設定します。
NXR_B(config-ppp)#dial-up timeout 30
発信用の電話番号およびダイアルタイムアウトを設定します。
(☞) ここで設定する電話番号はSIMカードの電話番号ではありません。
IPsecトンネルのエンドポイントとなるためIPsecローカルポリシー1を設定します。
12. <モバイルエラーリカバリー設定>
通信モジュールとの通信に重大な問題が発生する可能性が高いと判断した場合、通信モジュールのリセットを行うように設定します。
13. <モバイルターミネーションリカバリー設定>
PPP接続時に網側から切断された場合、通信モジュールのリセットを行うように設定します。
14. <モバイル割り当て設定>
mobile1(内蔵通信モジュール)とppp0インタフェースの関連づけを行います。
通信モジュールをPPPインタフェースで使用する場合は、mobileコマンドによるPPPインタフェースへの関連付けが必要になります。
15. <モバイルキャリア設定>
mobile1(内蔵通信モジュール)のキャリアを設定します。
(☞) キャリア設定は「clear mobile 1」コマンドによるモバイルリセットを行うことで反映されます。
(☞) モバイルキャリア設定はマルチキャリア対応機種NXR-G240/L,NXR-G260/L,NXR-G100/Lで設定することができます。
16. <WarpLink設定>
NXR_B(config-warplink)#service enable
NXR_B(config-warplink)#account username [WarpLink用ユーザID] password [WarpLink用パスワード]
WarpLinkサービスを有効にします。またWarpLinkサービスで使用するユーザID,パスワードを設定します。
17. <DNS設定>
NXR_B(config-dns)#service enable
DNSサービスを有効にします。
【 端末の設定例 】
192.168.10.0/24 | 192.168.20.0/24 | |
IPアドレス | 192.168.10.100 | 192.168.20.100 |
サブネットマスク | 255.255.255.0 | |
デフォルトゲートウェイ | 192.168.10.1 | 192.168.20.1 |
DNSサーバアドレス |
【 付録 】
目次
- 1. Route Based IPsec設定
- Route Based IPsec設定一覧
- 1-1. 固定IPアドレスでの接続設定(Main Modeの利用)
- 1-2. 動的IPアドレスでの接続設定(AggressiveModeの利用)
- 1-3. RSA公開鍵暗号方式での接続設定
- 1-4. X.509(デジタル署名認証)方式での接続設定
- 1-5. PPPoEを利用したIPsec接続設定
- 1-6. センタ経由拠点間通信設定
- 1-7. IPsec NATトラバーサル接続設定
- 1-8. FQDNでのIPsec接続設定
- 1-9. トンネルインタフェースでのNAT設定
- 1-10. IPsec+OSPF設定
- 1-11. IPsec+PBR設定
- 1-12. ネットイベント機能でIPsecトンネルを監視
- 2. Policy Based IPsec設定
- 3. リモートアクセスVPN設定
- 4. Virtual Private Cloud(VPC)設定
- 5. 冗長化設定
- 6. IKEv2設定
更新情報
→ 一覧へカテゴリ
タグ
- CRG
- DDNS
- DHCP
- DNAT
- DNSインターセプト
- Ethernet
- IIJモバイル
- IKE Modeconfig
- IKEv2 Configuration Payload
- IPinIP
- IPoE
- IPv6
- KDDI
- L2TP/IPsec
- L2TPv3
- MAP-E
- NGN
- NTTドコモ
- PBR
- Policy Based IPsec
- PPP
- PPPoE
- QoS
- RADIUS連携
- RAシリーズ
- Route Based IPsec
- SMS
- SNAT
- SoftBank
- UPnP
- URL転送
- VLAN
- VRRP
- Web認証
- WiMAX
- コンフィグロールバック
- ネットイベント
- ファームウェア
- フィルタ
- ブリッジ
- モニタログ
- ワイモバイル
- 仮想スイッチ
- 冗長化
- 無線LAN