在虚拟接口上有多个 ip 的情况下,如何告诉网络堆栈哪个 ip 是要与之通信的源 (src)?
auto eth0
iface eth0 inet static
address x.x.x.209
netmask 255.255.255.0
network x.x.x.0
broadcast x.x.x.255
gateway x.x.x.254
auto eth0:1
iface eth0:1 inet static
address x.x.x.210
netmask 255.255.255.0
network x.x.x.0
broadcast x.x.x.255
gateway x.x.x.254
Run Code Online (Sandbox Code Playgroud)
等等等等
它似乎在 /etc/networking/interfaces 中选择最后一个
~# ip -s route get 173.194.67.113;
173.194.67.113 via x.x.x.254 dev eth0 src x.x.x.210
cache users 1 used 11 mtu 1500 advmss 1460 hoplimit 64
Run Code Online (Sandbox Code Playgroud)
但是这种行为是不可预测的,我为每个接口分配了大约 30 个 ip,有时(scr)源 ip 会发生变化。
我需要了解它是如何选择的。
我已经尝试设置度量来标准化 src,但它似乎不支持虚拟接口。
NETLINK: Packet too small or …
networking ×1