My Hurricane tunnel has been so reliable over the last several years that I seldom go to IPv6-test.com to check on it. Today, I remembered that I hadn't checked it in a while and when I did I got
Surprised, I navigated to a list of websites that only show in IPv6. Those that were still active displayed nicely.
PS: I also uncommented
net.ipv6.conf.all.forwarding=1
in /etc/sysctl.conf.
Using http://ds.testmyipv6.com/ I learned that both IPv4 and IPv6 connectivity works. The "ds." prefix checks to see which protocol is default. Before, my browsers demonstrated IPv6 preference over IPv4. That setting was browser independent because I didn't have to change any settings in a browser to have it default to IPv6. Somehow, a setting has changed and IPv4 is now the default protocol. I compared my /etc/gai.conf file from a year ago, before 20.04, and nothing has changed.
My tunnel config hasn't changed either.
Any network experts out know where the setting is to fix this?
EDIT #1:
Uncommenting
net.ipv4.ip_forward=1
net.ipv6.conf.all.forwarding=1
in sysctl.conf
solved the problem!
EDIT #2:
It turns out that the changes in EDIT #1 did not work. When logging in yesterday morning my browser was again in the "prefer IPv4" mode. So I commented out those lines I had removed the "#" from and when I logged out and back in my browser was back in the "prefer IPv6" mode. I "thought" I had solved the problem.
This morning I turned on my computer and when I tested my browser it was back into the IPv4 mode. I logged out and then logged back in. Lo and behold, my browser was now in the IPv6 mode.
So, now I know that after I log in from a power up I have to log out and then log back in, without rebooting, in order to make FF come up in the IPv6 mode. I've checked /etc/.profile and /etc/.baschrc and ~/.profile and ~/.bashrc and couldn't see anything that might cause a network configuration change.
The he-ipv6.service unit hasn't changed since I wrote it last year.
With my IP addresses filtered out here is the script, with nesting shown:
I know next to nothing about networking, but what appears to be happening (just guessing) is that WantedBy and the ExecStart lines are executed during login following a bootup. When logging out (not rebooting) the ExecStop lines are executed and then when logging back in ExecStart lines are executed. The sit0 does not appear to be deleted during ExecStop's.
Surprised, I navigated to a list of websites that only show in IPv6. Those that were still active displayed nicely.
PS: I also uncommented
net.ipv6.conf.all.forwarding=1
in /etc/sysctl.conf.
Using http://ds.testmyipv6.com/ I learned that both IPv4 and IPv6 connectivity works. The "ds." prefix checks to see which protocol is default. Before, my browsers demonstrated IPv6 preference over IPv4. That setting was browser independent because I didn't have to change any settings in a browser to have it default to IPv6. Somehow, a setting has changed and IPv4 is now the default protocol. I compared my /etc/gai.conf file from a year ago, before 20.04, and nothing has changed.
My tunnel config hasn't changed either.
Any network experts out know where the setting is to fix this?
EDIT #1:
Uncommenting
net.ipv4.ip_forward=1
net.ipv6.conf.all.forwarding=1
in sysctl.conf
solved the problem!
EDIT #2:
It turns out that the changes in EDIT #1 did not work. When logging in yesterday morning my browser was again in the "prefer IPv4" mode. So I commented out those lines I had removed the "#" from and when I logged out and back in my browser was back in the "prefer IPv6" mode. I "thought" I had solved the problem.
This morning I turned on my computer and when I tested my browser it was back into the IPv4 mode. I logged out and then logged back in. Lo and behold, my browser was now in the IPv6 mode.
So, now I know that after I log in from a power up I have to log out and then log back in, without rebooting, in order to make FF come up in the IPv6 mode. I've checked /etc/.profile and /etc/.baschrc and ~/.profile and ~/.bashrc and couldn't see anything that might cause a network configuration change.
The he-ipv6.service unit hasn't changed since I wrote it last year.
With my IP addresses filtered out here is the script, with nesting shown:
Code:
[Unit] Description=he.net IPv6 tunnel After=network.target [Service] Type=oneshot RemainAfterExit=yes |--ExecStart=/bin/ip tunnel add he-ipv6 mode sit remote "tunnel-ip address" local 192.168.11.100 ttl 255 | |---ExecStart=/bin/ip link set he-ipv6 up mtu 1480 | | |--ExecStart=/bin/ip addr add 2001:X:Y:Z::2 dev he-ipv6 | | | |---ExecStart=/bin/ip -6 route add ::/0 dev he-ipv6 | | | |---ExecStop=/bin/ip -6 route del ::/0 dev he-ipv6 | | |--? | |--ExecStop=/bin/ip link set he-ipv6 down |--ExecStop=/bin/ip tunnel del he-ipv6 [Install] WantedBy=multi-user.target
Code:
$ ip -a -d tunnel sit0: ipv6/ip remote any local any ttl 64 nopmtudisc 6rd-prefix 2002::/16
Comment