韶关网站建设的公司,广东前20大互联网公司,代理IP做网站,不安装word使用wordpress问题描述在使用 VMware 运行 CentOS 虚拟机时#xff0c;默认网络配置为 DHCP#xff08;动态主机配置协议#xff09;#xff0c;每次重启虚拟机或经过一段时间后#xff0c;IP 地址可能会发生变化。这种动态 IP 给日常开发带来诸多不便#xff1a;通过 SSH 连接虚拟机时…问题描述在使用 VMware 运行 CentOS 虚拟机时默认网络配置为 DHCP动态主机配置协议每次重启虚拟机或经过一段时间后IP 地址可能会发生变化。这种动态 IP 给日常开发带来诸多不便通过 SSH 连接虚拟机时需要频繁修改客户端的连接配置。使用 Redis 图形化工具如 Another Redis Desktop Manager、Redis Insight 等连接虚拟机中的 Redis 服务时每次 IP 变动都需要重新配置连接信息。其他依赖固定 IP 的服务或脚本也会因此失效。本文以 CentOS 7为例讲述如何将虚拟机的 IP 地址修改为静态 IP从而解决 IP 变动问题。解决步骤第一步查看当前网络信息首先登录虚拟机使用以下命令查看当前的网络配置ip addr show找到“2:ens33”输出大概如下2: ens33: BROADCAST,MULTICAST,UP,LOWER_UP mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 00:0c:29:25:ca:13 brd ff:ff:ff:ff:ff:ff inet 192.168.255.128/24 brd 192.168.255.255 scope global dynamic ens33 valid_lft 1789sec preferred_lft 1789sec可以看到当前 IP 为192.168.255.128/24且是动态获取的dynamic。接着查看网关信息ip route输出示例default via 192.168.255.2 dev ens33 192.168.255.0/24 dev ens33 proto kernel scope link src 192.168.255.128可以看到我的虚拟机默认网关为192.168.255.2子网为192.168.255.0/24子网掩码255.255.255.0。第二步确定可用的静态 IP 地址为了避免与 DHCP 自动分配的 IP 冲突我们需要选择一个不在 DHCP 地址池范围内的 IP。打开 VMware点击菜单编辑→虚拟网络编辑器。选中VMnet8NAT 模式然后点击DHCP 设置查看地址池范围。从截图可知该网络的 DHCP 分配范围为192.168.255.128到192.168.255.254。因此我们可以选用192.168.255.1到192.168.255.127之间的任意一个未被占用的 IP。推荐使用192.168.255.100既好记又安全。第三步修改网卡配置文件在 CentOS 中网卡配置文件位于/etc/sysconfig/network-scripts/ifcfg-ens33ens33是网卡名称可能因系统而异。使用 vi 或其他编辑器编辑该文件也可以直接打开该文件修改sudo vi /etc/sysconfig/network-scripts/ifcfg-ens33原始文件内容大致如下TYPEEthernet PROXY_METHODnone BROWSER_ONLYno BOOTPROTOdhcp # 需要修改 DEFROUTEyes IPV4_FAILURE_FATALno IPV6INITyes IPV6_AUTOCONFyes IPV6_DEFROUTEyes IPV6_FAILURE_FATALno IPV6_ADDR_GEN_MODEstable-privacy NAMEens33 UUIDbaa92013-ab6d-462d-a9ef-01b58e503b76 # 请保留你自己的 UUID DEVICEens33 ONBOOTyes将BOOTPROTOdhcp改为BOOTPROTOstatic并在文件末尾添加以下静态 IP 配置IPADDR192.168.255.100 NETMASK255.255.255.0 GATEWAY192.168.255.2 DNS1114.114.114.114 DNS2223.5.5.5IPADDR你选定的固定 IP。推荐192.168.255.100但是其实只要在DHCP范围之外其实都可以。NETMASK子网掩码与之前查到的一致。GATEWAY网关地址通过ip route已确认。注意这里需要替换成你自己的网关地址在前面查过。DNS1/DNS2推荐使用国内公共 DNS确保域名解析稳定。修改后的完整文件示例如下请根据你自己的实际情况调整TYPEEthernet PROXY_METHODnone BROWSER_ONLYno BOOTPROTOstatic DEFROUTEyes IPV4_FAILURE_FATALno IPV6INITyes IPV6_AUTOCONFyes IPV6_DEFROUTEyes IPV6_FAILURE_FATALno IPV6_ADDR_GEN_MODEstable-privacy NAMEens33 UUIDbaa92013-ab6d-462d-a9ef-01b58e503b76 DEVICEens33 ONBOOTyes IPADDR192.168.255.100 NETMASK255.255.255.0 GATEWAY192.168.255.2 DNS1114.114.114.114 DNS2223.5.5.5保存并退出vi 中按ESC输入:wq回车。第四步重启网络服务并验证重启网络服务使配置生效sudo systemctl restart network如果你用ssh的是进行操作运行完这个命令之后当前的ssh连接就失效了因为虚拟机ip地址变成刚刚设置的那个了如果系统提示network服务不存在可能是使用了 NetworkManager请执行sudo systemctl restart NetworkManager重启后使用ip addr show ens33验证 IP 是否已更改为静态ip addr show ens33预期输出中应包含inet 192.168.255.100/24 brd 192.168.255.255 scope global ens33第五步测试网络连通性确保虚拟机可以正常访问外网和进行域名解析ping -c 4 8.8.8.8 # 测试外网 IP 连通性 ping -c 4 www.baidu.com # 测试 DNS 解析如果都通说明静态 IP 配置成功。总结通过以上步骤我们成功将 VMware 中 CentOS 虚拟机的 IP 地址固定为192.168.255.100。从此SSH 连接、Redis 图形化工具以及其他依赖固定 IP 的服务都可以稳定使用该地址不用再频繁修改配置了注意事项确保所选的静态 IP 不在 VMware DHCP 地址池范围内以避免 IP 冲突。配置文件中的UUID字段务必保留原值不要随意更改。如果之后在 VMware 中重置了虚拟网络设置如还原默认配置网关和子网可能会变化需要相应调整虚拟机内的静态 IP 配置。希望这篇博客能帮助到遇到同样问题的友友们欢迎留言交流。