以下方法参考《鸟哥的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 ens32
connection.id: ens32
connection.uuid: bed2e919-91b9-4283-b913-77a770336c0b
connection.stable-id: --
connection.type: 802-3-ethernet
connection.interface-name: ens32
connection.autoconnect: yes
······(中间省略)······
ipv4.method: auto
ipv4.dns: --
ipv4.dns-search: --
ipv4.dns-options: ""
ipv4.dns-priority: 0
ipv4.addresses: --
ipv4.gateway: --
······(中间省略)······
IP4.ADDRESS[1]: 192.168.106.128/24
IP4.GATEWAY: 192.168.106.2
IP4.ROUTE[1]: dst = 0.0.0.0/0, nh = 192.168.106.2, mt = 100
IP4.ROUTE[2]: dst = 192.168.106.0/24, nh = 0.0.0.0, mt = 100
IP4.DNS[1]: 192.168.106.2
IP4.DOMAIN[1]: localdomain
connection开头的部分是连接的状态,大写的IP4开头的部分是目前实际使用的网络参数。
connection.autoconnect
:[yes|no]
,是否开机启动这个连接,通常默认是yes
ipv4.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 ens32
connection.id: ens32
connection.uuid: bed2e919-91b9-4283-b913-77a770336c0b
connection.stable-id: --
connection.type: 802-3-ethernet
connection.interface-name: ens32
connection.autoconnect: yes
······(中间省略)······
ipv4.method: manual
ipv4.dns: 192.168.106.2
ipv4.dns-search: --
ipv4.dns-options: ""
ipv4.dns-priority: 0
ipv4.addresses: 192.168.106.132/24
ipv4.gateway: 192.168.106.2
······(中间省略)······
IP4.ADDRESS[1]: 192.168.106.128/24
IP4.GATEWAY: 192.168.106.2
IP4.ROUTE[1]: dst = 0.0.0.0/0, nh = 192.168.106.2, mt = 100
IP4.ROUTE[2]: dst = 192.168.106.0/24, nh = 0.0.0.0, mt = 100
IP4.DNS[1]: 192.168.106.2
IP4.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 ens32
connection.id: ens32
connection.uuid: bed2e919-91b9-4283-b913-77a770336c0b
connection.stable-id: --
connection.type: 802-3-ethernet
connection.interface-name: ens32
connection.autoconnect: yes
······(中间省略)······
ipv4.method: manual
ipv4.dns: 192.168.106.2
ipv4.dns-search: --
ipv4.dns-options: ""
ipv4.dns-priority: 0
ipv4.addresses: 192.168.106.132/24
ipv4.gateway: 192.168.106.2
······(中间省略)······
IP4.ADDRESS[1]: 192.168.106.132/24
IP4.GATEWAY: 192.168.106.2
IP4.ROUTE[1]: dst = 192.168.106.0/24, nh = 0.0.0.0, mt = 100
IP4.ROUTE[2]: dst = 0.0.0.0/0, nh = 192.168.106.2, mt = 100
IP4.DNS[1]: 192.168.106.2
4 END
使用nmcli命令
设置的参数信息,会写入到网卡配置文件ifcfg-ens32
中。
相较于网上其他的直接修改网卡配置文件的方式,我觉得使用nmcli命令
的方式更舒服。
最后,补个使用nmcli命令
设置完后网卡配置文件的内容图: