YAMAHAルーターRTX1300とフレッツ光クロス回線で現場と本社をVPN接続する
フレッツ光クロス(NGN網)について
VPN接続を構築
本社側ルーター設定(RTX1300#2)
IPv4とIPv6のルーティング設定
ip routing onip route default gateway tunnel 2ip route 192.168.10.0/24 gateway tunnel 1ipv6 routing onipv6 route default gateway dhcp lan2ipv6 prefix 1 dhcp-prefix@lan2::/64
ip route default gateway tunnel 2
これでIPv4のデフォルトゲートウェイをtunnel 2にむけておきます。(後述しますが、tunnel2をISPへの設定に使います)
一方支社・現場側のネットワークへは
ip route 192.168.10.0/24 gateway tunnel 1
でtunnel 1側にルーティングさせます。
ipv6はNGN網(LAN2)からDHCPでデフォルトゲートウェイのv6アドレスを取得するための設定になっています。
lan3のルーティングポイントの設定
ゲートウェイアドレス(192.168.0.254)を設定します。
ip lan3 address 192.168.0.254/24
ip lan3 rip send off
lan2のipv6設定
DHCPクライアントの設定
ipv6 lan2 address dhcp
ipv6 lan2 dhcp service client
ngn type lan2 ntt
lan2 フィルター設定
ipv6 lan2 secure filter in 1010 1011 1012 1013 1040 1041 1042
ipv6 lan2 secure filter out 3000 dynamic 100 101 102 103 104 105 118 119
ipv6 filter 1010 pass * * icmp6 * *ipv6 filter 1011 pass * * tcp * identipv6 filter 1012 pass * * udp * 546ipv6 filter 1013 pass * * 4ipv6 filter 1040 pass * * udp * 500ipv6 filter 1041 pass * * ah,espipv6 filter 1042 pass * * udp 500 *ipv6 filter dynamic 100 * * ftpipv6 filter dynamic 101 * * domainipv6 filter dynamic 102 * * wwwipv6 filter dynamic 103 * * smtpipv6 filter dynamic 104 * * pop3ipv6 filter dynamic 105 * * submissionipv6 filter dynamic 118 * * tcpipv6 filter dynamic 119 * * udp
例ではout側の通信118,119でTCP・UDPすべてオープンにしてしまっていますが、このあたりは適宜セキュリティでポートを閉じてもらえればと思います。
tunnel 1 IPsecの設定
tunnel select 1ipsec tunnel 101ipsec sa policy 101 1 esp aes256-cbc sha256-hmacipsec ike version 1 2ipsec ike keepalive log 1 onipsec ike keepalive use 1 auto rfc4306 10 6 0ipsec ike local address 1 [RTX1300#2のIPv6アドレス]ipsec ike local name 1 [RTX1300#2のIPv6アドレス] ipv6-addripsec ike pre-shared-key 1 text [#1と#2で共通の文字:暗号化のパスワード]ipsec ike remote address 1 [RTX1300#1のIPv6アドレス]ipsec ike remote name 1 [RTX1300#1のIPv6アドレス] ipv6-addrip tunnel tcp mss limit autotunnel enable 1
ちなみに自分のIPv6アドレスを確認するには
show ipv6 address
tunnel 2 プロバイダ接続設定
tunnel select 2tunnel encapsulation map-eip tunnel mtu 1460ip tunnel nat descriptor 20000tunnel enable 2
NATとIPsecの有効化
nat descriptor type 20000 masqueradenat descriptor address outer 20000 map-eipsec use onipsec auto refresh on
上のnat descriptor 20000とリンクしています。
またIPsecが切れたときに再接続するようにauto refreshもするようにしています。
dnsサーバー設定
dns host lan3dns service recursivedns service fallback ondns server dhcp lan2dns server select 500000 dhcp lan2 any .dns private address spoof on
lan3内の端末からみるとこのRTXルーターがDNSのホストになりますが、そのままlan2側のDNSサーバーに問い合わせをしにいっています。
これによって192.168.0.0/24の端末のDNSサーバーはこのRTX1300(192.168.0.254)を指定してあげることができます。
支社・現場側ルーター設定(RTX1300#1)
IPv4とIPv6のルーティング設定
ip routing onip route default gateway tunnel 2ip route 192.168.0.0/24 gateway tunnel 1ipv6 routing onipv6 route default gateway dhcp lan2ipv6 prefix 1 dhcp-prefix@lan2::/64
v4のルーティングしたいネットワークアドレスを変更しました。
lan3のルーティングポイントの設定
ゲートウェイアドレス(192.168.10.254)を設定します。
ip lan3 address 192.168.10.254/24
ip lan3 rip send off
lan2のipv6設定
DHCPクライアントの設定
ipv6 lan2 address dhcp
ipv6 lan2 dhcp service client
ngn type lan2 ntt
lan2 フィルター設定
ipv6 lan2 secure filter in 1010 1011 1012 1013 1040 1041 1042
ipv6 lan2 secure filter out 3000 dynamic 100 101 102 103 104 105 118 119
ipv6 filter 1010 pass * * icmp6 * *ipv6 filter 1011 pass * * tcp * identipv6 filter 1012 pass * * udp * 546ipv6 filter 1013 pass * * 4ipv6 filter 1040 pass * * udp * 500ipv6 filter 1041 pass * * ah,espipv6 filter 1042 pass * * udp 500 *ipv6 filter dynamic 100 * * ftpipv6 filter dynamic 101 * * domainipv6 filter dynamic 102 * * wwwipv6 filter dynamic 103 * * smtpipv6 filter dynamic 104 * * pop3ipv6 filter dynamic 105 * * submissionipv6 filter dynamic 118 * * tcpipv6 filter dynamic 119 * * udp
tunnel 1 IPsecの設定
tunnel select 1ipsec tunnel 101ipsec sa policy 101 1 esp aes256-cbc sha256-hmacipsec ike version 1 2ipsec ike keepalive log 1 onipsec ike keepalive use 1 auto rfc4306 10 6 0ipsec ike local address 1 [RTX1300#1のIPv6アドレス]ipsec ike local name 1 [RTX1300#1のIPv6アドレス] ipv6-addripsec ike pre-shared-key 1 text [#2で指定したものと同じ文字列:暗号化のパスワード]ipsec ike remote address 1 [RTX1300#2のIPv6アドレス]ipsec ike remote name 1 [RTX1300#2のIPv6アドレス] ipv6-addrip tunnel tcp mss limit autotunnel enable 1
tunnel 2 プロバイダ接続設定
tunnel select 2tunnel encapsulation map-eip tunnel mtu 1460ip tunnel nat descriptor 20000tunnel enable 2
NATとIPsecの有効化
nat descriptor type 20000 masqueradenat descriptor address outer 20000 map-eipsec use onipsec auto refresh on
dnsサーバー設定
dns host lan3dns service recursivedns service fallback ondns server dhcp lan2dns server select 500000 dhcp lan2 any .dns private address spoof on
通信の検証
IPsecが確立されているかどうか確認
# show ipsec sa
Total: isakmp:1 send:1 recv:1
sa sgw isakmp connection dir life[s] remote-id
----------------------------------------------------------------------------
1 1 - ike - 28768 [IPv6アドレス] 2 1 1 tun[0001]esp send 28768 [IPv6アドレス]
3 1 1 tun[0001]esp recv 28768 [IPv6アドレス]
RTXのパフォーマンス確認
# show environment detail
~~~~~ 省略 ~~~~~~~~
CPU: 5%(5sec) 3%(1min) 4%(5min) メモリ: 29% used
CPU0: 9%(5sec) 2%(1min) 6%(5min)
CPU1: 0%(5sec) 0%(1min) 0%(5min)
CPU2: 8%(5sec) 8%(1min) 9%(5min)
CPU3: 6%(5sec) 5%(1min) 7%(5min)
パケットバッファ: 0%(small) 0%(middle) 0%(large) 0%(jumbo) 0%(huge) used
IPsecの通信が通信網よりもRTXのパフォーマンスに引っ張られて通信速度が出ない過去実績があり。
そのためCPUが100%近くになっていないか確認しました。
(*注釈 ver23.00.05以降ではdetailなしですべてのCPU使用率が表示されるようになった)