What's new

R7800 IPV6 drops

  • SNBForums Code of Conduct

    SNBForums is a community for everyone, no matter what their level of experience.

    Please be tolerant and patient of others, especially newcomers. We are all here to share and learn!

    The rules are simple: Be patient, be nice, be helpful or be gone!

kuan529

New Around Here
Hi , my ISP provides IPv6 over pppoe. I’ve set it up on my R7800 and got It working. However, IPv6 will drop after few days when ISP renew my public IP ( every 2-3 days). IPv4 does reconnect automatically after renew, but IPv6 doesn’t. I have to disable IPv6 and then re-enable to bring it back.

I’m currently on the latest Voxel’s firmware. I haven’t tried the stock but even if IPv6 works fine on the stock I don’t want to go back to stock only because IPv6. Voxel firmware is way to more reliable.

Is there a solution or workaround to fix this issue? Any command line I can use on telnet to force IPv6 reconnect automatically?
 
I had to customize a lot IPv6 scripts in my case, but different ISP setting.

In your case, yes, a script is a solution.
There are several approaches to do it. One would be to test regularly (cron job or loop/sleep script) IPv6 connectivity and restart it if needed.

Check your WAN interface (brwan or ppp0):
Code:
ifconfig ppp0 && echo 'ppp0' || /bin/nvram get wan_ifname

1) Cron rule (replace WAN_INTERFACE):
Code:
* * * * * { /bin/ping6 -I WAN_INTERFACE -c 1 ipv6.google.com || /etc/init.d/init6 restart; } >/dev/null 2>&1



2) Or loop/sleep script:
Create this file: check_ipv6.sh
Code:
#!/bin/sh
while :; do
  /bin/ping6 -I WAN_INTERFACE -c 1 ipv6.google.com || /etc/init.d/init6 restart
  sleep 60;
done >/dev/null 2>&1

Then make it executable and run it.
Code:
chmod +x check_ipv6.sh
./check_ipv6.sh &

You would have to run it after each reboot, or automatize its start adding this line in post-mount.sh if you have a USB drive, or rc.local (before exit 0), replace PATH_TO by the full path to your script:
Code:
PATH_TO/check_ipv6.sh &
 
I had to customize a lot IPv6 scripts in my case, but different ISP setting.

In your case, yes, a script is a solution.
There are several approaches to do it. One would be to test regularly (cron job or loop/sleep script) IPv6 connectivity and restart it if needed.

Check your WAN interface (brwan or ppp0):
Code:
ifconfig ppp0 && echo 'ppp0' || /bin/nvram get wan_ifname

1) Cron rule (replace WAN_INTERFACE):
Code:
* * * * * { /bin/ping6 -I WAN_INTERFACE -c 1 ipv6.google.com || /etc/init.d/init6 restart; } >/dev/null 2>&1



2) Or loop/sleep script:
Create this file: check_ipv6.sh
Code:
#!/bin/sh
while :; do
  /bin/ping6 -I WAN_INTERFACE -c 1 ipv6.google.com || /etc/init.d/init6 restart
  sleep 60;
done >/dev/null 2>&1

Then make it executable and run it.
Code:
chmod +x check_ipv6.sh
./check_ipv6.sh &

You would have to run it after each reboot, or automatize its start adding this line in post-mount.sh if you have a USB drive, or rc.local (before exit 0), replace PATH_TO by the full path to your script:
Code:
PATH_TO/check_ipv6.sh &

Appreciate your help with clear instruction.
I will try and test for couple days. Will report back here.
 
It has been 4 straight days. IPv6 connectivity keeps up and running fine.

However, there is another issue... I notice ICMPv6 is blocked when I do online test on “ipv6-test.com”. I also found out that there is an option “Allow external IPv6 hosts ping internal IPv6 hosts” in the debug.htm, but it seems not working properly. ICMPv6 was still blocked after I checked the option. I then did some researches and realized it is Netgears problem...

The information I got was back to 2019. Wondering if there is a solution/ workaround now?
 
It has been 4 straight days. IPv6 connectivity keeps up and running fine.

However, there is another issue... I notice ICMPv6 is blocked when I do online test on “ipv6-test.com”. I also found out that there is an option “Allow external IPv6 hosts ping internal IPv6 hosts” in the debug.htm, but it seems not working properly. ICMPv6 was still blocked after I checked the option. I then did some researches and realized it is Netgears problem...

The information I got was back to 2019. Wondering if there is a solution/ workaround now?

Great :)

I have ICMPv6 reachable on ipv6-test.com, so it is not a NG problem, or to be more precise, it can work with R7800 and @Voxel ’s firmware.

After, IPv6 depends a lot on the ISP and its infrastructure behind...
What is https://ipv6-test.com/pingtest/ telling you?
 
In (very) recent firmware, NETGEAR only allows echo requests to be reachable for IPv6. This is how it passes IPv6 tests and gives the illusion that it complies. It does not, since there are more ICMPv6 options that need to be passed too. I wrote my own IPv6 firewall which fully complies with passing ICMPv6 options like "destination-unreachable" or "packet-too-big" (to give a few examples). ASUS routers by default also fully comply with ICMPv6, at least my old AC66U used to under RMerlin firmware.
 
In (very) recent firmware, NETGEAR only allows echo requests to be reachable for IPv6. This is how it passes IPv6 tests and gives the illusion that it complies. It does not, since there are more ICMPv6 options that need to be passed too. I wrote my own IPv6 firewall which fully complies with passing ICMPv6 options like "destination-unreachable" or "packet-too-big" (to give a few examples). ASUS routers by default also fully comply with ICMPv6, at least my old AC66U used to under RMerlin firmware.
Do you mind sharing your IPv6 firewall settings?
 

Sign Up For SNBForums Daily Digest

Get an update of what's new every day delivered to your mailbox. Sign up here!
Top