[Openswan Users] NAT Traversal and L2TP unencrypted
quiksilv
quiksilv7 at gmail.com
Tue Feb 10 22:21:38 EST 2009
Hi all
I have an openswan-2.6.19 NETKEY debian server installed in a DMZ with a
public facing internet IP.
I'm trying to connect an XP SP3 roadwarrior which is behind a NAT router in
another location. It seems as though the ipsec connection gets established
but the L2TP packets get sent back from the server to the client
unencrypted.
My openswan config is:
=================
config setup
plutodebug="control parsing"
protostack=netkey
nat_traversal=yes
virtual_private=%v4:10.0.0.0/8,%v4:192.168.0.0/16,%v4:172.16.0.0/12
conn l2tp-psk-orgWIN2KXP
authby=secret
pfs=no
auto=add
rekey=no
left=%defaultroute
leftprotoport=17/1701
right=%any
rightprotoport=17/1701
rightsubnet=vhost:%priv,%no
End of the openswan log output after connection is established (can provide
more if necessary):
======================================
pluto[31691]: "l2tp-psk-orgWIN2KXP"[3] 220.233.x.x #5: transition from state
STATE_QUICK_R1 to state STATE_QUICK_R2
pluto[31691]: | inserting event EVENT_SA_EXPIRE, timeout in 3600 seconds for
#5
pluto[31691]: "l2tp-psk-orgWIN2KXP"[3] 220.233.77.199 #5: STATE_QUICK_R2:
IPsec SA established tunnel mode {ESP=>0x2e33037b <0x93b165d4
xfrm=3DES_0-HMAC_MD5 NATOA=192.168.0.10 NATD=220.233.x.x:4500 DPD=none}
Tcpdump on the server: (Client internal IP: 192.168.0.10, Client NATd IP:
220.233.x.x, Server IP: 203.1.y.y)
======================================================
IP 220.233.x.x.500 > 203.1.y.y.500: isakmp: phase 1 I ident
IP 203.1.y.y.500 > 220.233.x.x.500: isakmp: phase 1 R ident
IP 220.233.x.x.500 > 203.176.y.y.500: isakmp: phase 1 I ident
IP 203.1.y.y.500 > 220.233.x.x.500: isakmp: phase 1 R ident
IP 220.233.x.x.4500 > 203.176.y.y.4500: NONESP-encap: isakmp: phase 1 I
ident[E]
IP 203.1.y.y.4500 > 220.233.x.x.4500: NONESP-encap: isakmp: phase 1 R
ident[E]
IP 220.233.x.x.4500 > 203.176.y.y.4500: NONESP-encap: isakmp: phase 2/others
I oakley-quick[E]
IP 203.1.y.y.4500 > 220.233.x.x.4500: NONESP-encap: isakmp: phase 2/others R
oakley-quick[E]
IP 220.233.x.x.4500 > 203.176.y.y.4500: NONESP-encap: isakmp: phase 2/others
I oakley-quick[E]
IP 220.233.x.x.4500 > 203.176.y.y.4500: UDP-encap:
ESP(spi=0xd6c2d71a,seq=0x1), length 148
IP 220.233.x.x.4500 > 203.176.y.y.4500: UDP-encap:
ESP(spi=0xd6c2d71a,seq=0x2), length 148
IP 203.1.y.y.1701 > 220.233.x.x.1701: l2tp:[TLS](16/0)Ns=0,Nr=1
*MSGTYPE(SCCRP) *PROTO_VER(1.0) *FRAMING_CAP(AS) *BEARER_CAP()
IP 203.1.y.y.1701 > 220.233.x.x.1701: l2tp:[TLS](16/0)Ns=0,Nr=1 ZLB
IP 220.233.x.x.4500 > 203.176.y.y.4500: UDP-encap:
ESP(spi=0xd6c2d71a,seq=0x3), length 148
IP 203.1.y.y.1701 > 220.233.x.x.1701: l2tp:[TLS](16/0)Ns=0,Nr=1 ZLB
IP 203.1.y.y.1701 > 220.233.x.x.1701: l2tp:[TLS](16/0)Ns=0,Nr=1
*MSGTYPE(SCCRP) *PROTO_VER(1.0) *FRAMING_CAP(AS) *BEARER_CAP() |..
......
......
As I see it, the server is trying to establish an l2tp conncetion directly
back to the client NAT address and not going through the ipsec tunnel?
Then I just get this in the xl2tpd logs:
=============================
xl2tpd[31794]: control_finish: Peer requested tunnel 17 twice, ignoring
second one.
xl2tpd[31794]: control_finish: Peer requested tunnel 17 twice, ignoring
second one.
xl2tpd[31794]: network_thread: select timeout
xl2tpd[31794]: network_thread: select timeout
xl2tpd[31794]: network_thread: select timeout
This all works succesfully from a client which is NOT NATd in anyway.
Any ideas? Help is appreciated.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.openswan.org/pipermail/users/attachments/20090211/fb63cd2d/attachment.html
More information about the Users
mailing list