初版: 2003/12/22
最終更新日:
2003/12/22
このネットワークでは、RTX1000でNATを使っています。 このため、RTW65bやFreeBSD boxからは、通常の状態では、 Server向けてパケットを投げる(通信の発呼を行う)ことはできません。 しかし、VPNを使ってFreeBSD boxをRTX1000に接続すると、 NATを通り越して(迂回して??)FreeBSD boxからServerへtelnetをかける ことができるようになります。
下図において、RTW65bの部分をインターネット、 RTX1000より下の部分をイントラネットと考えると、 出先からどこかのプロバイダ経由で社内イントラネットに インターネットVPNでアクセスする場合の 参考になるのではないでしょうか。
RTW65bは、単に 172.16.1.0/24 と 172.16.0.0/24 をつなぐために 置いているだけで、LAN1 (LAN) と LAN2 (WAN) のIPアドレスと 経路の設定ぐらいしかしていません。
+----------------+-------+ 172.16.2.0/24
|
|172.16.2.2 (ed1)
+-----------+ FreeBSD 4.8R
|FreeBSD box| (IPsec ready kernel,
+-----------+ racoon-20030826a)
|172.16.1.2 (rl0)
|
+-------+-------+-------+ 172.16.1.0/24
|
|172.16.1.1
+-------+(LAN1[LAN])
|RTW65b |
+-------+(LAN2[WAN])
|172.16.0.1
|
+-------+-------+-------+ 172.16.0.0/24
|
|172.16.0.254
+-------+(LAN2) ↑ pseudo Internet
|RTX1000| --↑NAT =====================
+-------+(LAN1) ↓ Intranet
|192.168.1.254
|
+-------+-------+-------+ 192.168.1.0/24
|
|192.168.1.1
+-------+
|Server |
+-------+
ip route default gateway 172.16.0.1 ip route 172.16.2.0/24 gateway tunnel 2 ip lan1 address 192.168.1.254/24 ip lan2 address 172.16.0.254/24 ip lan2 nat descriptor 1 tunnel select 2 ipsec tunnel 102 ipsec sa policy 102 2 esp 3des-cbc md5-hmac ipsec ike encryption 2 3des-cbc ipsec ike group 2 modp1024 ipsec ike local address 2 192.168.1.254 ipsec ike pre-shared-key 2 freebsd-rtx1000 ipsec ike remote address 2 172.16.1.2 tunnel enable 2 nat descriptor type 1 masquerade nat descriptor address outer 1 primary nat descriptor masquerade rlogin 1 on nat descriptor masquerade static 1 1 192.168.1.254 udp 500 nat descriptor masquerade static 1 2 192.168.1.254 esp ipsec auto refresh on
options IPSEC options IPSEC_ESP options IPSEC_DEBUG
# ifconfig gif0 create tunnel 172.16.1.2 172.16.1.1 # ifconfig gif0 172.16.2.2 192.168.1.254 netmask 255.255.255.255 # route add 192.168.1.0/24 192.168.1.254
#
flush;
spdflush;
spdadd 172.16.2.0/24 192.168.1.0/24 any
-P out ipsec esp/tunnel/172.16.1.2-172.16.0.254/require;
spdadd 192.168.1.0/24 172.16.2.0/24 any
-P in ipsec esp/tunnel/172.16.0.254-172.16.1.2/require;
172.16.0.254 freebsd-rtx1000
path pre_shared_key "/usr/local/etc/racoon/psk.txt" ;
remote anonymous
{
exchange_mode aggressive,main;
doi ipsec_doi;
situation identity_only;
nonce_size 16;
lifetime time 1 min; # sec,min,hour
initial_contact on;
support_mip6 on;
proposal_check obey; # obey, strict or claim
proposal {
encryption_algorithm 3des;
#hash_algorithm sha1;
hash_algorithm md5;
authentication_method pre_shared_key ;
dh_group 2 ;
}
}
sainfo anonymous
{
pfs_group 2;
lifetime time 30 sec;
encryption_algorithm 3des ;
authentication_algorithm hmac_md5 ;
compression_algorithm deflate ;
}
ip lan1 address 172.16.1.1/24 ip lan1 routing protocol none ip lan1 rip listen none ip lan2 address 172.16.0.1/24 ip lan2 routing protocol none ip lan2 rip listen none syslog notice on httpd service off dhcp service server dhcp server rfc2131 compliant except remain-silent dhcp scope 1 172.16.1.2-172.16.1.194/24
# route add -net 172.16.0.0/16 gw 192.168.1.254
2003/12/22 23:54:49: IP Tunnel[2] Up 2003/12/22 23:54:50: [IKE] IPsec socket[tunnel:2] is refered 2003/12/22 23:54:53: [IKE] [1015] retransmit to 172.16.1.2 (count = 9) 2003/12/22 23:54:53: [IKE] add info context [1020] 2c084c9b0a83c07d 610a3361 2003/12/22 23:54:53: [IKE] no SPI is specified. 2003/12/22 23:54:53: [IKE] invalid cookie : no message
% ifconfig -a rl0: flags=8843mtu 1500 inet 172.16.1.2 netmask 0xffffff00 broadcast 172.16.1.255 … gif0: flags=8051 mtu 1280 tunnel inet 172.16.1.2 --> 172.16.0.254 inet 172.16.2.2 --> 192.168.1.254 netmask 0xffffffff … ed1: flags=8843 mtu 1500 inet 172.16.2.2 netmask 0xffffff00 broadcast 172.16.2.255 …
% telnet -N -K 192.168.1.1 Trying 192.168.1.1... Connected to 192.168.1.1. Escape character is '^]'. Lineo Embedix Linux(TM) Copyright 1999-2000 Lineo, Inc. BusyBox on zaurus login: