以下方法参考《鸟哥的Linux私房菜(第四版)》 第20章 基础系统设置与备份策略 —>20.1 系统基本设置 ——>20.1.1 网络设置(手动设置与DHCP自动获取)
1 确认虚拟机使用的网络连接
2 确认WMware的NAT网络设置信息
2.1 虚拟网络编辑器
2.2 虚拟网络编辑器-NAT设置
2.3 虚拟网络编辑器-DHCP设置
3 使用nmcli命令设置虚拟机静态IP
3.1 确认网卡名称
nmcli connection show

NAME:连接代号,通常与后面的网卡DEVICE一样。UUID:网卡设备标识代码,通常不用管。TYPE:网卡类型,通常就是以太网卡(ethernet)。-
3.2 查看当前网卡配置
nmcli connection show 网卡名称
关键配置信息如下:
[admin@localhost ~]$ nmcli connection show ens32connection.id: ens32connection.uuid: bed2e919-91b9-4283-b913-77a770336c0bconnection.stable-id: --connection.type: 802-3-ethernetconnection.interface-name: ens32connection.autoconnect: yes······(中间省略)······ipv4.method: autoipv4.dns: --ipv4.dns-search: --ipv4.dns-options: ""ipv4.dns-priority: 0ipv4.addresses: --ipv4.gateway: --······(中间省略)······IP4.ADDRESS[1]: 192.168.106.128/24IP4.GATEWAY: 192.168.106.2IP4.ROUTE[1]: dst = 0.0.0.0/0, nh = 192.168.106.2, mt = 100IP4.ROUTE[2]: dst = 192.168.106.0/24, nh = 0.0.0.0, mt = 100IP4.DNS[1]: 192.168.106.2IP4.DOMAIN[1]: localdomain
connection开头的部分是连接的状态,大写的IP4开头的部分是目前实际使用的网络参数。
connection.autoconnect:[yes|no],是否开机启动这个连接,通常默认是yesipv4.method:[auto|manual],自动获取还是手动设置网络参数ipv4.addresses:[IP/Netmask],IP和netmask的集合,中间用斜线/隔开ipv4.gateway:[gw_ip],填写gateway的IP地址ipv4.dns:[dns_server_ip],填写DNS的IP地址3.3 设置网络参数(静态IP)
sudo nmcli connection modify 网卡名称 网络参数1 网络参数1的值 网络参数2 网络参数2的值 ...
使用上面的命令格式进行设置:
[admin@localhost ~]$ sudo nmcli connection modify ens32 connection.autoconnect yes ipv4.method manual ipv4.addresses 192.168.106.132/24 ipv4.gateway 192.168.106.2 ipv4.dns 192.168.106.2[sudo] password for admin:[admin@localhost ~]$
connection.autoconnect:yes,设置网络连接开机自启。ipv4.method:manual,网络参数为手动设置。ipv4.addresses:IP地址从2.3虚拟网络编辑器-DHCP设置中的起始IP地址和结束IP地址范围内随便选一个,我这里选的是192.168.106.132。
子网掩码设置值24相当于255.255.255.0
ipv4.gateway:设置为2.2虚拟网络编辑器-NAT设置中的网关IP。ipv4.dns:设置值与网关IP一致。
设置后再次查看网络关键配置信息:
[admin@localhost ~]$ nmcli connection show ens32connection.id: ens32connection.uuid: bed2e919-91b9-4283-b913-77a770336c0bconnection.stable-id: --connection.type: 802-3-ethernetconnection.interface-name: ens32connection.autoconnect: yes······(中间省略)······ipv4.method: manualipv4.dns: 192.168.106.2ipv4.dns-search: --ipv4.dns-options: ""ipv4.dns-priority: 0ipv4.addresses: 192.168.106.132/24ipv4.gateway: 192.168.106.2······(中间省略)······IP4.ADDRESS[1]: 192.168.106.128/24IP4.GATEWAY: 192.168.106.2IP4.ROUTE[1]: dst = 0.0.0.0/0, nh = 192.168.106.2, mt = 100IP4.ROUTE[2]: dst = 192.168.106.0/24, nh = 0.0.0.0, mt = 100IP4.DNS[1]: 192.168.106.2IP4.DOMAIN[1]: localdomain
3.4 重启网络服务
重启网络服务,使配置生效。
systemctl restart network.service
[admin@localhost ~]$ sudo systemctl restart network.service[sudo] password for admin:[admin@localhost ~]$
再次查看网络关键配置信息:
[admin@localhost ~]$ nmcli connection show ens32connection.id: ens32connection.uuid: bed2e919-91b9-4283-b913-77a770336c0bconnection.stable-id: --connection.type: 802-3-ethernetconnection.interface-name: ens32connection.autoconnect: yes······(中间省略)······ipv4.method: manualipv4.dns: 192.168.106.2ipv4.dns-search: --ipv4.dns-options: ""ipv4.dns-priority: 0ipv4.addresses: 192.168.106.132/24ipv4.gateway: 192.168.106.2······(中间省略)······IP4.ADDRESS[1]: 192.168.106.132/24IP4.GATEWAY: 192.168.106.2IP4.ROUTE[1]: dst = 192.168.106.0/24, nh = 0.0.0.0, mt = 100IP4.ROUTE[2]: dst = 0.0.0.0/0, nh = 192.168.106.2, mt = 100IP4.DNS[1]: 192.168.106.2
4 END
使用nmcli命令设置的参数信息,会写入到网卡配置文件ifcfg-ens32中。
相较于网上其他的直接修改网卡配置文件的方式,我觉得使用nmcli命令的方式更舒服。
最后,补个使用nmcli命令设置完后网卡配置文件的内容图:
