初版: 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: