FutureNet
NXR,WXRシリーズ
IPsec編
1. Route Based IPsec設定
1-9. トンネルインタフェースでのNAT設定
WAN回線にPPPoEを使用したハブ&スポーク構成のIPsec接続設定例でスポーク拠点のルータのトンネルインタフェースでNATを行います。ハブ拠点では各スポーク拠点を異なるネットワークアドレスで管理しますが、スポーク拠点のLAN側では同一のネットワークアドレスを使用します。
コンテンツ | |||||
構成図 | 設定フロー | 設定例 | 設定例解説 | 端末の設定例 | 付録 |
【 構成図 】
- NXR_B,NXR_CのトンネルインタフェースでDNATおよびSNATを設定します。またネットワーク単位でNATするためスタティックNATを使用します。
(☞) スタティックNATはネットワーク単位の1対1NATを行う機能です。
【 設定フロー 】
〔NXR_Aの設定フロー〕
〔NXR_B,Cの設定フロー〕
【 設定例 】
〔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.110.0/24 tunnel 1 1
NXR_A(config)#ip route 192.168.110.0/24 null 254
NXR_A(config)#ip route 192.168.120.0/24 tunnel 2 1
NXR_A(config)#ip route 192.168.120.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 192.0.2.1 udp 500 500
NXR_A(config)#ip access-list ppp0_in permit any 192.0.2.1 50
NXR_A(config)#ipsec priority-ignore enable
% restart ipsec service to take affect.
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)#exit
NXR_A(config)#ipsec isakmp policy 1
NXR_A(config-ipsec-isakmp)#description NXR_B
NXR_A(config-ipsec-isakmp)#authentication pre-share ipseckey1
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 main
NXR_A(config-ipsec-isakmp)#remote address ip 192.0.2.2
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)#ipsec isakmp policy 2
NXR_A(config-ipsec-isakmp)#description NXR_C
NXR_A(config-ipsec-isakmp)#authentication pre-share ipseckey2
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 any
NXR_A(config-ipsec-isakmp)#remote identity fqdn nxrc
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 2
NXR_A(config-tunnel)#tunnel mode ipsec ipv4
NXR_A(config-tunnel)#tunnel protection ipsec policy 2
NXR_A(config-tunnel)#ip tcp adjust-mss auto
NXR_A(config-tunnel)#exit
NXR_A(config)#ipsec tunnel policy 2
NXR_A(config-ipsec-tunnel)#description NXR_C
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 3600
NXR_A(config-ipsec-tunnel)#set key-exchange isakmp 2
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 192.0.2.1/32
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)#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.
nxrg240(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 dnat tunnel1_dnat ip any 192.168.110.0/24 static 192.168.20.0/24
NXR_B(config)#ip snat tunnel1_snat ip 192.168.20.0/24 any static 192.168.110.0/24
NXR_B(config)#ip access-list ppp0_in permit 192.0.2.1 192.0.2.2 udp 500 500
NXR_B(config)#ip access-list ppp0_in permit 192.0.2.1 192.0.2.2 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)#exit
NXR_B(config)#ipsec isakmp policy 1
NXR_B(config-ipsec-isakmp)#description NXR_A
NXR_B(config-ipsec-isakmp)#authentication pre-share ipseckey1
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 main
NXR_B(config-ipsec-isakmp)#remote address ip 192.0.2.1
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)#ip dnat-group tunnel1_dnat
NXR_B(config-tunnel)#ip snat-group tunnel1_snat
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 test2@example.jp password test2pass
NXR_B(config)#interface ppp 0
NXR_B(config-ppp)#ip address 192.0.2.2/32
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 test2@example.jp
NXR_B(config-ppp)#ipsec policy 1
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)#dns
NXR_B(config-dns)#service enable
NXR_B(config-dns)#exit
NXR_B(config)#fast-forwarding enable
NXR_B(config)#exit
NXR_B#save config
〔NXR_Cの設定〕
Enter configuration commands, one per line. End with CNTL/Z.
nxrg100(config)#hostname NXR_C
NXR_C(config)#interface ethernet 0
NXR_C(config-if)#ip address 192.168.20.1/24
NXR_C(config-if)#exit
NXR_C(config)#ip route 192.168.10.0/24 tunnel 1 1
NXR_C(config)#ip route 192.168.10.0/24 null 254
NXR_C(config)#ip route 0.0.0.0/0 ppp 0
NXR_C(config)#ip dnat tunnel1_dnat ip any 192.168.120.0/24 static 192.168.20.0/24
NXR_C(config)#ip snat tunnel1_snat ip 192.168.20.0/24 any static 192.168.120.0/24
NXR_C(config)#ip access-list ppp0_in permit 192.0.2.1 any udp 500 500
NXR_C(config)#ip access-list ppp0_in permit 192.0.2.1 any 50
NXR_C(config)#ipsec access-list ipsec_acl ip any any
NXR_C(config)#ipsec local policy 1
NXR_C(config-ipsec-local)#address ip
NXR_C(config-ipsec-local)#self-identity fqdn nxrc
NXR_C(config-ipsec-local)#exit
NXR_C(config)#ipsec isakmp policy 1
NXR_C(config-ipsec-isakmp)#description NXR_A
NXR_C(config-ipsec-isakmp)#authentication pre-share ipseckey2
NXR_C(config-ipsec-isakmp)#hash sha256
NXR_C(config-ipsec-isakmp)#encryption aes128
NXR_C(config-ipsec-isakmp)#group 5
NXR_C(config-ipsec-isakmp)#lifetime 10800
NXR_C(config-ipsec-isakmp)#isakmp-mode aggressive
NXR_C(config-ipsec-isakmp)#remote address ip 192.0.2.1
NXR_C(config-ipsec-isakmp)#keepalive 30 3 periodic restart
NXR_C(config-ipsec-isakmp)#local policy 1
NXR_C(config-ipsec-isakmp)#exit
NXR_C(config)#interface tunnel 1
NXR_C(config-tunnel)#tunnel mode ipsec ipv4
NXR_C(config-tunnel)#tunnel protection ipsec policy 1
NXR_C(config-tunnel)#ip tcp adjust-mss auto
NXR_C(config-tunnel)#ip dnat-group tunnel1_dnat
NXR_C(config-tunnel)#ip snat-group tunnel1_snat
NXR_C(config-tunnel)#exit
NXR_C(config)#ipsec tunnel policy 1
NXR_C(config-ipsec-tunnel)#description NXR_A
NXR_C(config-ipsec-tunnel)#negotiation-mode auto
NXR_C(config-ipsec-tunnel)#set transform esp-aes128 esp-sha256-hmac
NXR_C(config-ipsec-tunnel)#set pfs group5
NXR_C(config-ipsec-tunnel)#set sa lifetime 3600
NXR_C(config-ipsec-tunnel)#set key-exchange isakmp 1
NXR_C(config-ipsec-tunnel)#match address ipsec_acl
NXR_C(config-ipsec-tunnel)#exit
NXR_C(config)#ppp account username test3@example.jp password test3pass
NXR_C(config)#interface ppp 0
NXR_C(config-ppp)#ip address negotiated
NXR_C(config-ppp)#ip masquerade
NXR_C(config-ppp)#ip spi-filter
NXR_C(config-ppp)#ip access-group in ppp0_in
NXR_C(config-ppp)#ip tcp adjust-mss auto
NXR_C(config-ppp)#ppp username test3@example.jp
NXR_C(config-ppp)#ipsec policy 1
NXR_C(config-ppp)#exit
NXR_C(config)#interface ethernet 1
NXR_C(config-if)#no ip address
NXR_C(config-if)#pppoe-client ppp 0
NXR_C(config-if)#exit
NXR_C(config)#dns
NXR_C(config-dns)#service enable
NXR_C(config-dns)#exit
NXR_C(config)#fast-forwarding enable
NXR_C(config)#exit
NXR_C#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.110.0/24 null 254
192.168.110.0/24向けのルートを設定します。なおIPsec SA確立時はトンネル1インタフェースを、未確立時はnullインタフェースのルートを利用するように設定します。
NXR_A(config)#ip route 192.168.120.0/24 null 254
192.168.120.0/24向けのルートを設定します。なおIPsec SA確立時はトンネル2インタフェースを、未確立時はnullインタフェースのルートを利用するように設定します。
デフォルトルートを設定します。
4. <IPアクセスリスト設定>
NXR_A(config)#ip access-list ppp0_in permit any 192.0.2.1 50
IPアクセスリスト名をppp0_inとします。そして宛先IPアドレス192.0.2.1のIKE(UDPポート500番)、ESP(プロトコル番号50)のパケットを許可します。
(☞) IPアクセスリストを設定しただけではフィルタとして有効にはなりません。フィルタリングを行うインタフェースでの登録が必要になります。
5. <IPsec priority-ignore設定>
ipsec priority-ignoreを有効に設定します。
これはプライオリティによるIPsec SAの優先度を無効にする設定です。
Route based IPsecではフェーズ2のIDをIPsec SAを確立するためのIDとしてのみ使用します。そのためプライオリティによる冗長化設定などを利用しない場合は、本設定を有効にすることによって同じフェーズ2のIDを持つIPsec SAを複数個同時に確立することができます。
(☞) この機能に対応していないファームウェアをご利用頂いている場合は、同じフェーズ2のIDを持つIPsec SAを同時に複数個確立することができません。そのため設定例のように同一のIPsecアクセスリストを複数のIPsecトンネルポリシーに適用した場合IPsec SAを複数同時に確立することができませんので、各IPsecトンネルポリシー毎に異なるルールのIPsecアクセスリストを設定する必要があります。
6. <IPsecアクセスリスト設定>
ipsec_aclという名前のIPsecアクセスリストを設定します。なお送信元IPアドレス,宛先IPアドレスともにanyとします。
7. <IPsecローカルポリシー設定>
NXR_A(config-ipsec-local)#address ip
IPsecトンネルの送信元IPアドレスにip(IPv4)を設定します。
8. <IPsec ISAKMPポリシー1設定>
NXR_A(config-ipsec-isakmp)#description NXR_B
NXR_A(config-ipsec-isakmp)#authentication pre-share ipseckey1
ISAKMPポリシー1の説明としてNXR_B、認証方式としてpre-share(事前共有鍵)を選択し、事前共有鍵ipseckey1を設定します。なお事前共有鍵は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 main
認証アルゴリズムとしてsha256、暗号化アルゴリズムとしてaes128,Diffie-Hellman(DH)グループとしてgroup 5、ISAKMP SAのライフタイムとして10800秒、フェーズ1のネゴシエーションモードとしてメインモードを設定します。
NXR_A(config-ipsec-isakmp)#keepalive 30 3 periodic restart
NXR_A(config-ipsec-isakmp)#local policy 1
リモートアドレスにNXR_BのWAN側IPアドレスを設定します。またIKE KeepAlive(DPD)を監視間隔30秒,リトライ回数3回とし、keepalive失敗時にSAを削除しIKEのネゴシエーションを開始するように設定します。そしてIPsecローカルポリシー1と関連づけを行います。
9. <トンネル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の調整機能をオートに設定します。
10. <IPsec トンネルポリシー1設定>
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を設定します。
11. <IPsec ISAKMPポリシー2設定>
NXR_A(config-ipsec-isakmp)#description NXR_C
NXR_A(config-ipsec-isakmp)#authentication pre-share ipseckey2
ISAKMPポリシー2の説明としてNXR_C、認証方式としてpre-share(事前共有鍵)を選択し、事前共有鍵ipseckey2を設定します。なお事前共有鍵はNXR_Cの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 nxrc
NXR_A(config-ipsec-isakmp)#keepalive 30 3 periodic clear
NXR_A(config-ipsec-isakmp)#local policy 1
リモートアドレスにanyを設定します。またリモートIDをFQDN方式でnxrcとし、NXR_CのセルフIDと同じIDを設定します。そしてIKE KeepAlive(DPD)を監視間隔30秒,リトライ回数3回とし、keepalive失敗時にSAを削除するように設定します。さらにIPsecローカルポリシー1と関連づけを行います。
12. <トンネル2インタフェース設定>
NXR_A(config-tunnel)#tunnel mode ipsec ipv4
NXR_A(config-tunnel)#tunnel protection ipsec policy 2
NXR_A(config-tunnel)#ip tcp adjust-mss auto
トンネル2インタフェースでトンネルモードをipsec ipv4、使用するIPsecトンネルポリシーとして2を設定します。またTCP MSSの調整機能をオートに設定します。
13. <IPsec トンネルポリシー2設定>
NXR_A(config-ipsec-tunnel)#description NXR_C
NXR_A(config-ipsec-tunnel)#negotiation-mode responder
IPsecトンネルポリシー2の説明としてNXR_C、ネゴシエーションモードとしてresponderを設定します。
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ポリシー2と関連づけを行い、IPsecアクセスリストipsec_aclを設定します。
14. <PPPアカウント設定>
ppp0インタフェースで使用するISP接続用ユーザID,パスワードを設定します。
(☞) ここで設定したアカウントはppp0インタフェースの設定で利用します。
15. <WAN側(ppp0)インタフェース設定>
NXR_A(config-ppp)#ip address 192.0.2.1/32
ppp0インタフェースのIPアドレスを設定します。
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を設定します。
16. <ethernet1インタフェース設定>
NXR_A(config-if)#no ip address
NXR_A(config-if)#pppoe-client ppp 0
PPPoEクライアントを設定します。また使用するPPPインタフェースとしてppp0を指定します。
17. <DNS設定>
NXR_A(config-dns)#service enable
DNSサービスを有効にします。
18. <ファストフォワーディング設定>
ファストフォワーディングを有効にします。ファストフォワーディングを有効にすることでパケット転送を高速に処理することができます。
(☞) ファストフォワーディングの詳細および利用時の制約については、各シリーズのユーザーズガイド(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. <DNAT設定>
DNAT名をtunnel1_dnatとします。そして宛先IPアドレス192.168.110.0/24のパケットの宛先IPアドレスを192.168.20.0/24に変換します。
(☞) スタティックNATの場合、ネットワーク単位で設定します。
5. <SNAT設定>
SNAT名をtunnel1_snatとします。そして送信元IPアドレス192.168.20.0/24のパケットの送信元IPアドレスを192.168.110.0/24に変換します。
(☞) スタティックNATの場合、ネットワーク単位で設定します。
6. <IPアクセスリスト設定>
NXR_B(config)#ip access-list ppp0_in permit 192.0.2.1 192.0.2.2 50
IPアクセスリスト名をppp0_inとします。そして送信元IPアドレス192.0.2.1,宛先IPアドレス192.0.2.2のIKE(UDPポート500番)、ESP(プロトコル番号50)のパケットを許可します。
7. <IPsecアクセスリスト設定>
ipsec_aclという名前のIPsecアクセスリストを設定します。なお送信元IPアドレス,宛先IPアドレスともにanyとします。
8. <IPsecローカルポリシー設定>
NXR_B(config-ipsec-local)#address ip
IPsecトンネルの送信元IPアドレスにip(IPv4)を設定します。
9. <IPsec ISAKMPポリシー設定>
NXR_B(config-ipsec-isakmp)#description NXR_A
NXR_B(config-ipsec-isakmp)#authentication pre-share ipseckey1
ISAKMPポリシー1の説明としてNXR_A、認証方式としてpre-share(事前共有鍵)を選択し、事前共有鍵ipseckey1を設定します。なお事前共有鍵は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 main
認証アルゴリズムとしてsha256、暗号化アルゴリズムとしてaes128,Diffie-Hellman(DH)グループとしてgroup 5、ISAKMP SAのライフタイムとして10800秒、フェーズ1のネゴシエーションモードとしてメインモードを設定します。
NXR_B(config-ipsec-isakmp)#keepalive 30 3 periodic restart
NXR_B(config-ipsec-isakmp)#local policy 1
リモートアドレスにNXR_AのWAN側IPアドレスを設定します。またIKE KeepAlive(DPD)を監視間隔30秒,リトライ回数3回とし、keepalive失敗時にSAを削除しIKEのネゴシエーションを開始するように設定します。そしてIPsecローカルポリシー1と関連づけを行います。
10. <トンネル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の調整機能をオートに設定します。
NXR_B(config-tunnel)#ip snat-group tunnel1_snat
tunnel1_dnatをDNATグループに、tunnel1_snatをSNATグループに適用します。
11. <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を設定します。
12. <PPPアカウント設定>
ppp0インタフェースで使用するISP接続用ユーザID,パスワードを設定します。
(☞) ここで設定したアカウントはppp0インタフェースの設定で利用します。
13. <WAN側(ppp0)インタフェース設定>
NXR_B(config-ppp)#ip address 192.0.2.2/32
ppp0インタフェースのIPアドレスを設定します。
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)#ipsec policy 1
ISP接続用ユーザIDを設定します。またIPsecトンネルのエンドポイントとなるためIPsecローカルポリシー1を設定します。
14. <ethernet1インタフェース設定>
NXR_B(config-if)#no ip address
NXR_B(config-if)#pppoe-client ppp 0
PPPoEクライアントを設定します。また使用するPPPインタフェースとしてppp0を指定します。
15. <DNS設定>
NXR_B(config-dns)#service enable
DNSサービスを有効にします。
16. <ファストフォワーディング設定>
ファストフォワーディングを有効にします。
〔NXR_Cの設定〕
1. <ホスト名の設定>
ホスト名を設定します。
2. <LAN側(ethernet0)インタフェース設定>
NXR_C(config-if)#ip address 192.168.20.1/24
ethernet0インタフェースのIPアドレスを設定します。
3. <スタティックルート設定>
NXR_C(config)#ip route 192.168.10.0/24 null 254
192.168.10.0/24向けのルートを設定します。なおIPsec SA確立時はトンネル1インタフェースを、未確立時はnullインタフェースのルートを利用するように設定します。
デフォルトルートを設定します。
4. <DNAT設定>
DNAT名をtunnel1_dnatとします。そして宛先IPアドレス192.168.120.0/24のパケットの宛先IPアドレスを192.168.20.0/24に変換します。
5. <SNAT設定>
SNAT名をtunnel1_snatとします。そして送信元IPアドレス192.168.20.0/24のパケットの送信元IPアドレスを192.168.120.0/24に変換します。
6. <IPアクセスリスト設定>
NXR_C(config)#ip access-list ppp0_in permit 192.0.2.1 any 50
IPアクセスリスト名をppp0_inとします。そして送信元IPアドレス192.0.2.1のIKE(UDPポート500番)、ESP(プロトコル番号50)のパケットを許可します。
7. <IPsecアクセスリスト設定>
ipsec_aclという名前のIPsecアクセスリストを設定します。なお送信元IPアドレス,宛先IPアドレスともにanyとします。
8. <IPsecローカルポリシー設定>
NXR_C(config-ipsec-local)#address ip
NXR_C(config-ipsec-local)#self-identity fqdn nxrc
IPsecトンネルの送信元IPアドレスにip(IPv4)を設定します。またセルフIDをFQDN方式でnxrcとし、NXR_AのIPsec ISAKMPポリシー2のリモートIDと同じIDを設定します。
9. <IPsec ISAKMPポリシー設定>
NXR_C(config-ipsec-isakmp)#description NXR_A
NXR_C(config-ipsec-isakmp)#authentication pre-share ipseckey2
ISAKMPポリシー1の説明としてNXR_A、認証方式としてpre-share(事前共有鍵)を選択し、事前共有鍵ipseckey2を設定します。なお事前共有鍵はNXR_Aのipsec isakmp policy 2と共通の値を設定します。
NXR_C(config-ipsec-isakmp)#encryption aes128
NXR_C(config-ipsec-isakmp)#group 5
NXR_C(config-ipsec-isakmp)#lifetime 10800
NXR_C(config-ipsec-isakmp)#isakmp-mode aggressive
認証アルゴリズムとしてsha256、暗号化アルゴリズムとしてaes128,Diffie-Hellman(DH)グループとしてgroup 5、ISAKMP SAのライフタイムとして10800秒、フェーズ1のネゴシエーションモードとしてアグレッシブモードを設定します。
NXR_C(config-ipsec-isakmp)#keepalive 30 3 periodic restart
NXR_C(config-ipsec-isakmp)#local policy 1
リモートアドレスにNXR_AのWAN側IPアドレスを設定します。またIKE KeepAlive(DPD)を監視間隔30秒,リトライ回数3回とし、keepalive失敗時にSAを削除しIKEのネゴシエーションを開始するように設定します。そしてIPsecローカルポリシー1と関連づけを行います。
10. <トンネル1インタフェース設定>
NXR_C(config-tunnel)#tunnel mode ipsec ipv4
NXR_C(config-tunnel)#tunnel protection ipsec policy 1
NXR_C(config-tunnel)#ip tcp adjust-mss auto
トンネル1インタフェースでトンネルモードをipsec ipv4、使用するIPsecトンネルポリシーとして1を設定します。またTCP MSSの調整機能をオートに設定します。
NXR_C(config-tunnel)#ip snat-group tunnel1_snat
tunnel1_dnatをDNATグループに、tunnel1_snatをSNATグループに適用します。
11. <IPsec トンネルポリシー設定>
NXR_C(config-ipsec-tunnel)#description NXR_A
NXR_C(config-ipsec-tunnel)#negotiation-mode auto
IPsecトンネルポリシー1の説明としてNXR_A、ネゴシエーションモードとしてautoを設定します。
NXR_C(config-ipsec-tunnel)#set pfs group5
NXR_C(config-ipsec-tunnel)#set sa lifetime 3600
暗号化アルゴリズムとしてaes128、認証アルゴリズムとしてsha256、PFSを有効にし、かつDHグループとしてgroup5、IPsec SAのライフタイムとして3600秒を設定します。
NXR_C(config-ipsec-tunnel)#match address ipsec_acl
ISAKMPポリシー1と関連づけを行い、IPsecアクセスリストipsec_aclを設定します。
12. <PPPアカウント設定>
ppp0インタフェースで使用するISP接続用ユーザID,パスワードを設定します。
(☞) ここで設定したアカウントはppp0インタフェースの設定で利用します。
13. <WAN側(ppp0)インタフェース設定>
NXR_C(config-ppp)#ip address negotiated
ppp0インタフェースのIPアドレスが動的の場合、negotiatedを設定します。
NXR_C(config-ppp)#ip spi-filter
NXR_C(config-ppp)#ip access-group in ppp0_in
NXR_C(config-ppp)#ip tcp adjust-mss auto
IPマスカレード、ステートフルパケットインスペクションを有効にします。またIPアクセスリストppp0_inをinフィルタに適用します。そしてTCP MSSの調整機能をオートに設定します。
NXR_C(config-ppp)#ipsec policy 1
ISP接続用ユーザIDを設定します。またIPsecトンネルのエンドポイントとなるためIPsecローカルポリシー1を設定します。
14. <ethernet1インタフェース設定>
NXR_C(config-if)#no ip address
NXR_C(config-if)#pppoe-client ppp 0
PPPoEクライアントを設定します。また使用するPPPインタフェースとしてppp0を指定します。
15. <DNS設定>
NXR_C(config-dns)#service enable
DNSサービスを有効にします。
16. <ファストフォワーディング設定>
ファストフォワーディングを有効にします。
【 端末の設定例 】
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