FRR assigns origin protocol tags to route and it's useful to quickly see where each route comes from. However, there's no way to easily figure out where an IP address on interface comes from when looking at the op mode output. Is it a VRRP virtual address? Does it come from DHCP? From somewhere else?
Linux and iproute2 allow the user to attach a description to each address. The command is a bit clunky: it requires <ifname>:<descr> due to some legacy concerns. However, an op mode script can easily strip the first part from a label.
$ sudo ip address add 192.0.2.100/24 dev dum0 label dum0:DHCP $ ip addr sh dum0 6: dum0: <BROADCAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN group default qlen 1000 link/ether 1e:48:6d:96:3e:80 brd ff:ff:ff:ff:ff:ff inet 192.0.2.100/24 scope global dum0:DHCP valid_lft forever preferred_lft forever inet6 fe80::1c48:6dff:fe96:3e80/64 scope link valid_lft forever preferred_lft forever
Some places where we can do that:
- DHCP client script
- keepalived
- accel-ppp?