Ubuntu18.04 NAT模式下配置静态IP地址 -2020.11.09

Ubuntu18.04 NAT模式下配置静态IP地址 -2020.11.09

准备工作

平时使用ssh连接虚拟机,但是发现一旦切换了网络以后,虚拟机的IP地址总是会发生改变,那么如何设置虚拟机的静态IP地址呢

平时使用ssh连接虚拟机,但是发现一旦切换了网络以后,虚拟机的IP地址总是会发生改变,那么如何设置虚拟机的静态IP地址呢

注意:Ubuntu18.04是通过修改/etc/netplan目录下的配置文件来修改IP地址的

首先在VMware的Edit菜单下找到虚拟网络设置

选择右下角,改变设置

找到VMnet8,NAT模式,去掉使用本地DHCP服务给虚拟机分配IP地址

选择NAT设置,查看NAT网关IP,Gateway IP,这里是192.168.42.2,并且子网掩码为255.255.255.0

打开cmd终端,输入ipconfig,查看VMnet8在本机的IPv4地址

我这里是192.168.42.1,目前我们得到了3个IP地址,分别如下

  • VMnet8的网络地址:192.168.42.0
  • VMnet8的网关地址:192.168.42.2
  • 本机VMnet8的IPv4地址:192.168.42.1

改写配置文件

首先改变Ubuntu18.04的网络连接方式为NAT,然后打开Ubuntu18.04的终端,首先查看你的网络名称,使用ifconfig,这里是ens33

然后输入ls /etc/netplan/

linkchen@master:~$ ls /etc/netplan/
01-network-manager-all.yaml
linkchen@master:~$ 

可以看到一个文件,01-network-manager-all.yaml

输入命令sudo vim /etc/netplan/01-network-manager-all.yaml编辑该文件

具体修改项目:【注意yaml的对齐格式和冒号后的空格,否则后续生效时会出错】

  • 在network下添加以太网ethernets
  • 在ethernets中添加你的网络名称,这里是ens33
  • 在ens33中添加【注意冒号后的空格】
    • dhcp4: no
    • dhcp6: no
    • addresses: [192.168.42.*/24],这里使用的是CIDR划分的方式,其中*可以是除了0、1、2的任何小于255的数,因为0、1、2被使用,这里设置为100,addresses这一属性就设置了虚拟机的静态IP地址
    • gateway4: 192.168.42.2,这里为之前所查看的VMnet8网关地址
    • 添加nameservers,域名服务器,并配置addresses: [114.114.114.114, 8.8.8.8],这一条配不配置都行

所有内容如下

# Let NetworkManager manage all devices on this system
network:
  version: 2
  renderer: NetworkManager
  ethernets:
          ens33:
                  dhcp4: no
                  dhcp6: no
                  addresses: [192.168.42.100/24]
                  gateway4: 192.168.42.2
                  nameservers:
                          addresses: [114.114.114.114, 8.8.8.8]

修改成功后,输入sudo netplan apply,再次输入ifconfig,查看ip地址是否改变

linkchen@master:~$ ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.42.100  netmask 255.255.255.0  broadcast 192.168.42.255
        inet6 fe80::20c:29ff:fec4:7cb  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:c4:07:cb  txqueuelen 1000  (Ethernet)
        RX packets 3933  bytes 1728376 (1.7 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 2033  bytes 226412 (226.4 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 854  bytes 87847 (87.8 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 854  bytes 87847 (87.8 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

重启VMnet8

这一步非常重要,否则主机依然会ping不通虚拟机,找到VMnet8适配器,选择禁用,过几秒钟后再启用即可

配置完成后,就可以使用静态IP地址来访问虚拟机了,如果还是连接不了,可以通过ping查看主机与虚拟机网络是否连通,如果不通可以尝试重启主机,如果正常配置则重启后,能使用静态IP来访问虚拟机

posted @ 2020-11-09 16:18  Link_Chen  阅读(1218)  评论(0编辑  收藏  举报