CENTOS7配置静态IP后无法ping通外部网络的问题

本文详细探讨了在Linux系统中配置静态IP时遇到的各种问题,特别是配置后无法连接外网的情况,并提供了一套完整的解决方案。文章重点介绍了如何正确配置网络接口文件ifcfg-ens33,确保DNS设置有效,实现稳定上网。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我今天想谈论的并不是如何配置静态IP,这样的话题已经有好多高手再谈。

我想谈的是为什么,我按照他们的教程无论如何也要发生各种问题,没办法连接外网的问题。

先给大家看我的最终版配置方案:我只修改了一个文件,修改的部分已经红色标出。注:这个配置足够解决所有问题,不需要修改其他地方

vi /etc/sysconfig/network-scripts/ifcfg-ens33

TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="a8f0def7-cd82-4e97-9615-fc4001fd2282"
DEVICE="ens33"
IPADDR=192.168.148.133
GATEWAY=192.168.148.2
NETMASK=255.255.255.0
DNS1=8.8.8.8
DNS2=8.8.4.4
ONBOOT="yes"

 可是为社么如此简单的配置,我反复试了很多次,各个字段的意思我明明已经理解,可是依然会出各种问题。

比如操作系统 ping www.baidu.com的时候  报出 name or service not known

我试过很多种修改方法,大家一致认为是DNS没有配置好导致的。可是依然有很多朋友发现,虽然我按照各种教程配置了DNS,比如上图中添加DNS1,或者修改/etc/resolv.conf,结果依然是没有任何变化。其实配置网络这个事情属于小儿科的把戏,所以能配置成功的人未必是高手。所以大家都是在不停尝试,成功就是成功,不成功就是不成功。你运气差罢了

我想谈的一个结论就是。上面的红色配置已经足够配置IP并且ping桶www.baidu.com.不需要修改其他地方,其实很多人发现修改vi /etc/resolv.conf没有效果,网络重启后就被清空了。而上面配置文件中配置DNS1后会自动修改这个文件。

 

那么大家的原因在哪里的,我觉得很有可能是复制粘贴的问题。我给大家一个简单的步骤重新开始一遍所有过程。假设你刚装好虚拟机,本身自动分配ip(BOOTPROTO="DHCP")的时候是可以ping baidu.com。但是配置静态IP后却无法ping通baidu.com的情况的解决方法

1,确认配置之前是否可以ping baidu.com如果不可以,就重新安装吧,或者自己解决

2,vi /etc/sysconfig/network-scripts/ifcfg-*这个文件打开后,请不要复制粘贴别人的内容,请手工修改红色部分

3,service network start重启网络。ping baidu.com看是否能够成功

vi /etc/sysconfig/network-scripts/ifcfg-ens33

 

注释:参照我的配置文件只修改红色部分,所有的都可以一模一样。但是下面两项需要写自己指定的ip,不要和我一样。你本来ip是多少就写多少。

IPADDR确定好后。GATEWAY的最后一个改成2就好。

 

IPADDR=192.168.148.133
GATEWAY=192.168.148.2


我猜测是因为手工粘贴可能混入了一些特殊字符,所以导致配置文件读取不正确。请大家相信我配置了很多次,遇到了各种问题,最终只配置了一个文件解决了。

 

转载于:https://www.cnblogs.com/kouryoushine/p/8011978.html

### 设置静态 IP 地址 为了在 VMware 虚拟机上的 CentOS 7 中设置静态 IP 地址,可以按照如下方法操作: #### 修改网络接口配置文件 在网络接口配置文件中指定静态 IP 地址。常情况下,该文件位于 `/etc/sysconfig/network-scripts/` 目录下,名为 `ifcfg-eth0` 或者带有其他编号的网卡名。 编辑对应的网络脚本文件并修改其内容以适应所需的固定 IP 配置[^2]: ```bash sudo vi /etc/sysconfig/network-scripts/ifcfg-ens33 ``` 确保文件内含有以下参数来设定静态 IP 地址: - `BOOTPROTO=static`: 表明使用静态分配方式而非 DHCP 自动获取。 - `ONBOOT=yes`: 确认开机自动启动此网络设备。 - `IPADDR=<Your_IP_Address>`: 将 `<Your_IP_Address>` 替换成希望使用的具体 IPv4 地址。 - `NETMASK=<Subnet_Mask>`: 输入子网掩码值;对于大多数局域网而言常是 `255.255.255.0`。 - `GATEWAY=<Gateway_Address>`: 设定往外部互联网的默认网关地址。 - `DNS1=<Primary_DNS_Server>` 和 `DNS2=<Secondary_DNS_Server>` (可选): 如果需要的话还可以指派首选和备用 DNS 解析服务器。 保存更改后的配置文件,并重启网络服务使新设置生效: ```bash sudo systemctl restart network ``` 也可以过命令行工具 nmtui 来图形化地完成上述步骤中的部分工作[^3]。 验证新的网络连接状态是否正常以及能否成功解析域名访问 Internet: ```bash ping www.google.com ``` 如果一切顺利,则说明已正确设置了静态 IP 地址。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值