Hi all, I've noticed this patch: https://gitlab.nic.cz/labs/bird/-/commit/00b139bd25c77b401d2065283cb970d9d8c1aa02
It says that "(net, metric) is the primary key". But for my understanding the primary key in linux routing table also includes tos. It seems that BIRD currently does not support routes with tos, so it is not relevant now. But anyway the statement in code misses it, and this rifle might shoot in the future if tos support is added. Here is an example showing that tos is treated as a part of the primary key: # ip route add 192.168.2.0/24 via 192.168.0.2 metric 10 tos 0x10 # ip route add 192.168.2.0/24 via 192.168.0.3 metric 10 tos 0x20 # ip -N route show 192.168.2.0/24 192.168.2.0/24 tos 0x20 via 192.168.0.3 dev eth0 metric 10 192.168.2.0/24 tos 0x10 via 192.168.0.2 dev eth0 metric 10 # ip ro replace 192.168.2.0/24 via 192.168.0.4 metric 10 # ip -N route show 192.168.2.0/24 192.168.2.0/24 tos 0x20 via 192.168.0.3 dev eth0 metric 10 192.168.2.0/24 tos 0x10 via 192.168.0.2 dev eth0 metric 10 192.168.2.0/24 via 192.168.0.4 dev eth0 metric 10 # ip ro replace 192.168.2.0/24 via 192.168.0.5 metric 10 tos 0x10 # ip -N route show 192.168.2.0/24 192.168.2.0/24 tos 0x20 via 192.168.0.3 dev eth0 metric 10 192.168.2.0/24 tos 0x10 via 192.168.0.5 dev eth0 metric 10 192.168.2.0/24 via 192.168.0.4 dev eth0 metric 10 Regards, Alexander