Dav*_*tti 3 networking routing gateway netplan 18.04
全新安装 Ubuntu 18.04 LTS 后,我按照此处在线提供的说明将 netplan 配置为使用静态 IP 地址:
https://www.tecmint.com/ifconfig-vs-ip-command-comparing-network-configuration/
问题是网关 IP 地址似乎被忽略了。这是 yaml 文件 (/etc/netplan/50-cloud-init.yaml):
network:
version: 2
renderer: networkd
ethernets:
ens160:
dhcp4: no
dhcp6: no
addresses: [172.20.0.109/24]
gateway4: 172.20.3.254
nameservers:
addresses: [172.20.0.5,172.20.0.6]
Run Code Online (Sandbox Code Playgroud)
这是networkctl status ens160
(执行后sudo netplan apply
)的输出,您可以在其中看到网关丢失:
? 2: ens160
Link File: /lib/systemd/network/99-default.link
Network File: /run/systemd/network/10-netplan-ens160.network
Type: ether
State: routable (configured)
Path: pci-0000:03:00.0
Driver: vmxnet3
Vendor: VMware
Model: VMXNET3 Ethernet Controller
HW Address: 00:50:56:a9:bc:e5 (VMware, Inc.)
Address: 172.20.0.109
fe80::250:56ff:fea9:bce5
DNS: 172.20.0.5
172.20.0.6
Run Code Online (Sandbox Code Playgroud)
这是文件网络文件(/run/systemd/network/10-netplan-ens160.network):
[Match]
Name=ens160
[Network]
Address=172.20.0.109/24
Gateway=172.20.3.254
DNS=172.20.0.5
DNS=172.20.0.6
Run Code Online (Sandbox Code Playgroud)
这是输出route -n
:
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
172.20.0.0 0.0.0.0 255.255.255.0 U 0 0 0 ens160
Run Code Online (Sandbox Code Playgroud)
由于网关 IP 地址在当前网络 (/24) 之外,您的网络配置配置错误。
假设网关ip地址正确,您可能需要配置/22而不是/24网络才能到达网关。
使用 ipcalc 实用程序检查HostMin和HostMax以查看网络掩码如何影响网络可达性。
$ ipcalc 172.20.0.109/24
Address: 172.20.0.109 10101100.00010100.00000000. 01101101
Netmask: 255.255.255.0 = 24 11111111.11111111.11111111. 00000000
Wildcard: 0.0.0.255 00000000.00000000.00000000. 11111111
=>
Network: 172.20.0.0/24 10101100.00010100.00000000. 00000000
HostMin: 172.20.0.1 10101100.00010100.00000000. 00000001
HostMax: 172.20.0.254 10101100.00010100.00000000. 11111110
Broadcast: 172.20.0.255 10101100.00010100.00000000. 11111111
Hosts/Net: 254 Class B, Private Internet
$ ipcalc 172.20.0.109/22
Address: 172.20.0.109 10101100.00010100.000000 00.01101101
Netmask: 255.255.252.0 = 22 11111111.11111111.111111 00.00000000
Wildcard: 0.0.3.255 00000000.00000000.000000 11.11111111
=>
Network: 172.20.0.0/22 10101100.00010100.000000 00.00000000
HostMin: 172.20.0.1 10101100.00010100.000000 00.00000001
HostMax: 172.20.3.254 10101100.00010100.000000 11.11111110
Broadcast: 172.20.3.255 10101100.00010100.000000 11.11111111
Hosts/Net: 1022 Class B, Private Internet
Run Code Online (Sandbox Code Playgroud)