NEC IX2015 からの EtherIP を用いた接続方法
EtherIP というプロトコルに対応しているルータは、IPsec で暗号化したトンネルを PacketiX VPN Server
との間で構築することにより、VPN Server に接続することができます。
ソフトイーサ株式会社で検証した
NEC UNIVERGE IX2015 という NEC 製の VPN ルータを PacketiX VPN Server
に接続する方法について解説します。
なお、これ以外のルータからの接続も可能であると思われます。

EtherIP に対応したルータからの拠点間接続 NEC UNIVERGE IX2015 とは
NEC UNIVERGE シリーズは、EtherIP という Ethernet を IP にカプセル化する VPN
通信方式に対応したルータ製品です。NEC
UNIVERGE IX2015 は、以前日本郵政公社で各地の郵便局と本部との間でフレッツ網を用いた VPN
を構築するために大量に導入され、それが中古となって Yahoo!
オークション等の市場で安価に調達することができるようになっている高性能のルータです。

写真提供: tomocha
事前設定
IX2015 の設定を行う前に、まず、PacketiX VPN の IPsec 機能の設定を行う必要があります。

上記の画面における「EtherIP over IPsec サーバー機能を有効にする」をチェックしてから、「EtherIP
機能の詳細設定」ボタンをクリックしてください。すると、以下のような画面が表示されます。

この画面では、EtherIP クライアント (ルータ等) が VPN Server に対して IPsec 接続を行おうとする際に提示される
ISAKMP (IKE) Phase 1 の ID 文字列と、接続先の仮想 HUB や仮想 HUB
内のユーザーの設定との関連付けを事前に登録しておくことができます。 もしこのような事前の関連付けがなければ、複数台の EtherIP
対応ルータを 1 台の VPN Server に IPsec 経由で接続しようとした場合に、どの EtherIP ルータがどの仮想 HUB
に接続するべきであるか、また、接続する際におけるユーザーオブジェクトはどれを使用するか、といったような事項が VPN Server
側から把握できないことになります。 そのため、EtherIP プロトコルによって VPN Server に IPsec で接続する際には、IPsec
の鍵交換プロトコル (ISAKMP / IKEv1) の Phase 1 の ID 交換の際にルータ側から提示される ID をもとに、どの仮想
HUB にどのユーザーとしてブリッジ接続を行うのかを定義しておかなければなりません。
たとえば、ここでは上記の画面のように「IX2015-A」という ID が提示された IX2015 からの EtherIP 接続を、仮想 HUB
「DEFAULT」におけるユーザー「ix2015」として接続させる設定を行った状態であると仮定して、以下の説明を行います。
(ユーザー「ix2015」は仮想 HUB 「DEFAULT」に予め登録しておく必要があります。)
なお、IPsec Phase 1 ID として「*」 (アスタリスク) を指定することも可能です。この場合は、他の定義の ID
に一致しないすべての VPN ルータからの接続を許可します。このため設定が容易になりますが、IPsec
の事前共有鍵を知っているすべてのユーザーからの接続を許可することになりますので注意が必要です。 IX2015 における設定情報例
以下のサンプルでは、IX2015 に下記のような設定を行うものと仮定します。 お客様の環境に合わせて、適宜読み替えてください。
- Ethernet ポートの用途
FastEthernet0/0.0: WAN 側
FastEthernet0/1.0: ブリッジ側
BVI1 (仮想インターフェイス): VPN 内で ping 監視等のために使用する仮想 I/F
(IP アドレス: 192.168.0.123/24 を付ける)
- 物理的な通信に必要な (インターネットに接続するための) グローバル IP アドレス
FastEthernet0/0.0 ポートの Ethernet セグメントから DHCP により自動取得
(FastEthernet0/0.0 ポートの先に NAT 兼 DHCP
が稼働しているブロードバンドルータがあり、そのルータを経由してインターネットに接続されていると仮定します。)
- 接続先である PacketiX VPN Server が動作している IP アドレス
1.2.3.4
- ISAKMP SA で使用する暗号化設定
3DES / SHA / DH Group 2 (1024 bit)
- IPsec SA で使用する暗号化設定
3DES / SHA
IX2015 のコンフィグレーション例
上記のような設定を実現するためには、拠点側に設置した IX2015 に以下のようなコンフィグレーションを設定してください。
enable-config
logging buffered
hostname ix2015
device FastEthernet0/0
no shutdown
exit
device FastEthernet0/1
no shutdown
exit
device FastEthernet1/0
no shutdown
exit
interface FastEthernet0/0.0
ip address dhcp receive-default
ipv6 enable
ipv6 address autoconfig receive-default
no shutdown
exit
interface FastEthernet0/1.0
no shutdown
exit
interface FastEthernet1/0.0
shutdown
exit
interface Loopback0.0
ip address 127.0.0.1/8
exit
dns ncache lifetime 1
telnet-server ip enable
telnet-server ipv6 enable
ip ufs-cache enable
ipv6 ufs-cache enable
ip access-list ACL_FOR_IPSEC permit ip src any dest any
ipsec ike-passthru
ipsec autokey-proposal IPSEC_PROPOSAL esp-3des esp-sha lifetime
time 3600
ipsec autokey-map IPSEC_STATIC_MAP ACL_FOR_IPSEC peer 1.2.3.4
IPSEC_PROPOSAL
ike nat-traversal policy IKE_POLICY keepalive 10
ike policy IKE_POLICY peer 1.2.3.4 key vpn mode aggressive
IKE_PROPOSAL
ike proposal IKE_PROPOSAL encryption 3des hash sha group
1024-bit lifetime 3600
ike local-id IKE_POLICY keyid IX2015-A
ike keepalive IKE_POLICY 10 2
bridge irb enable
interface FastEthernet0/1.0
bridge-group 1
exit
interface Tunnel0.0
bridge-group 1
tunnel mode ether-ip ipsec
ipsec policy tunnel IPSEC_STATIC_MAP out
no shutdown
exit
interface BVI1
bridge-group 1
ip address 192.168.0.123/24
no shutdown
exit
watch-group KEEPALIVE 10
event 10 ip unreach-host 192.168.0.1 BVI1 source BVI1
probe-timer restorer 5
probe-timer variance 5
exit
network-monitor KEEPALIVE enable |
上記のように設定すると、PacketiX VPN Server (IP アドレス: 1.2.3.4) との間で IPsec
トンネルを自動的に構築し (その際には IX2015-A という Phase 1 ID が使用されます)、そのトンネル内で EtherIP
パケットを送受信することにより VPN 通信が実現されます。 FastEthernet0/0.0 ポートを WAN 側
(インターネット側)、FastEthernet0/1.0 を VPN のブリッジ側 (VPN を利用する端末が接続されているスイッチ等)
に接続することにより、FastEthernet0/1.0 側のセグメントに接続したすべての PC は、Ethernet セグメント (L2)
として PacketiX VPN Server の仮想 HUB のセグメントと直結したことになり、任意の通信が可能になります。
コンフィグレーションの中の重要な点の解説
- ike (IPsec の ISAKMP / IKEv1 SA) を構築する際のローカル (クライアント) 側 ID として
「IX2015-A」という文字列を指定しています。これにより、接続先の VPN Server の IPsec 設定における「EtherIP
詳細設定」に登録された ID 情報の検索が行われ、接続先の仮想 HUB が決定されます。
- bridge-group を定義することにより、Tunnel0.0 という仮想インターフェイス (EtherIP で VPN
Server と常時接続されます) と FastEthernet0/1.0 との間が Ethernet ブリッジ接続されます。
- IX2015 では、クライアント (ルータ) の側から何らかの通信パケットが発生しないかぎり、VPN Server に対する
IPsec トンネルの開始処理を行いません。また、一定期間全く通信がない場合は IPsec
トンネルが自動的に切れてしまい、その後の再接続が行われません。これでは管理上支障が生じますので、BVI1
という仮想インターフェイスを定義し、この仮想インターフェイスも bridge-group に所属させた後、IP アドレス
(ブリッジ先のセグメントにおける IP ネットワーク内の IP アドレス) として 192.168.0.123/24 を定義し、この
IP アドレスから 5 秒間に 1 個、検査用の ICMP パケットを 192.168.0.1
に対して送信するよう試みる設定を行っています (watch-group)。ICMP パケットの送信先は 192.168.0.1
としていますが、これは LAN 内に存在するホスト (センター側に存在する何らかのホスト) であれば何でも構いませんし、存在しない IP
アドレスであっても、その IP アドレスに対する ARP 解決クエリが送信されますのでそれで IPsec
トンネルが活性化されますので、やはり問題ありません。
残念ながら、IPsec
プロトコルは非常に複雑であり、また統一感がない難解なプロトコルであり、プロのネットワークエンジニアも相互接続の関係で頭を痛めるトラブルが発生することが多くあります。
VPN Server 上で有効にしたはずの IPsec / L2TP / EtherIP
サーバー機能にクライアントやルータ装置から正常に接続することができない場合は、原因を究明するために VPN Server
のサーバーログをよく確認してみてください。問題解決のためのヒントはサーバーログに記録される可能性が高いと思われます。また、VPN
クライアント側やルータ側のログも参考にしてみてください。 |
|