我应该向 ubuntu 中添加哪些生成特定路由的正确命令?

我应该向 ubuntu 中添加哪些生成特定路由的正确命令?

我试图理解为什么如果使用 bhyve(它是在 freebsd 13 上运行的 2 级虚拟机管理程序)进行模拟,则没有任何 Linux 虚拟机可以连接到互联网。相反,如果我使用 vm-bhyve(bhyve 的包装器),它们就可以。

我比较了 vm-bhyve 和 bhyve 添加的路由,试图理解为什么第一个路由允许任何 Linux 发行版连接到互联网,而第二个路由不允许,我发现下面的路由是由 vm-bhyve 添加的,而不是由 bhyve 添加的。我尝试使用此命令在 ubuntu 中手动添加它:

route add default gw 192.168.1.1 enp0s5

但是,它不是添加,而是192.168.1.1添加_gateway。我认为这就是它不起作用的原因。度量也应该改变。正确的是 100,但我发出的命令没有添加 100,而是仍然是 0。

vm-bhyve 是否在主机级别添加该路由?由于我不是程序员,我无法理解 vm-bhyve 源代码的工作原理,我想知道是否可以在 ubuntu 21.04 客户操作系统中添加该路由。

因此,您可以在下面看到有效的路线:

Destination = default 
gateway = 192.168.1.1
genmask = 0.0.0.0
flags = UG
metric = 100
ref = 0
use = 0
iface = enps05

下面你可以看到我发出命令时手动添加的路线路由添加默认网关 192.168.1.1 enp0s5

Destination = default 
gateway = _gateway
genmask = 0.0.0.0
flags = UG
metric = 0
ref = 0
use = 0
iface = enps05

也许该命令是错误的?怎么会这样?

答案1

通常会通过它添加,sudo ip route add default via 192.168.1.1它将确定可以到达 GW 的接口,或者您可以自己指定sudo ip route add default via 192.168.1.1 dev enp0s5。通常,ip它比旧的路由/ifconfig 方法更受欢迎。

相关内容