Linux 能PING IP 但不能PING 主机域名的解决方法
来源:互联网 发布:淘宝女装数据包 编辑:程序博客网 时间:2024/05/22 03:04
vi /etc/nsswitch.conf
hosts: files dns
networks: files
改成:
hosts: files dns wins
networks: files
如果不一样的话,就在hosts:原来那行后面加个wins 就行了。
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
最近碰到了这么一个问题: ping一个域名domain_name的时候提示”ping: unknown host domain_name“,但是ping域名对应的IP地址 (使用host或nslookup获取) 却没有问题。
libc && glibc
标准C库 (the standard C library) 实现了ISO C标准,包含了一套所有C程序都可以使用的函数。libc通常被用作the standard C library的简写。
libc也被用作一个标准C库的实现的名字。在19世纪90年代早期,Linux内核的开发者把glibc 1.x独立了出来 (forked glibc),并把它称为”Linux libc”,也简称为libc。Linux libc主要发布了2, 3, 4, 5四个版本。
1997年,FSF发布了glibc 2.0,它对POSIX标准有更好的支持,并且代码的可移植性更好。因此,现在所有主要的Linux发行版都是使用glibc。
Linux libc的最后的so-name是libc.so.5。因此后来的glibc 2.x使用的so-name是libc.so.6。
网络信息服务(Network Information Service, NIS)
NIS也曾被称YP (Yellow Pages),它是一个基于RPC (Remote Procedure Call Protocol) 的客户机/服务器系统,允许一个NIS域中的一组机器共享一系列配置文件。在NIS环境中,有主服务器、从服务器和客户机三种类型的主机。服务器的作用是充当主机配置信息的中央数据库。主服务器上保存着这些信息的权威副本,而从服务器则是保存这些信息的冗余副本。客户机依赖于服务器向它们提供这些信息。
DNS Resolver
一个域名 (Domain Name) 由一个或多个标签 (label) 组成,标签之间用点隔开。最右端的标签代表顶级域 (top-level domain,TLD)。DNS (Domain Name System, 域名解析系统) 是互联网的一项核心服务,它是一个分布式层次化的系统,能够将域名和IP地址相互映射。DNS通过允许一个域名服务器把它的一部分域名解析服务委托给子服务器而实现了一种层次化的域名空间。DNS由解析器 (Resolver) 和域名服务器两部分组成。
DNS系统的客户端被称为DNS解析器 (DNS Resolver)。在Linux系统上,解析器并不是特指某个应用程序,而是指解析器库。这个库包含了标准C库中的一系列函数,最主要的两个函数是gethostbyname()
和gethostbyaddr()
。可以对DNS解析器进行配置,使得它们查找/etc/hosts
中的信息、查询DNS服务器或者使用网络信息服务系统的配置信息。libc使用/etc/host.conf
配置文件;glibc使用/etc/nsswitch.conf
配置文件。
/etc/host.conf
中主要的选项有:(1) order指定域名解析的查找顺序,其中hosts表示/etc/hosts
配置文件;bind表示查询DNS服务器;nis表示查询NIS系统的配置信息。(2) multi [on|off]指定/etc/hosts
中的主机是否可以有多个IP地址。
/etc/nsswitch.conf
是名字服务开关 (name service switch) 的配置文件,其中对应DNS解析器的数据库名字是hosts:。它的主要选项有:(1) dns表示使用DNS解析地址 (2) files表示使用/etc/hosts
和/etc/network
配置文件 (3) nis或nisplus。
DNS服务器在/etc/resolv.conf中配置。
ping
ping命令用来测试网络上的一台主机是否能够连通。ping命令向目标主机发送ICMP (Internet Control Message Protocol) 回声请求消息然后等待目标主机的回应,与此同时计算消息从源主机到目标主机的往返时间 (round-trip time,RTT)。
问题解决
首先,能够ping域名对应的IP,显然不可能是服务器禁止了ping服务 (使用防火墙等)。host和nslookup能够返回域名对应的IP地址,那么/etc/resolv.conf
中的DNS设置也是没有问题的。
事实上,使用ping命令处理一个域名的时候,是使用gethostbyname()
函数返回对应的主机信息 (参加源代码); 而host和nslookup则是直接使用/etc/resolv.conf
中的DNS服务器。因此,需要查看/etc/nsswitch.conf
中的hosts:数据库是否打开了dns选项。
- Linux Ubuntu 能PING IP但不能PING主机域名的解决方法
- Linux 能PING IP 但不能PING 主机域名的解决方法
- Linux Ubuntu 能PING IP但不能PING主机域名的解决方法
- 能ping通ip地址,但不能ping通域名
- linux不能ping通域名能ping通ip
- linux不能ping通域名能ping通ip
- linux下能ping ip不能ping域名详解
- Linux中能ping通ip 不能ping通域名
- linux不能ping通域名能ping通ip
- VMware下配置Linux IP,解决Linux ping不通,但主机能ping 通linux
- 解决linux主机ping不通域名但是能ping通IP
- Linux能ping通IP,ping不通域名
- 能ping通不能上网的解决方法。
- VMware中linux,主机能ping通虚拟机,虚拟机不能ping通主机
- vmware Ubuntu 11.10 能ping ip 不能ping 域名和上网
- 虚拟机不能ping通主机,主机能ping通虚拟机
- linux dhcp(能获取ip,但ping不通)
- 虚拟机linux能ping通主机不能上网解决办法
- Linux中__iomem
- android 按home键返回到桌面后,再按桌面应用图标又重新打开该应用的解决方法
- iOS7教程系列:自定义导航转场动画以及更多
- SSMA(Sql Server迁移助手)oracle to sqlserver2008 R2
- 展望未来,总结过去10年的程序员生涯
- Linux 能PING IP 但不能PING 主机域名的解决方法
- TimeStamp类
- 温故知新
- 用Balder开源3D引擎实现Silverlight客户端的3D 地图效果
- 结构体申请内存错误 传递了一个指针的拷贝
- FireFox同步书签
- SSMA Oracle to SQL Server data migration step fails with no explanation
- C++的指针的简单使用
- 如何正确删除ORACLE归档日志文件