home  bbs  files  messages ]

      ZZLI4422             linux.debian.devel             1179 messages      

[ previous | next | reply ]

[ list messages | list forums ]

  Msg # 1165 of 1179 on ZZLI4422, Wednesday 11-04-25, 5:20  
  From: DANIEL =?UTF-8?Q?GR=C3=B6  
  To: THORSTEN GLASER  
  Subj: Re: Finishing deprecation of isc-dhcp-cl  
 [continued from previous message] 
  
 I understand your concern and I share the goal of having IPv6 just 
 work. What I'm proposing here is in fact in service of that ideal: 
  
 My goal is for systems currently defaulted to using IPv6 via the kernel to 
 transition to respecting RA M/O flags too -- by launching dhcpcd when 
 appropriate. 
  
 To get there without hacks or re-architecting ifupdown I see a need to 
 transition such systems to having `inet6 auto` lines in /e/n/interfaces so 
 that ifupdown can come in and decide to launch the DHCPv6 client. 
  
 My off-the-cuff solution was to add inet6 lines from postinst when 
 appropriate along with a NEWS entry to make sure at least people that are 
 paying attention know what's going on. 
  
 Perhaps a more implicit approach, "just pretend inet6 auto is there", would 
 be less disruptive and it's what I ended up implementing now, but since 
 ifupdown people agree we should be moving in the direction of ifupdown-ng I 
 don't want to spend cycles on changing ifupdown's internals to do this 
 without hacks. 
  
  
 On Thu, Oct 23, 2025 at 10:19:44PM +0200, Thorsten Glaser wrote: 
 > So, I gave it a spin and had to fix up something already ;) 
  
 Applied your suggestions. Force pushed. Lintian nits will come when this 
 gets closer to uploading. 
  
 > With this, the interface does indeed come up, wait, and 
 > I get the expected IPv4 address… but not the expected IPv6 
 > address: 
  
 Hmm. I think I know whats going on but can you post output for: 
  
     $ ps fax | grep dhcpcd   # to see which instance types are active 
     $ sysctl net.ipv6.conf | grep -E 'accept_ra |autoconf' 
  
 to make sure and confirm you were using dhcpcd before switching to my code? 
  
 I think dhcpcd was running in dual-stack mode previously, then if you 
 ifdown;ifup with my code (without rebooting) the ipv6 sysctls won't get 
 reset to defaults (remember: dhcpcd mangles them and doesn't clean them up) 
 and that's why SLAAC is no longer working. Lacking an inet6 line ifup wont 
 (re)set accept_ra/autoconf. 
  
 I knew dhcpcd not cleaning up its sysctls was an issue but hadn't quite 
 figured out why. Now we can see the problem clearly. 
  
 I've added more hacks to make this work. See 
 https://salsa.debian.org/debian/ifupdown/-/merge_re 
 quests/28/diffs?commit_id=acc9455eef698b4d51f08c3dfa87e31bdcc1147e 
  
 To test it you have to either revert to ifupdown=0.8.44 before upgrading or 
 touch /run/network/dhcpcd-inet6-stanza-hack.needed to get the equivalent 
 behaviour. LMK how that works out on your machine. 
  
 On Thu, Oct 23, 2025 at 10:23:46PM +0200, Thorsten Glaser wrote: 
 > >With this, the interface does indeed come up, wait, and 
 > >I get the expected IPv4 address… but not the expected IPv6 
 > 
 > Perhaps it makes sense to run dhcpcd per-interface with only 
 > the expected address families enabled and convince upstream 
 > that this is the necessary way forward for it to become viable. 
  
 I am still hoping we can show upstream the right path here, but that's an 
 ongoing effort everyone's welcome to help with on the upstream issue 
 tracker :-). 
  
 > It just cannot be that a DHCP client fucks up my IPv6 rtsol, 
 > when not configured to touch IPv6 it should keep its hands 
 > off it. 
  
 That's not what's happening, my transition handling is clearly just not 
 complete yet. 
  
 > And because we need to have the ability to use a configuration where one 
 > interface has DHCP on IPv4 only but the other on IPv6, a (one) global 
 > dæmon with a global address family setting cannot possibly work in a 
 > generic setting such as a Debian network configuration integration. 
  
 This paragraph is a bit too jumbled for my language parser not sure I get 
 what you mean but let me try anyway: 
  
 For all the sharp edges I found dhcpd does give us what I think you want 
 here. The only case where things get tricky is inet6 auto with dhcp=1 but I 
 don't think that's what you're thinking about? 
  
 FYI: Even the global daemon does have per-interface and per-af settings on 
 the cmdline and dhcpcd.conf. Its really quite flexible now that I've filed 
 down the edges a bit ;-). 
  
 --Daniel 
  
 -----BEGIN PGP SIGNATURE----- 
  
 iQIzBAABCAAdFiEEV6G/FbT2+ZuJ7bKf05SBrh55rPcFAmkKJfIACgkQ05SBrh55 
 rPcXPQ/9HVpCqSz1U3bW8uVXyYK9wLKsAHPUvE3+153nGCpaQv43RzaWowLM3dXZ 
 dHIY6Ylei327Xly1J6jNB0B6dq2vRsV8vKfWfS/AHqZG4cD1mRZDvyQlqUJhy8nK 
 0yeR266UU5HkBJfpGG0IAQ+OYxie8y+dDCNwUDGfsZHO08Qa2Xkg/ChvxrTij1Vr 
 s2jSL+pEXScseEpdsg+DhuQmQSJlnnVIpRBpPXaqcKf3or1VRDBnZmhHBpjHZui7 
 aqXqSFZu78k3IZ4mnwA6HB4/H6H2NWeAAz5Z36/ogSE5u3WNMJeGcRwNQoMOBTeH 
 QO3/6s6m86gHvwXcdkXqWtTsGUBX8jU7JxqbmSgXBGWxkW5ykpBW7tkt21fPNvgL 
 2mQDCzyUV+SWcq8LaV3AKYSHKU2RTi8WooR2dz4mCfMxZYHuvrwFX56RzcDY9gNu 
 zfc5P1wApm7Usp7XHQkxePo1sD0wn4zfNnxAbs4Ugmfq6L/MGIxLa+8YEWk9JJjL 
 wX5OFTpdXA/s/cX3AC5yJKY3MVOahiaD10Ei/99cFtW1s+sYKm9JLGs/mfMWeEC5 
 VKAq8QgOjQTQ0F9Ott6nQe5wshQxhoukR0MRNIatOsRJhvtMao7wQLxo1Q1FN7pr 
 PwFNDEXZxTat19oAusNS8toB/eaaa8t7d08BlYRD1Pwz2sGPODY= 
 =uxyF 
 -----END PGP SIGNATURE----- 
  
 --- SoupGate-Win32 v1.05 
  * Origin: you cannot sedate... all the things you hate (1:229/2) 
    

[ list messages | list forums | previous | next | reply ]

search for:

328,084 visits
(c) 1994,  bbs@darkrealms.ca