Add error checking to handle renew failure
Check for error status code in the IA Prefix option in replies to RENEW messages.
This fixes a problem where odhcp6c thinks that renewal succeeded, when actually the upstream router is no longer routing this prefix for us.
See https://github.com/openwrt/odhcp6c/issues/61#issuecomment-2509536512
@dedeckeh Can you have a look at it?
@lukedd I confirm that your fix is working. Thank you!
That your fix is working, ipv6 has been running without dropping for 1 month with the change you suggested.
Does not work for me, ipv6 still stopps working sometimes, although less frequently.
Hi @borkra , if you can share any logs, or ideally a tcpdump packet capture, I'd be glad to see if we can address your situation properly.
Unfortunately, it is so random and rare. It’s hard to reproduce to capture logs. It takes days or weeks…
Unfortunately, it is so random and rare. It’s hard to reproduce to capture logs. It takes days or weeks…
use an external log server like papertrail and add an event trigger for the error
I will try, but this change makes things so much better I would commit it.
well it happened again over night... It seems more like complete ipv6 routing failure, ipv6 addresses pingable from the router no ipv6 addresses work on the client but they do work on the router, even fdxxx local address not working SIGUSR2 does not fix anything restarting dnsmasq fixes fdxxx local address routing but not global global came back later with no indication of any event in the syslog
To follow this PR, IPv6 is very important...
@Neustradamus is there a merge timeline on this? OpenWRT is consistently a poor experience on my home Wi-Fi needing to reboot IPv6 everyday.
@Diatrus: I do not manage the OpenWrt project, for this repo, it is @dedeckeh...
Hope it will be solved soon...
@Noltari, @systemcrash: Have you seen this PR?
@Noltari, @systemcrash: Have you seen this PR?
@Neustradamus please stop pinging people for no reason. Of course I've seen this and many other PRs, but I simply lack the time to review them all.
@Noltari after a much closer inspection, and the apparent reports that this patch resolves at least some problems, and the code looks good, and it has RFC precedent, I think this makes a good addition. I cannot test this change without encountering the problem situation, but the code block checks for an error code, so this is already a logic improvement.
If we hear nothing back from the author soonish, I'd be happy to merge.
This patch handles status code option only inside IA_PREFIX option while it should also handle status code option inside IA_ADDR option, thus not providing a generic handling of status code options
This patch handles status code option only inside IA_PREFIX option while it should also handle status code option inside IA_ADDR option, thus not providing a generic handling of status code options
I agree that odhcpd could do that in the IA_ADDR option also, but that's not what this patch intends to fix. Such a fix would be trivial anyway (though is not the onus of PR author).
Superseeded by https://github.com/openwrt/odhcp6c/pull/103
For information, I have sent an e-mail to @lukedd yesterday.
I just saw the newer comments on this, great to see some activity in this repo again! Thanks for sorting this out and getting a fix merged