linux ping: unknown host 的解决方法

如果某台Linux服务器ping不通域名, 如下提示:

# ping www.baidu.com
ping: unknown host www.baidu.com

如果确定网络没问题的情况下, 可以通过如下步骤寻找解决办法:

1) 确定设置了域名服务器, 没有的话, 建议设置Google的公共DNS服务, 它应该不会出问题的

# cat /etc/resolv.conf
-------------------------------------------------------------------
nameserver 8.8.8.8
nameserver 8.8.4.4
-------------------------------------------------------------------

2) 确保网关已设置

# grep GATEWAY /etc/sysconfig/network-scripts/ifcfg*
-------------------------------------------------------------------
/etc/sysconfig/network-scripts/ifcfg-eth0:GATEWAY=192.168.40.1
-------------------------------------------------------------------
ps:ubuntu 10.3 找不到此文件,也许版本不对

3) 确保可用dns解析

# grep hosts /etc/nsswitch.conf
-------------------------------------------------------------------
hosts: files dns
-------------------------------------------------------------------

如果以上哪个有问题, 修正后, 再测试, 应该就没问题了:

#ping -c 3 www.baidu.com
PING www.a.shifen.com (220.181.6.175) 56(84) bytes of data.
64 bytes from 220.181.6.175: icmp_seq=0 ttl=50 time=9.51 ms
64 bytes from 220.181.6.175: icmp_seq=1 ttl=50 time=8.45 ms
64 bytes from 220.181.6.175: icmp_seq=2 ttl=50 time=8.97 ms
--- www.a.shifen.com ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 8.450/8.977/9.511/0.446 ms, pipe 2
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Linux 是一种强大的操作系统,它运行在许多服务器和计算机上,但当你发现你的 Linux 发行版 ping 不到一个主机时,你可能会感到困惑。如果在运行Linux的计算机上ping一个 IP 地址,它通常会返回响应。但是如果尝试ping一个域名,会出现“unknown host”错误信息,这是由于主机名不能被解析到 IP 地址所导致的。 首先,我们必须理解当我们ping一个域名时,Linux会使用Domain Name System(DNS)来查找并解析域名的IP地址。如果您的DNS设置不正确或网络不正常,则可能会导致无法ping到主机的问题。 首先,您需要检查您的 DNS 设置是否正确。您可以检查您的resolv.conf文件是否正确配置。该文件包含了DNS服务器的地址列表,如果它为空或包含错误的地址,则您将无法ping到网络上的主机。您可以使用以下命令来编辑resolv.conf文件: sudo nano /etc/resolv.conf 编辑完成后,保存并关闭该文件,然后将DNS服务器重启。 其次,如果您的网络环境正常,但是ping不到域名仍然显示“unknown host”的错误信息,则可能是由于DNS缓存中的数据损坏所致。您可以使用以下命令来清空DNS缓存: sudo systemd-resolve --flush-caches sudo systemctl restart systemd-resolved 最后,如果上述两种情况都不起作用,则您可以尝试使用以下命令手动将域名映射到IP地址: sudo nano /etc/hosts 在打开的文件中输入“ip地址 域名”,保存并关闭文件。这将强制系统使用您指定的IP地址来ping域名。 总结而言,当您的Linux发行版ping不到主机时,我们首先建议您检查DNS设置是否正确并清空DNS缓存,然后手动将域名映射到IP地址。如果这些方法仍然没有解决问题,则可能是您的网络环境中存在更深入的问题,您可能需要寻求更高级的技术支持来修复它。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值