我正在尝试使用 systemd-networkd 配置静态路由。实际 IP 有所不同,但以下是我想做的事情的要点:
ip route add 10.17.12.0/23 dev eth0
如果我运行此命令,我的网络设置将完全按预期工作。我只需要在此主机和 10.17.12.0 子网之间建立连接。我的主机位于不同的子网上,由于某种原因,它无法自行路由到那里。现在我想采用相同的静态路由并通过 systemd-networkd 文件对其进行配置。
这是我尝试使用的配置
[Match]
Name=eth0
[Route]
Gateway=10.2.100.5 # IP address of eth0 interface
Destination=10.17.12.0/23
我也尝试将网关设置为 eth0 接口的默认网关,但每次都会出现相同的错误:
eth0: Could not set route: Invalid argument
有什么想法我可以在这里做什么吗?
答案1
如果你运行ip route add 10.17.12.0/23 dev eth0
,你将会得到以下信息ip route show
:
10.17.12.0/23 dev eth0 scope link
请留意该scope link
部分。
networkd
因此,请在您的配置中尝试这个:
[Route]
Destination=10.17.12.0/23
Scope=link
那么就不需要指定虚拟网关地址了。