我的 VPS 上有两个接口。一种是vio(4)
作为出口的接口。我的hostname.vio0
文件只是
inet autoconf
up
第二个是wg(4)
接口。我的hostname.wg0
文件末尾包含一条命令,!route add ... XXX
其中...
是 IP,XXX
是 的默认网关 IP vio0
。
但在启动时,OpenBSD 说
add host ...: gateway XXX: Networks is unreachable
手册netstart(8)
提到接口的加载顺序,但我没有找到任何有关vio(4)
接口顺序的信息,无论是第一个还是最后一个。因为启动后,我可以正确加载我的界面。有解决办法吗?
谢谢。
答案1
据我通过阅读/etc/netstart
脚本可以确定,该vio0
界面应该是最先出现的界面之一(请参阅第一次调用ifmstart
shell 函数,其中wg0
将被显式忽略,因为它需要路由),并且wg0
似乎已配置后那 (第三次致电ifmstart
)。
为什么wg0
没有为你正确配置,我不知道。这可能是一个时间问题?
wg0
如果您在登录后能够手动调出界面,那么您可能能够从您的/etc/rc.local
脚本中执行此操作(默认情况下该文件不存在,请参阅rc(8)
)。在那里,您可以轻松地通过sleep
延迟几秒钟的调用来在启动界面之前添加暂停。
答案2
我面临着同样的问题,我相信原因是“inet autoconf”实际上不等待 dhcp 得到解决。它只是要求 dhcpleased(8) 获取 dhcp 配置并继续。这意味着以下命令(包括其他文件中的命令,特别是“router add”)可能会在 dhcp 实际设置之前运行,因此该路由的 IP 地址尚不存在。