使用 Linux 内核 4.19 的多路径路由

使用 Linux 内核 4.19 的多路径路由

我有以下两个设备tun-1tun-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 工具版本问题还是内核问题?

相关内容