Ubuntu 18.04
安装完成后,网络设置是自动获取,联网是通的。
比如 ping www.163.com没问题。
宿主IP 192.168.1.4
ping 192.168.1.4 也没问题。
这里,我有一个需求:把虚拟机 Ubuntu(以下简称U)的 IP设置为 192.168.0.252
为什么呢?说来话长......
总之呢,我有一万个理由必须这样做。
现在查看U 的IP 地址、网关。
ifconfig
看到是IP 192.168.67.128
网关是 192.168.67.2
到 /etc/netplan目录下
先备份一下原来的 yaml文件。
将其修改成这样(这里 ens33是设备名,根据实际情况修改)
network:
ethernets:
ens33:
addresses:
- 192.168.0.252/16
gateway4: 192.168.67.2
nameservers:
addresses:
- 192.168.67.2
dhcp4: no
version: 2
这里我们为了使用现在的网关 192.168.67.2,把掩码配成了 16位。
保存 yaml文件,并执行 netplan apply.
现在能访问网关,上网是没问题的。
但是访问宿主的话还不行,ping不通。
这没什么,我们通过修改路由表来解决。
修改路由表,添加一项
ip route add 192.168.1.4/32 via 192.168.67.2 dev ens33
现在就能 ping通 192.168.1.4了。
补充一下,上面路由命令效果只是临时性的,重启后就没了。
添加永久路由方法:
在/etc/netplan/00***.yaml 的后面添加
routes:
- to: 192.168.1.4/32
via: 192.168.67.2