Page MenuHomeVyOS Platform

migration script for router-advert sets link-mtu 0 on bridge interfaces
Closed, ResolvedPublic

Description

Upgrading to latest rolling, the router-advert options got denested into service router-advert, but the bridge interface got set link-mtu 0, which caused it to fail to apply. Deleting link-mtu made it commit successfully.
Sadly no logs, I can't find any on disk from that failed commit.

Details

Difficulty level
Unknown (require assessment)
Version
1.3-rolling-202003250217
Why the issue appeared?
Will be filled on close
Is it a breaking change?
Config syntax change (migratable)

Event Timeline

jjakob triaged this task as Unbreak Now! priority.Wed, Mar 25, 5:18 PM
jjakob created this task.
jjakob created this object in space S1 VyOS Public.
c-po added a subscriber: c-po.Wed, Mar 25, 7:01 PM

Can you send me your previous config.boot file prior of the upgrade? I'm happy to take a look

c-po changed the task status from Open to In progress.Wed, Mar 25, 7:01 PM
c-po claimed this task.
pasik added a subscriber: pasik.Wed, Mar 25, 7:10 PM

Actually I had link-mtu 0 on br0 for a long time now and it worked without problem previously, maybe 0 was a special meaning for radvd?
br0 is the only interface that had ipv6 router-advert, I included one of the eth's for completeness:

interfaces {
    bridge br0 {
        address 192.0.2.1/24
        address 2001:db8::1/64
        aging 300
        description LAN
        firewall {
            local {
                name lan-local
            }
        }
        hello-time 2
        ipv6 {
            dup-addr-detect-transmits 2
            router-advert {
                cur-hop-limit 64
                link-mtu 0
                managed-flag true
                max-interval 600
                other-config-flag false
                prefix 2001:db8::/64 {
                    autonomous-flag true
                    on-link-flag true
                    valid-lifetime 2592000
                }
                reachable-time 0
                retrans-timer 0
                send-advert true
            }
        }
        max-age 20
        member {
            interface eth0 {
            }
            interface eth1 {
            }
            interface eth2 {
            }
            interface eth4 {
            }
            interface wlan0 {
            }
        }
        priority 20480
        stp
    }
    ethernet eth0 {
        duplex auto
        hw-id xx:xx:xx:xx:xx:xx
        smp-affinity auto
        speed auto
    }
}
c-po added a comment.Thu, Mar 26, 6:31 AM

Good catch!

The problem was that I intended to delete the link-mtu node when its value was 0 "disabled" as configuringing a node that is disable makes no sense in my brain, when other values enable it. The node should be enabled when there's a valid configuration and if not specified it's disabled.

This was unfortunatley not handled by the migration script and the new validation catched it. Please re-upgrade from your previous vyos installation to one of the todays rolling releases. The bugfix will be included.

c-po closed this task as Resolved.Thu, Mar 26, 6:33 AM
c-po changed Is it a breaking change? from Unspecified (possibly destroys the router) to Config syntax change (migratable).