我从一开始就一直在使用 Ubuntu,最近发现 Ubuntu 已切换到使用 netplan,而不是传统/更好的 /etc/network/interfaces 方法。
我试图让它工作,但它根本不起作用。据我所知,没有默认路由,甚至可能是一个坏的 netplan(尽管 ./netplan apply 运行正常)。以下是我正在做的事情:
- 在 ESXi 上安装全新/全新 18.04.1
- 接口名为ens160
- 我的 IP 地址 247.235.60.161
- 我的网关是 247.235.38.51
- 我的子网掩码是 255.255.255.255
/etc/netplan/01-netcfg.yaml:
network:
version: 2
renderer: networkd
ethernets:
ens160:
dhcp4: no
addresses: [247.235.60.161/32]
gateway4: 247.235.38.51
nameservers:
addresses: [8.8.8.8,8.8.4.4]
当我运行“netplan apply”时,它成功完成。
如果我 ping 8.8.8.8,我会得到“SIOCADDRT:网络不可达”
如果我执行“路由”来查看我的路由表,它什么也没有返回。没有路由表。这肯定是一个问题。
如果我执行“ifconfig -a”,它会显示我的 ens160 接口、正确的 IP、网络掩码 255.255.255.255、没有广播地址,mac/ether 地址是正确的。
关于寻址/gw/sn,我可以确认这是正确的(我在这个网络上有其他运行相同/类似的主机)
netplan 肯定出了问题。有什么想法吗?
谢谢!
答案1
网关必须在您的网络中 - 使用 /32 掩码,网关在您的局域网之外。例如,您必须配置 /16 掩码。(255.255.0.0)。
答案2
接口上配置的子网与您的网关地址不匹配。 您应该尝试“on-link”配置它允许您设置默认路由。
network:
version: 2
renderer: networkd
ethernets:
addresses: [ "10.10.10.1/24" ]
routes:
- to: 0.0.0.0/0
via: 9.9.9.9
on-link: true