Page MenuHomeVyOS Platform

Tunnel local-ip to dhcp-interface Change Fails to Update
Closed, ResolvedPublicBUG

Description

It looks like changing a tunnel interface from a static source IP using set interfaces tunnel tun0 local-ip X.X.X.X to a DHCP interface using set interfaces tunnel tun0 dhcp-interface <iface> does not actually update the tunnel:

  1. Remove the local IP
trae@cr01b-vyos# delete local-ip
[edit interfaces tunnel tun0]
trae@cr01b-vyos# show
 address 2001:470:1f0e:1ba::2/64
 description "HE.NET IPv6"
 encapsulation sit
-local-ip 47.188.136.39
 multicast disable
 remote-ip 184.105.253.10
[edit interfaces tunnel tun0]
  1. Add dhcp-interface
trae@cr01b-vyos# set dhcp-interface bond2
[edit interfaces tunnel tun0]
trae@cr01b-vyos# commit
Using source address fd52:d62e:8011:fffe:192:168:253:3
Archiving config...
  sftp://stor01z-cs.int.trae32566.org:/int/cr01b-vyos  OK
[edit interfaces tunnel tun0]
  1. v6 doesn't work because the local IP is still set on the interface
trae@cr01b-vyos# ping6 google.com
PING google.com(dfw25s41-in-x0e.1e100.net (2607:f8b0:4000:801::200e)) 56 data bytes
From tunnel602282-pt.tunnel.tserv8.dal1.ipv6.he.net (2001:470:1f0e:1ba::2): icmp_seq=1 Destination unreachable: Address unreachable
From tunnel602282-pt.tunnel.tserv8.dal1.ipv6.he.net (2001:470:1f0e:1ba::2): icmp_seq=2 Destination unreachable: Address unreachable
From tunnel602282-pt.tunnel.tserv8.dal1.ipv6.he.net (2001:470:1f0e:1ba::2): icmp_seq=3 Destination unreachable: Address unreachable
trae@cr01b-vyos# run show interfaces tunn tun0
tun0@NONE: <POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1476 qdisc noqueue state UNKNOWN group default qlen 1000
    link/sit 47.188.136.39 peer 184.105.253.10                                                              <------still `local-ip`
    inet6 2001:470:1f0e:1ba::2/64 scope global
       valid_lft forever preferred_lft forever
    inet6 fe80::2fbc:8827/64 scope link
       valid_lft forever preferred_lft forever
    inet6 fe80::f590:ceff:fe08:a7af/64 scope link
       valid_lft forever preferred_lft forever
    Description: HE.NET IPv6
    RX:  bytes  packets  errors  dropped  overrun       mcast
             0        0       0        0        0           0
    TX:  bytes  packets  errors  dropped  carrier  collisions
             0        0    4194        0     4195           0
[edit interfaces tunnel tun0]

I managed to get around it by doing the following:

  1. Disable tunnel
trae@cr01b-vyos# set disable
[edit interfaces tunnel tun0]
trae@cr01b-vyos# commit
Using source address fd52:d62e:8011:fffe:192:168:253:3
Archiving config...
  sftp://stor01z-cs.int.trae32566.org:/int/cr01b-vyos  OK
[edit interfaces tunnel tun0]
  1. Delete tunnel manually
trae@cr01b-vyos# sudo ip l del dev tun0
[edit interfaces tunnel tun0]
  1. Enable tunnel
trae@cr01b-vyos# delete disable
[edit interfaces tunnel tun0]
trae@cr01b-vyos# commit
Using source address fd52:d62e:8011:fffe:192:168:253:3
Archiving config...
  sftp://stor01z-cs.int.trae32566.org:/int/cr01b-vyos  OK
[edit interfaces tunnel tun0]
  1. v6 works
trae@cr01b-vyos# run show int tunnel tun0
tun0@NONE: <POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1476 qdisc noqueue state UNKNOWN group default qlen 1000
    link/sit 0.0.0.0 peer 184.105.253.10
    inet6 2001:470:1f0e:1ba::2/64 scope global
       valid_lft forever preferred_lft forever
    inet6 fe80::c0a8:fe05/64 scope link
       valid_lft forever preferred_lft forever
    inet6 fe80::c0a8:fe0d/64 scope link
       valid_lft forever preferred_lft forever
    inet6 fe80::c0a8:fe1d/64 scope link
       valid_lft forever preferred_lft forever
    inet6 fe80::c0a8:f04/64 scope link
       valid_lft forever preferred_lft forever
    inet6 fe80::2d1b:9d62/64 scope link
       valid_lft forever preferred_lft forever
    inet6 fe80::c0a8:6404/64 scope link
       valid_lft forever preferred_lft forever
    inet6 fe80::2fbd:358d/64 scope link
       valid_lft forever preferred_lft forever
    inet6 fe80::c0a8:fd03/64 scope link
       valid_lft forever preferred_lft forever
    inet6 fe80::f9df:1cff:fe33:4db4/64 scope link
       valid_lft forever preferred_lft forever
    Description: HE.NET IPv6
    RX:  bytes  packets  errors  dropped  overrun       mcast
           208        2       0        0        0           0
    TX:  bytes  packets  errors  dropped  carrier  collisions
          2052       24       0        0        0           0
[edit interfaces tunnel tun0]
trae@cr01b-vyos# ping6 google.com
PING google.com(dfw25s26-in-x0e.1e100.net (2607:f8b0:4000:813::200e)) 56 data bytes
64 bytes from dfw25s26-in-x0e.1e100.net (2607:f8b0:4000:813::200e): icmp_seq=1 ttl=121 time=2.29 ms
64 bytes from dfw25s26-in-x0e.1e100.net (2607:f8b0:4000:813::200e): icmp_seq=2 ttl=121 time=2.11 ms
^C
--- google.com ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 3ms
rtt min/avg/max/mdev = 2.105/2.196/2.287/0.091 ms
[edit interfaces tunnel tun0]

Details

Difficulty level
Easy (less than an hour)
Version
1.3-rolling-202101040217
Why the issue appeared?
Will be filled on close
Is it a breaking change?
Perfectly compatible
Issue type
Unspecified (please specify)