我有以下两个设备tun-1
和tun-2
。它们具有相同的 IP 地址21.2.0.3
和相同的网关21.2.0.1
(每个网关指向不同的设备/VM,它们恰好具有相同的 IP)。我正在尝试设置 ECMP(等价多路径),以便转发的请求可以从任何设备随机发送出去tun
。
以下命令在内核 4.4 中使用 ip 工具可以运行iproute2-ss130716
,但RTNETLINK answers
在内核 4.19 中使用 ip 工具时会失败并出现错误iproute2-ss170501
。
$ip route add default \
nexthop via 21.2.0.1 dev tun-1 weight 1 \
nexthop via 21.2.0.1 dev tun-2 weight 1
RTNETLINK answers: Invalid argument
21.2.0.0/24 dev tun-1 proto kernel scope link src 21.2.0.3
21.2.0.0/24 dev tun-2 proto kernel scope link src 21.2.0.3
我想使用内核 4.19,这样我就可以使用L4 哈希用于 ECMP 设置。
我想知道这是什么问题,如何解决?这只是 ip 工具版本问题还是内核问题?