add "src" attribute to kernel route

Volodymyr Litovka at
Tue Jan 22 09:30:21 CET 2019

Hi colleagues,

in Linux it is possible to specify source IP address for all packets 
with undefined this field, like:

root at n1:~# ip route dev eth1 proto kernel scope link src via dev eth1 src

using the command

root at n1:~# ip route add src nexthop via 
dev eth1

(note "src" parameter)

This configuration instructs kernel to assign specified source address 
for all outgoing packets which travel to specified destination, if 
source address in the packet is unspecified. This quite important in 
order to provide reliability for applications which can't specify source 
IP address. in general, for such apps Linux chooses IP address of 
outgoing interface and, when this interface gone, all sessions go away 
as well since they're binded to interface's address. If I will be able 
to assign Loopback address, I will always have sessions active 
regardless of physical interfaces' state.

Whether it's possible to configure Bird (We're using 1.6 on Ubuntu 18) 
in same way - when installing routes into the kernel, add "src" 
parameter like in the example above?

Thank you.

Volodymyr Litovka
   "Vision without Execution is Hallucination." -- Thomas Edison

More information about the Bird-users mailing list