michael gurevich
2023-09-03 08:48:30 UTC
Hi
I am trying to establish a ppp link for device running FreeRTOS that has either an IPV6 or an IPV4 address with host running linux.
For example if device has only IPV6 address, sending pppd command creates on host global IPV6 address and "not global" IPV4 address.
I've noticed that when I reject IPCP or IP6CP configuration requests from the PPPD client, it continues to send empty Conf-requests indefinitely.
tail /var/log/syslog
sudo pppd noauth /dev/ttyUSB2 921600 +ipv6 kdebug 0 nodetach debug crtscts
using channel 8
Using interface ppp0
Connect: ppp0 <--> /dev/ttyUSB2
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xc0fd1ad> <pcomp> <accomp>]
rcvd [LCP ConfReq id=0x1 <mru 1428> <asyncmap 0x0> <magic 0xe7a62d85> <pcomp> <accomp>]
sent [LCP ConfAck id=0x1 <mru 1428> <asyncmap 0x0> <magic 0xe7a62d85> <pcomp> <accomp>]
rcvd [LCP ConfAck id=0x1 <asyncmap 0x0> <magic 0xc0fd1ad> <pcomp> <accomp>]
sent [LCP EchoReq id=0x0 magic=0xc0fd1ad]
sent [CCP ConfReq id=0x1 <deflate 15> <deflate(old#) 15> <bsd v1 15>]
sent [IPCP ConfReq id=0x1 <compress VJ 0f 01> <addr 0.0.0.0>]
sent [IPV6CP ConfReq id=0x1 <addr fe80::d020:7def:e89c:c53f>]
rcvd [IPV6CP ConfReq id=0x1 <addr fe80::d14b:7ff2:c13d:7ee9>]
sent [IPV6CP ConfAck id=0x1 <addr fe80::d14b:7ff2:c13d:7ee9>]
rcvd [LCP EchoRep id=0x0 magic=0xe7a62d85]
rcvd [CCP ConfReq id=0x1]
sent [CCP ConfAck id=0x1]
rcvd [CCP ConfRej id=0x1 <deflate 15> <deflate(old#) 15> <bsd v1 15>]
sent [CCP ConfReq id=0x2]
rcvd [IPCP ConfRej id=0x1 <compress VJ 0f 01> <addr 0.0.0.0>]
sent [IPCP ConfReq id=0x2 <addrs 0.0.0.0 0.0.0.0>]
rcvd [IPV6CP ConfAck id=0x1 <addr fe80::d020:7def:e89c:c53f>]
local LL address fe80::d020:7def:e89c:c53f
remote LL address fe80::d14b:7ff2:c13d:7ee9
Script /etc/ppp/ipv6-up started (pid 62492)
Script /etc/ppp/ipv6-up finished (pid 62492), status = 0x0
rcvd [CCP ConfAck id=0x2]
rcvd [IPCP ConfRej id=0x2 <addrs 0.0.0.0 0.0.0.0>]
sent [IPCP ConfReq id=0x3]
rcvd [IPCP ConfRej id=0x3]
sent [IPCP ConfReq id=0x4]
rcvd [IPCP ConfRej id=0x4]
sent [IPCP ConfReq id=0x5]
rcvd [IPCP ConfRej id=0x5
This behavior seems to be different from what I observe with Windows dialup clients, where a configuration request is sent three times and then times out if rejected.
I would prefer to avoid using "noip" or other arguments in the pppd command line, as I would like the server to have the flexibility to decide which IP type the client should use.
Is it a known issue? Is it possible to reject on of IPCP or IP6CP requests?
Thanks
Michael
I am trying to establish a ppp link for device running FreeRTOS that has either an IPV6 or an IPV4 address with host running linux.
For example if device has only IPV6 address, sending pppd command creates on host global IPV6 address and "not global" IPV4 address.
I've noticed that when I reject IPCP or IP6CP configuration requests from the PPPD client, it continues to send empty Conf-requests indefinitely.
tail /var/log/syslog
sudo pppd noauth /dev/ttyUSB2 921600 +ipv6 kdebug 0 nodetach debug crtscts
using channel 8
Using interface ppp0
Connect: ppp0 <--> /dev/ttyUSB2
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xc0fd1ad> <pcomp> <accomp>]
rcvd [LCP ConfReq id=0x1 <mru 1428> <asyncmap 0x0> <magic 0xe7a62d85> <pcomp> <accomp>]
sent [LCP ConfAck id=0x1 <mru 1428> <asyncmap 0x0> <magic 0xe7a62d85> <pcomp> <accomp>]
rcvd [LCP ConfAck id=0x1 <asyncmap 0x0> <magic 0xc0fd1ad> <pcomp> <accomp>]
sent [LCP EchoReq id=0x0 magic=0xc0fd1ad]
sent [CCP ConfReq id=0x1 <deflate 15> <deflate(old#) 15> <bsd v1 15>]
sent [IPCP ConfReq id=0x1 <compress VJ 0f 01> <addr 0.0.0.0>]
sent [IPV6CP ConfReq id=0x1 <addr fe80::d020:7def:e89c:c53f>]
rcvd [IPV6CP ConfReq id=0x1 <addr fe80::d14b:7ff2:c13d:7ee9>]
sent [IPV6CP ConfAck id=0x1 <addr fe80::d14b:7ff2:c13d:7ee9>]
rcvd [LCP EchoRep id=0x0 magic=0xe7a62d85]
rcvd [CCP ConfReq id=0x1]
sent [CCP ConfAck id=0x1]
rcvd [CCP ConfRej id=0x1 <deflate 15> <deflate(old#) 15> <bsd v1 15>]
sent [CCP ConfReq id=0x2]
rcvd [IPCP ConfRej id=0x1 <compress VJ 0f 01> <addr 0.0.0.0>]
sent [IPCP ConfReq id=0x2 <addrs 0.0.0.0 0.0.0.0>]
rcvd [IPV6CP ConfAck id=0x1 <addr fe80::d020:7def:e89c:c53f>]
local LL address fe80::d020:7def:e89c:c53f
remote LL address fe80::d14b:7ff2:c13d:7ee9
Script /etc/ppp/ipv6-up started (pid 62492)
Script /etc/ppp/ipv6-up finished (pid 62492), status = 0x0
rcvd [CCP ConfAck id=0x2]
rcvd [IPCP ConfRej id=0x2 <addrs 0.0.0.0 0.0.0.0>]
sent [IPCP ConfReq id=0x3]
rcvd [IPCP ConfRej id=0x3]
sent [IPCP ConfReq id=0x4]
rcvd [IPCP ConfRej id=0x4]
sent [IPCP ConfReq id=0x5]
rcvd [IPCP ConfRej id=0x5
This behavior seems to be different from what I observe with Windows dialup clients, where a configuration request is sent three times and then times out if rejected.
I would prefer to avoid using "noip" or other arguments in the pppd command line, as I would like the server to have the flexibility to decide which IP type the client should use.
Is it a known issue? Is it possible to reject on of IPCP or IP6CP requests?
Thanks
Michael