[Openswan Users] Nortel Mode-Config Interop
Ken Bantoft
ken at xelerance.com
Wed May 19 07:22:58 CEST 2004
I did some more thinking about this.
On Tue, 18 May 2004, David Mattes wrote:
> Hi,
>
> I'm implementing OpenS/WAN Mode-Config client support for obtaining a
> private IP address (and netmask, DNS) from a Nortel CES. When I connect
> with the Netlock client, an aggressive mode exchange (3 packets total)
> is used to build the ISAKMP SA, then the Nortel box starts a Mode Config
> Transaction exchange (these packets are encrypted by the ISAKMP SA, so I
> can't see the content), and there are several of these. Of course with
> OpenS/WAN the ISAKMP SA is built using main mode exchanges, and once the
> ISAKMP SA is built I never receive a Mode Config Transaction message
> from the Nortel box. So I tried building and sending an Mode Config
> ISAKMP_CFG_REQUEST payload to the Nortel box, but I'm not getting
> anything sensible in the reply.
>
> Does anyone know how to get the Nortel box to initiate the Mode Config
> Transaction? Could it be that Nortel is expecting a particular VID from
> a supported client (I will send this as part of the main mode exchange
> to see if it helps)? Maybe the Nortel will only initiate Mode Config
> under an aggressive mode exchange?
That's a possibility... difficult to confirm unless you get get Netlock or
Windows-based Nortel client to do mainmode.
> Would my leftsubnet= setting have any effect (must it be set to the
> target network from which the dynamic address comes from)?
Might need to use leftsubnetwithin=192.168.0.0/24 instead. Or maybe not
even one at all.
> This is my pluto debug (only where it gets interesting - once the ISAKMP SA is built):
> ------------------------------------------------
> May 18 15:48:25 gandalf pluto[26265]: | authentication succeeded
> May 18 15:48:25 gandalf pluto[26265]: "getaddr" #1: transition from state STATE_MAIN_I3 to state STATE_MAIN_I4
> May 18 15:48:25 gandalf pluto[26265]: | inserting event EVENT_SA_REPLACE, timeout in 2681 seconds for #1
> May 18 15:48:25 gandalf pluto[26265]: "getaddr" #1: ISAKMP SA established
> May 18 15:48:25 gandalf pluto[26265]: "getaddr" #1: Checking Mode Config situation
> May 18 15:48:25 gandalf pluto[26265]: "getaddr" #1: Kicking off Mode Config state R0
> May 18 15:48:25 gandalf pluto[26265]: | MODECFG: Moving from STATE_MAIN_I3 to STATE_MAIN_I4
> May 18 15:48:25 gandalf pluto[26265]: | **emit ISAKMP Message:
> May 18 15:48:25 gandalf pluto[26265]: | initiator cookie:
> May 18 15:48:25 gandalf pluto[26265]: | f0 80 a5 06 ee 66 db 12
> May 18 15:48:25 gandalf pluto[26265]: | responder cookie:
> May 18 15:48:25 gandalf pluto[26265]: | d5 00 28 6e 42 35 ef 32
> May 18 15:48:25 gandalf pluto[26265]: | next payload type: ISAKMP_NEXT_HASH
> May 18 15:48:25 gandalf pluto[26265]: | ISAKMP version: ISAKMP Version 1.0
> May 18 15:48:25 gandalf pluto[26265]: | exchange type: ISAKMP_XCHG_MODE_CFG
> May 18 15:48:25 gandalf pluto[26265]: | flags: ISAKMP_FLAG_ENCRYPTION
> May 18 15:48:25 gandalf pluto[26265]: | message ID: cc a4 82 83
> May 18 15:48:25 gandalf pluto[26265]: | ***emit ISAKMP Hash Payload:
> May 18 15:48:25 gandalf pluto[26265]: | next payload type: ISAKMP_NEXT_MODECFG
> May 18 15:48:25 gandalf pluto[26265]: | emitting 20 zero bytes of HASH into ISAKMP Hash Payload
> May 18 15:48:25 gandalf pluto[26265]: | emitting length of ISAKMP Hash Payload: 24
> May 18 15:48:25 gandalf pluto[26265]: | ***emit ISAKMP Mode Attribute:
> May 18 15:48:25 gandalf pluto[26265]: | next payload type: ISAKMP_NEXT_NONE
> May 18 15:48:25 gandalf pluto[26265]: | Attr Msg Type: ISAKMP_CFG_REQUEST
> May 18 15:48:25 gandalf pluto[26265]: | Identifier: 0
> May 18 15:48:25 gandalf pluto[26265]: | ****emit ISAKMP ModeCfg attribute:
> May 18 15:48:25 gandalf pluto[26265]: | ModeCfg attr type: INTERNAL_IP4_ADDRESS
> May 18 15:48:25 gandalf pluto[26265]: | length/value: 0
> May 18 15:48:25 gandalf pluto[26265]: | emitting length of ISAKMP ModeCfg attribute: 0
> May 18 15:48:25 gandalf pluto[26265]: | ****emit ISAKMP ModeCfg attribute:
> May 18 15:48:25 gandalf pluto[26265]: | ModeCfg attr type: INTERNAL_IP4_NETMASK
> May 18 15:48:25 gandalf pluto[26265]: | length/value: 0
> May 18 15:48:25 gandalf pluto[26265]: | emitting length of ISAKMP ModeCfg attribute: 0
> May 18 15:48:25 gandalf pluto[26265]: | ****emit ISAKMP ModeCfg attribute:
> May 18 15:48:25 gandalf pluto[26265]: | ModeCfg attr type: INTERNAL_IP4_DNS
> May 18 15:48:25 gandalf pluto[26265]: | length/value: 0
> May 18 15:48:25 gandalf pluto[26265]: | emitting length of ISAKMP ModeCfg attribute: 0
> May 18 15:48:25 gandalf pluto[26265]: | emitting length of ISAKMP Mode Attribute: 20
> May 18 15:48:25 gandalf pluto[26265]: | XAUTH: HASH computed:
> May 18 15:48:25 gandalf pluto[26265]: | 1d 70 8d 2e a3 6d 89 8a 88 34 20 c6 cb a2 a5 25
> May 18 15:48:25 gandalf pluto[26265]: | 6f 67 8e cd
> May 18 15:48:25 gandalf pluto[26265]: | emitting length of ISAKMP Message: 72
> May 18 15:48:25 gandalf pluto[26265]: | last Phase 1 IV: 60 a5 c6 1c 22 89 34 d3
> May 18 15:48:25 gandalf pluto[26265]: | computed Phase 2 IV:
> May 18 15:48:25 gandalf pluto[26265]: | 7c f3 86 e0 d8 a9 94 c3 5b 9b 8d 4e 58 1c f0 7a
> May 18 15:48:25 gandalf pluto[26265]: | 89 d1 b2 9e
> May 18 15:48:25 gandalf pluto[26265]: | encrypting:
> May 18 15:48:25 gandalf pluto[26265]: | 0e 00 00 18 1d 70 8d 2e a3 6d 89 8a 88 34 20 c6
> May 18 15:48:25 gandalf pluto[26265]: | cb a2 a5 25 6f 67 8e cd 00 00 00 14 01 00 00 00
> May 18 15:48:25 gandalf pluto[26265]: | 00 01 00 00 00 02 00 00 00 03 00 00
> May 18 15:48:25 gandalf pluto[26265]: | emitting 4 zero bytes of encryption padding into ISAKMP Message
> May 18 15:48:25 gandalf pluto[26265]: | encrypting using OAKLEY_3DES_CBC
> May 18 15:48:25 gandalf pluto[26265]: | next IV: b9 3f 47 85 5c 51 3e 14
> May 18 15:48:25 gandalf pluto[26265]: | emitting length of ISAKMP Message: 76
> May 18 15:48:25 gandalf pluto[26265]: | inserting event EVENT_RETRANSMIT, timeout in 10 seconds for #1
> May 18 15:48:25 gandalf pluto[26265]: "getaddr" #1: Sending ModeCfg request
> May 18 15:48:25 gandalf pluto[26265]: | sending 76 bytes for ModeCfg: request through eth2 to 130.42.72.249:500:
> May 18 15:48:25 gandalf pluto[26265]: | f0 80 a5 06 ee 66 db 12 d5 00 28 6e 42 35 ef 32
> May 18 15:48:25 gandalf pluto[26265]: | 08 10 06 01 cc a4 82 83 00 00 00 4c 56 18 cb 3c
> May 18 15:48:25 gandalf pluto[26265]: | 03 90 12 e3 de 9d 05 c3 91 24 d7 ce 35 18 14 94
> May 18 15:48:25 gandalf pluto[26265]: | 9a 77 50 d3 45 35 15 9a 54 2c 01 13 22 be 37 c7
> May 18 15:48:25 gandalf pluto[26265]: | 5b 57 5f 06 b9 3f 47 85 5c 51 3e 14
> May 18 15:48:25 gandalf pluto[26265]: | next event EVENT_RETRANSMIT in 10 seconds for #1
> May 18 15:48:25 gandalf pluto[26265]: |
> May 18 15:48:25 gandalf pluto[26265]: | *received 40 bytes from 130.42.72.249:500 on eth2
> May 18 15:48:25 gandalf pluto[26265]: | f0 80 a5 06 ee 66 db 12 d5 00 28 6e 42 35 ef 32
> May 18 15:48:25 gandalf pluto[26265]: | 0b 10 05 00 cc a4 82 83 00 00 00 28 00 00 00 0c
> May 18 15:48:25 gandalf pluto[26265]: | 00 00 00 01 01 00 01 00
> May 18 15:48:25 gandalf pluto[26265]: | **parse ISAKMP Message:
> May 18 15:48:25 gandalf pluto[26265]: | initiator cookie:
> May 18 15:48:25 gandalf pluto[26265]: | f0 80 a5 06 ee 66 db 12
> May 18 15:48:25 gandalf pluto[26265]: | responder cookie:
> May 18 15:48:25 gandalf pluto[26265]: | d5 00 28 6e 42 35 ef 32
> May 18 15:48:25 gandalf pluto[26265]: | next payload type: ISAKMP_NEXT_N
> May 18 15:48:25 gandalf pluto[26265]: | ISAKMP version: ISAKMP Version 1.0
> May 18 15:48:25 gandalf pluto[26265]: | exchange type: ISAKMP_XCHG_INFO
> May 18 15:48:25 gandalf pluto[26265]: | flags: none
> May 18 15:48:25 gandalf pluto[26265]: | message ID: cc a4 82 83
> May 18 15:48:25 gandalf pluto[26265]: | length: 40
> May 18 15:48:25 gandalf pluto[26265]: | ICOOKIE: f0 80 a5 06 ee 66 db 12
> May 18 15:48:25 gandalf pluto[26265]: | RCOOKIE: d5 00 28 6e 42 35 ef 32
> May 18 15:48:25 gandalf pluto[26265]: | peer: 82 2a 48 f9
> May 18 15:48:25 gandalf pluto[26265]: | state hash entry 12
> May 18 15:48:25 gandalf pluto[26265]: | peer and cookies match on #1, provided msgid 00000000 vs cca48283
> May 18 15:48:25 gandalf pluto[26265]: | state object #1 found, in STATE_MODE_CFG_R0
> May 18 15:48:25 gandalf pluto[26265]: "getaddr" #1: Notify Message Type of ISAKMP Notification Payload has an unknown value: 256
> May 18 15:48:25 gandalf pluto[26265]: "getaddr" #1: malformed payload in packet
256 seems like an odd number. The registry[1] isn't helpfull in figuring
out what it means either.
ietf_constants.h defines 0-30, and a few others from various RFC/drafts
(we have more defined tha tthe registry does).
I would assume since it's >255, it's an error of some kind, but not sure
what it points to.
[1] http://www.iana.org/assignments/isakmp-registry
--
Ken Bantoft VP Business Development
ken at xelerance.com Xelerance Corporation
sip://toronto.xelerance.com http://www.xelerance.com
The future is here. It's just not evenly distributed yet.
-- William Gibson
More information about the Users
mailing list