更改VM下Linux的IP地址,核心在于明确网络适配器的连接模式并选择正确的配置工具。最稳定且通用的方案是:将虚拟机网络设置为NAT模式或桥接模式,通过修改网卡配置文件(ifcfg-ens)设置静态IP,并重启网络服务生效。 这种方法避免了图形化工具的依赖,适用于CentOS、Ubuntu等主流发行版,能确保IP地址在重启后依然有效,彻底解决IP变动导致的连接中断问题。

确认虚拟机网络连接模式
在修改Linux内部IP之前,必须先确定VMware虚拟机网络适配器的工作模式,这是决定IP网段和连通性的前提。
- 打开虚拟机设置:在VMware界面,选中目标虚拟机,点击“编辑虚拟机设置”。
- 检查网络适配器:找到“网络适配器”选项。
- 选择连接模式:
- NAT模式:虚拟机通过宿主机的IP地址访问外网,IP地址通常由VMware的虚拟DHCP服务器分配(如192.168.x.128),此模式适合大多数开发环境,网络隔离性好。
- 桥接模式:虚拟机直接连接宿主机所在的物理网络,获取与宿主机同网段的IP,此模式下,虚拟机相当于局域网内的一台独立主机。
- 仅主机模式:仅与宿主机通信,无法访问外网,通常不推荐用于需要联网的开发场景。
建议优先选择NAT模式,并在VMware的“编辑 > 虚拟网络编辑器”中查看或设置子网IP和网关,这是后续配置静态IP的关键依据。
查看当前网络信息
登录Linux系统后,需要获取网卡名称和当前IP信息,避免配置错误。
- 执行查看命令:
在终端输入ip addr或ifconfig(部分系统需安装net-tools)。 - 定位网卡名称:
现代Linux发行版(如CentOS 7+、Ubuntu 18.04+)的网卡名称通常为ens33、ens160或eth0。 - 记录关键参数:
记录下当前的IP地址、子网掩码以及MAC地址(HWaddr),如果系统通过DHCP获取了IP,可以通过ip route命令查看默认网关。
修改网卡配置文件(核心步骤)
这是更改VM下Linux的IP最关键的一步,以CentOS 7/8为例,介绍通过修改配置文件设定静态IP的方法,这种方式具有最高的兼容性和持久性。
打开配置文件:
使用vi或vim编辑器打开网卡配置文件。vi /etc/sysconfig/network-scripts/ifcfg-ens33
(注意:文件名根据实际网卡名称变化,如ifcfg-ens160)。
修改关键参数:
将文件中的关键项修改为以下内容,实现从动态IP到静态IP的切换。- BOOTPROTO=static:将原值“dhcp”改为“static”,表示使用静态IP。
- ONBOOT=yes:确保系统启动时激活网卡。
追加IP配置:
在文件末尾添加具体的网络参数,这些数值需参考第一步在VMware虚拟网络编辑器中查到的网段。- IPADDR=192.168.133.128:设定的静态IP地址,必须在VMware配置的子网范围内。
- NETMASK=255.255.255.0:子网掩码,通常为C类地址标准掩码。
- GATEWAY=192.168.133.2:网关地址,通常为VMware虚拟网卡的IP(.2结尾)。
- DNS1=114.114.114.114:指定DNS服务器,确保能解析域名。
保存并退出:
按下Esc键,输入wq保存并退出编辑模式。
重启网络服务并验证
配置文件修改完成后,必须重启网络服务才能使新IP生效。

重启网络服务:
对于CentOS 7/8,可使用以下命令:systemctl restart network
或者针对特定网卡重启:
ifdown ens33 && ifup ens33
对于Ubuntu较新版本,可能需要使用
netplan apply或systemctl restart systemd-networkd。验证配置结果:
再次输入ip addr查看IP地址是否已变更为设定的静态IP。
使用ping命令测试连通性:ping 192.168.133.2(测试网关连通性)。ping www.baidu.com(测试外网连通性)。
如果ping不通外网,通常是DNS配置错误或网关设置不当;如果ping不通网关,则需检查VMware虚拟网络编辑器中的子网设置。
常见问题与排错方案
在实际操作中,更改IP后可能会遇到“连接失败”或“无法上网”的问题,以下是专业的排查思路。
防火墙拦截:
Linux内部防火墙可能阻止了ICMP包,可临时关闭防火墙测试:systemctl stop firewalld
如果关闭后网络通畅,则需配置防火墙规则而非直接关闭。
MAC地址冲突:
如果克隆了虚拟机,可能会出现MAC地址冲突,需在VMware设置中生成新的MAC地址,并在/etc/sysconfig/network-scripts/ifcfg-ens33中更新HWADDR参数,或删除该行让系统自动识别。NetworkManager冲突:
部分系统中,NetworkManager服务与network服务存在冲突,建议在服务器环境中关闭NetworkManager:
systemctl stop NetworkManager systemctl disable NetworkManager
Ubuntu系统的差异化配置
对于Ubuntu 18.04及以上版本,网络配置方式发生了变化,使用Netplan进行管理。
- 编辑YAML文件:
打开/etc/netplan/01-network-manager-all.yaml。 - 配置静态IP:
network: ethernets: ens33: addresses: [192.168.133.128/24] gateway4: 192.168.133.2 nameservers: addresses: [114.114.114.114, 8.8.8.8] version: 2 - 应用配置:
执行netplan apply立即生效。
注意YAML文件的缩进必须严格对齐,否则会报错。
通过上述步骤,可以高效完成更改VM下Linux的IP的任务,掌握配置文件修改法,能应对绝大多数服务器运维场景,确保网络环境的稳定性。
相关问答
为什么在VMware中设置了静态IP,重启后依然无法连接外网?
解答: 这种情况通常由三个原因导致,检查网关地址是否填写正确,VMware NAT模式下的网关通常以“.2”而非“.1”或“.254”,检查DNS服务器是否配置,如果没有配置DNS,只能通过IP访问网站,无法解析域名,检查VMware虚拟网络编辑器中的“使用本地DHCP服务将IP地址分配给虚拟机”选项是否勾选,如果设置了静态IP,建议取消该勾选,避免DHCP干扰。
修改IP后,使用Xshell等工具连接Linux非常慢,是什么原因?
解答: 连接缓慢通常与反向DNS解析有关,当SSH服务端收到连接请求时,会尝试解析客户端的IP地址,如果解析失败会等待超时,导致登录缓慢,解决方法是修改 /etc/ssh/sshd_config 文件,设置 UseDNS no,然后重启SSH服务(systemctl restart sshd),确保 /etc/hosts 文件中包含本机IP与主机名的映射,也能有效提升连接速度。
如果您在操作过程中遇到其他网络配置难题,欢迎在评论区留言讨论。
【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!
发表回复