我遇到了一个问题,我需要在 init(ram)过程中手动设置 Ubuntu 18.04 上的路由。我无法使用任何新的网络工具,只有 Busybox 可用。
路由表应如下所示:
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 172.31.1.1 0.0.0.0 UG 100 0 0 ens3
172.31.1.1 0.0.0.0 255.255.255.255 UH 100 0 0 ens3
主机是 VPS,IP 为 95.xx.xx.xx,因此网关 IP 不在同一网络上。我不知道用什么命令来构建上面的表格。我SIOCADDDRT
尝试了所有方法,都出现了各种错误。
以下是我迄今为止尝试过的方法:
> route add default gw 172.31.1.1
SIOCADDDRT: Network uncreachable
> route add default gw 172.31.1.1 via 0.0.0.0
..invalid format
> route add 172.31.1.1 gw 0.0.0.0
SIOCADDDRT: Invalid argument
> route add 0.0.0.0 gw 172.31.1.1
SIOCADDDRT: Network uncreachable
> route add default gw 0.0.0.0
SIOCADDDRT: Invalid argument
有什么方法可以让 Busybox 实现此功能吗?或者有其他方法可以在 initram 中实现此功能?
答案1
在您想要的标志输出中,“G”表示网关,“H”表示主机。因此,对于0.0.0.0
您尝试为路由创建的输出,它实际上并没有用到。
要将主机 IP 添加到将生成相同输出的接口:
ip addr add 172.31.1.1/32 dev ens3