No default route

I built VyOS with ./configure --architecture amd64 --build-type release --version 1.2.0 --custom-packages vnstat , basically following this build guide, but I seem to be having a bug with default routes. Setting a default IPv4 route to a table and committing it often the route doesn’t actually land in the routing table until reboot. I’m having the same problem with v6, only that the routes never actually land in the routing table, even after a reboot. Here’s an example.

user@vyos# show protocols static table 100
 interface-route XX.XX.9.0/25 {
     next-hop-interface eth1.80 {
     }
 }
 interface-route XX.XX.9.128/28 {
     next-hop-interface eth1.05 {
     }
}
 interface-route XX.XX.9.144/28 {
     next-hop-interface eth1.75 {
     }
 }
 interface-route XX.XX.9.160/28 {
     next-hop-interface eth1.60 {
     }
 }
 interface-route 10.0.0.0/24 {
     next-hop-interface eth1.10 {
     }
 }
 interface-route 10.1.1.0/24 {
     next-hop-interface eth1 {
     }
 }
 interface-route 10.1.3.0/24 {
     next-hop-interface eth1.40 {
     }
 }
 interface-route 10.2.2.0/24 {
     next-hop-interface eth1.50 {
     }
 }
 interface-route6 XXXX:XXXX:4994:bad::/64 {
     next-hop-interface eth1.80 {
     }
 }
 interface-route6 XXXX:XXXX:4994:c0de::/64 {
     next-hop-interface eth1.05 {
     }
 }
 interface-route6 XXXX:XXXX:4994:d00b::/64 {
     next-hop-interface eth1.60 {
     }
 }
 interface-route6 XXXX:XXXX:4994:da7a::/64 {
     next-hop-interface eth1.75 {
     }
 }
 route 0.0.0.0/0 {
     next-hop XX.XX.9.177 {
     }
 }
 route6 ::/0 {
     next-hop XXXX:XXXX:49de::1 {
    }
 }
[edit]
user@vyos# ip -6 route show table 100
XXXX:XXXX:4994:bad::/64 dev eth1.80 proto static metric 20 pref medium
XXXX:XXXX:4994:c0de::/64 dev eth1.05 proto static metric 20 pref medium
XXXX:XXXX:4994:d00b::/64 dev eth1.60 proto static metric 20 pref medium
XXXX:XXXX:4994:da7a::/64 dev eth1.75 proto static metric 20 pref medium
[edit]

Did I miss something while building, or is this a common bug ?

Can you check please that staticd is running?

It is not

â staticd.service
   Loaded: not-found (Reason: No such file or directory)
   Active: inactive (dead)

Is there something wrong with my build ?

What version are you running? Staticd and zebra should be always up and running, also please check that with ‘ps aux’ You should see something like watchfrr -d zebra … staticd.

I’m running 1.2.0. Those seem to be running.

root      1246  0.0  0.0  51400  3724 ?        Ss   Apr23   1:28 /usr/lib/frr/watchfrr -d zebra bgpd ripd ripngd ospfd ospf6d staticd
frr       1314  0.0  0.0  51840  3272 ?        Ss   Apr23   0:03 /usr/lib/frr/staticd -d --daemon -A 127.0.0.1

What shows show ip route?

v4

Codes: K - kernel route, C - connected, S - static, R - RIP,
       O - OSPF, I - IS-IS, B - BGP, E - EIGRP, N - NHRP,
       T - Table, v - VNC, V - VNC-Direct, A - Babel, D - SHARP,
       F - PBR, f - OpenFabric,
       > - selected route, * - FIB route, q - queued route, r - rejected route

K>* 0.0.0.0/0 [0/0] is directly connected, pppoe0, 2d18h56m
C>* XX.XX.9.0/25 is directly connected, eth1.80, 3d02h57m
C>* XX.XX.9.128/28 is directly connected, eth1.05, 3d02h57m
C>* XX.XX.9.144/28 is directly connected, eth1.75, 3d02h58m
C>* XX.XX.9.160/28 is directly connected, eth1.60, 3d02h57m
C>* XX.XX.9.176/30 is directly connected, wg1, 3d02h57m
C>* 10.0.0.0/24 is directly connected, eth1.10, 3d02h57m
C>* 10.0.15.0/24 is directly connected, eth1.15, 3d02h42m
C>* 10.1.1.0/24 is directly connected, eth1, 3d02h58m
C>* 10.1.3.0/24 is directly connected, eth1.40, 3d02h58m
C>* 10.2.2.0/24 is directly connected, eth1.50, 3d02h57m
C>* XX.XX.246.54/32 is directly connected, pppoe0, 2d18h56m

v6

S>* ::/0 [1/0] is directly connected, tun0, 3d03h01m
C>* XXX:XXX:74b1::/48 is directly connected, tun0, 3d03h01m
S>* XXX:XXX:4310:1200::/64 [1/0] is directly connected, eth1.80, 3d03h01m
C>* XXX:XXX:4994:bad::/64 is directly connected, eth1.80, 3d03h01m
C>* XXX:XXX:4994:c0de::/64 is directly connected, eth1.05, 3d03h01m
C>* XXX:XXX:4994:d00b::/64 is directly connected, eth1.60, 3d03h01m
C>* XXX:XXX:4994:da7a::/64 is directly connected, eth1.75, 3d03h01m
C>* XXX:XXX:49de::/64 is directly connected, wg1, 3d03h01m
C * fe80::/64 is directly connected, eth1.15, 3d02h45m
C * fe80::/64 is directly connected, eth1.10, 3d03h01m
C * fe80::/64 is directly connected, tun0, 3d03h01m
C * fe80::/64 is directly connected, eth1.05, 3d03h01m
C * fe80::/64 is directly connected, eth1.50, 3d03h01m
C * fe80::/64 is directly connected, eth1.60, 3d03h01m
C * fe80::/64 is directly connected, eth0, 3d03h01m
C * fe80::/64 is directly connected, eth1.80, 3d03h01m
C * fe80::/64 is directly connected, eth1, 3d03h01m
C * fe80::/64 is directly connected, eth1.75, 3d03h01m
C>* fe80::/64 is directly connected, eth1.40, 3d03h01m

Hmm, I tested it in the latest rolling and have no issues. Usually you should have the 2 with a different priority. I suppose you receive your IP on the pppoe link via dhcp.

Would/should look like:

S   0.0.0.0/0 [1/0] via 10.1.1.1, eth1, 00:00:05
K>* 0.0.0.0/0 [0/0] is directly connected, pppoe0, 02:57:17
C>* 10.1.1.0/24 is directly connected, eth1, 02:57:21
C>* 10.100.100.1/32 is directly connected, pppoe0, 02:57:17

The static one would become active once I kick the pppoe connection. So, you should see the same.
Can you check that route routes are setup in frr?

Just on the cli type: vtysh to gain access to the frr cli. In there use sh runn to see the running config, you should have the static route entry (entries) in there.

(set protocols static route 0.0.0.0/0 next-hop 10.1.1.1):

vyos@vyos# vtysh

Hello, this is FRRouting (version 7.1-dev-20190423-08-ge400cd8).
Copyright 1996-2005 Kunihiro Ishiguro, et al.

vyos# sh run
Building configuration...

Current configuration:
!
frr version 7.1-dev-20190423-08-ge400cd8
frr defaults traditional
hostname vyos
log syslog informational
service integrated-vtysh-config
!
ip route 0.0.0.0/0 10.1.1.1  <---------
!
line vty
!
end

Yes, the IP on pppoe is obtained via dhcp.

The output of sh run looks like this

Building configuration...

Current configuration:
!
frr version 7.1-dev-20190315-07-g61be0e3
frr defaults traditional
hostname xxx.xxx.xxx
log syslog informational
service integrated-vtysh-config
!
ip route 0.0.0.0/0 XX.XX.8.5 table 10
ip route 0.0.0.0/0 XX.XX.8.5 table 13
ip route 0.0.0.0/0 XX.XX.9.129 table 5
ip route 0.0.0.0/0 XX.XX.9.177 table 100
ip route 0.0.0.0/0 10.90.90.1 table 12
ip route XX.XX.9.0/25 eth1.80 table 5
ip route XX.XX.9.0/25 eth1.80 table 100
ip route XX.XX.9.128/28 eth1.05 table 100
ip route XX.XX.9.144/28 eth1.75 table 5
ip route XX.XX.9.144/28 2.56.9.145 table 10
ip route XX.XX.9.144/28 eth1.75 table 100
ip route XX.XX.9.160/28 eth1.60 table 100
ip route 10.0.0.0/24 eth1.10 table 5
ip route 10.0.0.0/24 10.0.0.1 table 10
ip route 10.0.0.0/24 10.0.0.1 table 13
ip route 10.0.0.0/24 eth1.10 table 100
ip route 10.1.1.0/24 eth1 table 5
ip route 10.1.1.0/24 10.1.1.1 table 10
ip route 10.1.1.0/24 eth1 table 100
ip route 10.1.2.0/24 10.1.2.1 table 10
ip route 10.1.2.0/24 10.1.2.1 table 13
ip route 10.1.3.0/24 eth1.40 table 5
ip route 10.1.3.0/24 10.1.3.1 table 10
ip route 10.1.3.0/24 eth1.40 table 100
ip route 10.2.2.0/24 eth1.50 table 5
ip route 10.2.2.0/24 10.2.2.1 table 10
ip route 10.2.2.0/24 10.2.2.1 table 12
ip route 10.2.2.0/24 10.2.2.1 table 13
ip route 10.2.2.0/24 eth1.50 table 100
ip route 10.75.75.0/24 10.75.75.1 table 10
ip route 10.90.90.0/24 10.90.90.1 table 10
ipv6 route ::/0 tun0
ipv6 route ::/0 XXX:XXX:c0de:120::1 table 5
ipv6 route ::/0 XXX:XXX:c0de:120::1 table 10
ipv6 route ::/0 XXX:XXX:c0de:120::1 table 13
ipv6 route ::/0 XXX:XXX:49de::1 table 100
ipv6 route XXX:XXX:74b1:1040::/64 XXX:XXX:74b1:1040::1 table 10
ipv6 route XXX:XXX:74b1:1050::/64 XXX:XXX:74b1:1050::1 table 13
ipv6 route XXX:XXX:74b1:9090::/64 XXX:XXX:74b1:9090::1 table 10
ipv6 route XXX:XXX:74b1:c0de::/64 XXX:XXX:74b1:c0de::1 table 10
ipv6 route XXX:XXX:4310:1200::/64 eth1.80
ipv6 route XXX:XXX:4994:bad::/64 eth1.80 table 5
ipv6 route XXX:XXX:4994:bad::/64 eth1.80 table 100
ipv6 route XXX:XXX:4994:c0de::/64 eth1.05 table 100
ipv6 route XXX:XXX:4994:d00b::/64 eth1.60 table 5
ipv6 route XXX:XXX:4994:d00b::/64 eth1.60 table 100
ipv6 route XXX:XXX:4994:da7a::/64 eth1.75 table 5
ipv6 route XXX:XXX:4994:da7a::/64 eth1.75 table 100
!
interface eth0
 description WAN
!
interface eth1
 description LAN
!
interface eth1.05
 description VL05
!
interface eth1.10
 description VL10
!
interface eth1.15
 description VL15
!
interface eth1.40
 description VL40
!
interface eth1.50
 description VL50
!
interface eth1.60
 description VL60
!
interface eth1.75
 description VL75
!
interface eth1.80
 description VL80
!
interface tun0
 description HE.net Tunnel
!
interface wg1
 description WG
!
line vty
!
end

I rebuilt my ISO and everything seems to be golden now.

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.