Announcement

Collapse
No announcement yet.

Hurricane Tunnel and IPv6-test.com

Collapse
This topic is closed.
X
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    [SOLVED] Hurricane Tunnel and IPv6-test.com

    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
    Click image for larger version

Name:	ipv6-test.jpg
Views:	1
Size:	59.1 KB
ID:	649627

    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.

    Click image for larger version

Name:	ff_ipv_settings.jpg
Views:	1
Size:	64.1 KB
ID:	649628

    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
    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.
    Code:
    $ ip -a -d tunnel
    sit0: ipv6/ip remote any local any ttl 64 nopmtudisc 6rd-prefix 2002::/16
    Last edited by GreyGeek; Jun 15, 2020, 10:50 AM. Reason: solved
    "A nation that is afraid to let its people judge the truth and falsehood in an open market is a nation that is afraid of its people.”
    – John F. Kennedy, February 26, 1962.

    #2
    Another twist in getting IPv6 as the primary protocol for my FF browser.
    Thinking that I had solved the IPv6 primary protocol problem I did another check on http://ds.testmyipv6.com/ to check and FF was back to preferring IPv4 again. For grins and giggles I power cycled my HP LaserJet P1606dn laser printer and then retested that link. FF was back to preferring IPv6 again and all it took was to cycle my printer without logging out or rebooting. Weird. At least I can restore IPv6 as the primary protocol without doing anything more than pressing a button on my printer twice.
    Last edited by GreyGeek; May 26, 2020, 11:38 AM.
    "A nation that is afraid to let its people judge the truth and falsehood in an open market is a nation that is afraid of its people.”
    – John F. Kennedy, February 26, 1962.

    Comment


      #3
      Well, I can mark this issue solved.

      After watching patterns and doing experiments I noticed that doing
      systemctl restart he-ipv6
      after the desktop appeared always made IPv6 the primary protocol for FireFox. It got me thinking about the design of my service unit and the "After" setting. I modified the "After" target from "network.target" to "NetworkManager.target".


      he-ipv6.service
      [Unit]
      Description=he.net IPv6 tunnel
      #After=network.target
      After=NetworkManager.target

      [Service]
      Type=oneshot
      RemainAfterExit=yes
      ExecStart=/bin/ip tunnel add he-ipv6 mode sit remote w.x.y.z local 192.168.11.100 ttl 255
      ExecStart=/bin/ip link set he-ipv6 up mtu 1480
      ExecStart=/bin/ip addr add 2001:vvv:wwwxx::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
      Last edited by Snowhog; Jun 15, 2020, 12:44 PM.
      "A nation that is afraid to let its people judge the truth and falsehood in an open market is a nation that is afraid of its people.”
      – John F. Kennedy, February 26, 1962.

      Comment

      Working...
      X