Configuring pppd to accept link-local IPv6 interface id from remote peer

Nicholas Humfrey <[email protected]>
Newsgroups gmane.linux.ppp
Message-ID <[email protected]>
Hi,

I originally asked this question on the "Unix and Linux" StackExchange:
https://unix.stackexchange.com/questions/634033/configuring-pppd-to-accept-link-local-ipv6-address-from-remote-peer

But i suspect it is a bit too niche and have not had a response there.


I have two pppd (v2.4.7) instances running, talking to each over over a 
serial port link. But I can't work out how to get the 'client' pppd to 
accept the link-local IPv6 interface identifier provided by the 'server' 
pppd. I am trying to use static addresses so I know the link-local IP 
address of the remote peer.

On the 'server' I am running:
   pppd file ./ppp-options ipv6 ::1,::2 /dev/ttyAMA0 115200

And on the 'client', I am running:
   pppd file ./ppp-options ipv6cp-accept-local /dev/ttyAMA0 115200

This is the contents of ppp-options on both:
   nodetach
   noauth
   persist
   local
   noip
   +ipv6

The pppd man page says:
   ipv6cp-accept-local
     With this option, pppd will accept the peer's idea of our local 
IPv6 interface
     identifier, even if the local IPv6 interface identifier was 
specified in an option.

But that doesn't seem to be the behaviour I am experiencing.

The client always just uses a locally chosen interface identifier 
instead. It was suggested to me to try setting the 'client' local 
interface identifier to all-zero but I have not found a way of doing 
this through configuration. Or alternatively get the 'server' to Nack 
the clients choice of interface identifier - but I'm not sure how to 
achieve that with pppd.

I have now managed to get it working by hacking ipv6cp.c to keep the 
local identifier as all-zero, by disabling a couple of calls to 
eui64_magic_nz. But I am not sure what the proper solution is.

Does there need to be an IPv6 equivalent to 'noipdefault' to use in 
conjunction with 'ipv6cp-accept-local'?

Thanks,

nick.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.