在 AlmaLinux 9 中,应该使用 NetworkManager 来定义连接。在我们使用的数据中心中,必须定义路由才能使用虚拟机中的自定义 IP。我已经在主机中定义 IP 方面取得了进展,但无法让 NetworkManager 在重新启动时创建路由,但使用此命令网络可以正常工作:

ip route add default via 192.168.0.1 dev ens18 onlink src 94.23.81.XXX

我不熟悉 nmconnection 文件格式,因此无法使用 NetworkManager 来实现。我应该把这个命令放在哪里,或者在哪个文件中可以定义这个默认且唯一的路由?

谢谢。


最佳答案
1

包含如何使用创建静态路由的各种示例nmcli。它不涵盖自定义属性的使用,例如,但我们可以在onlink中找到,它告诉我们选项的值为ipv4.routes

IPv4 目标地址列表、前缀长度、可选 IPv4 下一跳地址、可选路由度量、可选属性。有效语法为:“ip[/prefix] [next-hop] [metric] [attribute=val]…[,ip[/prefix]…]”。例如“192.0.2.0/24 10.1.1.1 77, 198.51.100.0/24”。

建议我们可以这样做(假设我们有一个名为的连接wired,我有):

nmcli c mod wired +ipv4.routes "192.168.55.0/24 192.168.1.1 onlink=true"

当我在我的系统上运行它时,结果是:

192.168.55.0/24 via 192.168.1.1 dev eth0 proto static metric 100 onlink

请注意,您需要nmcli down/nmcli up连接才能实现更改。

1

  • 通过您的回答,我成功解决了这个问题,能够定义自定义默认路由。这是使用的命令: nmcli c mod ens18 +ipv4.routes "0.0.0.0/0 192.168.0.1 onlink=true src=94.23.81.XXX" 谢谢!


    –