Subject: (IPng 6494) Re: More questions about PPP over Ipv6. Issue of backward compatibility.

From: [email-masked] (Peter R. Tattam)
Date: Fri, 18 Sep 1998 21:46:37 +1100

Another trace...  This time a bit more concise and also with the raw comms 
data just to show that things are as I say.  I also tried it with the header 
compression option and it was rejected (response came back as IPCP)

Also at least one beta tester has noticed the same on their service (they were 
just trying to use IPv4 service).  I know a sample size of two is quite low, 
but I would guess that the probability of dialling in to a Cisco terminal 
server would be fairly high if taken on a global basis.

Since I'd like to retain the concept of automatic configuration of either IPv4 
or IPv6 services, it would be rather nice if all you folks out there can come 
up with some answers as to how this problem can be worked around.  I need a 
way to probe the PPP peer to find out if IPv6 functionality is available.

I've come up with a couple of ideas to workaround the problem...

1) change the PPP option numbers for IPv6CP so that they don't overlap with 
the IPCP option numbers.  This is a bit messy because it would not be backward 
compatible with existing IPv6 implementations.  It is also a kludge, and I 
don't like the idea much.

2) add a special LCP option to probe for IPv6 functionality.  This should 
allow for backward compatibility as the unrecognized option would simply be 
rejected.  Sort of a kludge, but might be a worthwhile extension to LCP anyway 
to find out which protocols the PPP server supports.  If the option is 
rejected, one can fallback to a plain IPv4 connection since the peer knows 
nothing about the option.

Peter

See my annotations below..

<connection made>

PPP[C021] SND CONFREQ ID=01 LEN=24 MRU(05DC) ACCM(00000000) MAGIC(01746C80) PFC ACFC
SND:0000 7E FF 7D 23 C0 21 7D 21 7D 21 7D 20 7D 38 7D 21
SND:0010 7D 24 7D 25 DC 7D 22 7D 26 7D 20 7D 20 7D 20 7D
SND:0020 20 7D 25 7D 26 7D 21 74 6C 80 7D 27 7D 22 7D 28
SND:0030 7D 22 8B CC 7E
PPP[C021] state = reqsent
RCV:0000 7E FF 7D 23 C0 21 7D 21 F4 7D 20 7D 38 7D 22 7D
RCV:0010 26 7D 20 7D 2A 7D 20 7D 20 7D 23 7D 24 C0 23 7D
RCV:0020 25 7D 26 93 7D 30 7D 21 7D 5D 7D 27 7D 22 7D 28
RCV:0030 7D 22 92 33 7E
PPP[C021] RCV CONFREQ ID=F4 LEN=24 ACCM(000A0000) AP(C023) MAGIC(9310017D) PFC ACFC
PPP[C021] SND CONFACK ID=F4 LEN=24 ACCM(000A0000) AP(C023) MAGIC(9310017D) PFC ACFC
SND:0000 7E FF 7D 23 C0 21 7D 22 F4 7D 20 7D 38 7D 22 7D
SND:0010 26 7D 20 7D 2A 7D 20 7D 20 7D 23 7D 24 C0 23 7D
SND:0020 25 7D 26 93 7D 30 7D 21 7D 5D 7D 27 7D 22 7D 28
SND:0030 7D 22 5E DE 7E
PPP[C021] state = acksent
PPP[C021] SND CONFREQ ID=02 LEN=24 MRU(05DC) ACCM(00000000) MAGIC(01747869) PFC ACFC
SND:0000 7E FF 7D 23 C0 21 7D 21 7D 22 7D 20 7D 38 7D 21
SND:0010 7D 24 7D 25 DC 7D 22 7D 26 7D 20 7D 20 7D 20 7D
SND:0020 20 7D 25 7D 26 7D 21 74 78 69 7D 27 7D 22 7D 28
SND:0030 7D 22 5F 76 7E
RCV:0000 7E FF 7D 23 C0 21 7D 22 7D 22 7D 20 7D 38 7D 21
RCV:0010 7D 24 7D 25 DC 7D 22 7D 26 7D 20 7D 20 7D 20 7D
RCV:0020 20 7D 25 7D 26 7D 21 74 78 69 7D 27 7D 22 7D 28
RCV:0030 7D 22 93 9B 7E
PPP[C021] RCV CONFACK ID=02 LEN=24 MRU(05DC) ACCM(00000000) MAGIC(01747869) PFC ACFC
PPP[C021] state = opened

.... snip authentication...

PPP[C023] state = reqsent
RCV:0000 7E FF 7D 23 C0 23 7D 22 7D 21 7D 20 7D 25 7D 20
RCV:0010 8B 3B 7E
PPP[C023] RCV AUTHACK ID=01 LEN=5 data 00
PAP Login Accepted:
PPP[C023] state = opened
PPP[8021] SND CONFREQ ID=01 LEN=16 IP_COMPRESSION(002D0F01) IPADDR(00000000)
SND:0000 7E FF 7D 23 80 21 7D 21 7D 21 7D 20 7D 30 7D 22
SND:0010 7D 26 7D 20 2D 7D 2F 7D 21 7D 23 7D 26 7D 20 7D
SND:0020 20 7D 20 7D 20 2D 99 7E
PPP[8021] state = reqsent

< send my IPv6 configure request>

PPP[8057] SND CONFREQ ID=01 LEN=14 INTERFACE_ID(0000000046443739)
SND:0000 7E FF 7D 23 80 57 7D 21 7D 21 7D 20 7D 2E 7D 21
SND:0010 7D 2A 7D 20 7D 20 7D 20 7D 20 46 44 37 39 CF 3A
SND:0020 7E

PPP[8057] state = reqsent
RCV:0000 7E FF 03 80 21 01 FA 00 10 02 06 00 2D 0F 00 03
RCV:0010 06 C0 A8 06 05 BF 35 7E
PPP[8021] RCV CONFREQ ID=FA LEN=16 IP_COMPRESSION(002D0F00) IPADDR(C0A80605)
Gateway = 192.168.6.5
PPP[8021] SND CONFACK ID=FA LEN=16 IP_COMPRESSION(002D0F00) IPADDR(C0A80605)
SND:0000 7E FF 7D 23 80 21 7D 22 FA 7D 20 7D 30 7D 22 7D
SND:0010 26 7D 20 2D 7D 2F 7D 20 7D 23 7D 26 C0 A8 7D 26
SND:0020 7D 25 9E AF 7E
PPP[8021] state = acksent
RCV:0000 7E FF 03 80 21 03 01 00 0A 03 06 CB 11 B8 74 D5
RCV:0010 95 7E
PPP[8021] RCV CONFNAK ID=01 LEN=10 IPADDR(CB11B874)
My IP address = 203.17.184.116
PPP[8021] SND CONFREQ ID=02 LEN=16 IP_COMPRESSION(002D0F01) IPADDR(CB11B874)
SND:0000 7E FF 7D 23 80 21 7D 21 7D 22 7D 20 7D 30 7D 22
SND:0010 7D 26 7D 20 2D 7D 2F 7D 21 7D 23 7D 26 CB 7D 31
SND:0020 B8 74 DB A4 7E

< the offending packet occurs here -->

RCV:0000 7E FF 03 80 21 03 01 00 0E 01 0A CB 11 B8 74 C0
RCV:0010 A8 06 05 B0 6D 7E
PPP[8021] RCV CONFNAK ID=01 LEN=14 IPNUMS(CB11B874C0A80605)

RCV:0000 7E FF 03 80 21 02 02 00 10 02 06 00 2D 0F 01 03
RCV:0010 06 CB 11 B8 74 FA 3E 7E
PPP[8021] RCV CONFACK ID=02 LEN=16 IP_COMPRESSION(002D0F01) IPADDR(CB11B874)
PPP[8021] state = opened
set address 203.17.184.116 255.255.255.255 192.168.6.5

< send another IPv6 configure request>

PPP[8057] SND CONFREQ ID=02 LEN=14 INTERFACE_ID(0000000046443739)
SND:0000 7E FF 7D 23 80 57 7D 21 7D 22 7D 20 7D 2E 7D 21
SND:0010 7D 2A 7D 20 7D 20 7D 20 7D 20 46 44 37 39 38 34
SND:0020 7E
RCV:0000 7E FF 03 80 21 01 FB 00 10 02 06 00 2D 0F 00 03
RCV:0010 06 C0 A8 06 05 95 7D 5D 7E
PPP[8021] RCV CONFREQ ID=FB LEN=16 IP_COMPRESSION(002D0F00) IPADDR(C0A80605)
Gateway = 192.168.6.5
PPP[8021] SND CONFREQ ID=03 LEN=16 IP_COMPRESSION(002D0F01) IPADDR(CB11B874)
SND:0000 7E FF 7D 23 80 21 7D 21 7D 23 7D 20 7D 30 7D 22
SND:0010 7D 26 7D 20 2D 7D 2F 7D 21 7D 23 7D 26 CB 7D 31
SND:0020 B8 74 F1 EC 7E
PPP[8021] SND CONFACK ID=FB LEN=16 IP_COMPRESSION(002D0F00) IPADDR(C0A80605)
SND:0000 7E FF 7D 23 80 21 7D 22 FB 7D 20 7D 30 7D 22 7D
SND:0010 26 7D 20 2D 7D 2F 7D 20 7D 23 7D 26 C0 A8 7D 26
SND:0020 7D 25 B4 E7 7E
PPP[8021] state = acksent
PPP[8021] state = starting

<and again another offending packet here>

RCV:0000 7E FF 03 80 21 03 02 00 0E 01 0A CB 11 B8 74 C0
RCV:0010 A8 06 05 47 63 7E
PPP[8021] RCV CONFNAK ID=02 LEN=14 IPNUMS(CB11B874C0A80605)

<connection dropped here >

PPP[8057] state = starting
PPP[C023] state = starting
PPP[C021] state = starting

--------------------------------------------------------------------
IETF IPng Working Group Mailing List
IPng Home Page:                      http://playground.sun.com/ipng
FTP archive:                      ftp://playground.sun.com/pub/ipng
Direct all administrative requests to [email-masked]
--------------------------------------------------------------------