请教:dns解析问题

26 views
Skip to first unread message

Ivan

unread,
Jan 4, 2008, 1:44:54 AM1/4/08
to sz...@googlegroups.com
各位好,
      我在fedora里面用nslookup可以解析域名,但是用ping无法解析域名,ping ip则可以ping通,这个可能是什么原因呢?


rae l

unread,
Jan 4, 2008, 2:41:08 AM1/4/08
to sz...@googlegroups.com
On Jan 4, 2008 2:44 PM, Ivan <iva...@gmail.com> wrote:
> 各位好,
> 我在fedora里面用nslookup可以解析域名,但是用ping无法解析域名,ping ip则可以ping通,这个可能是什么原因呢?
tcpdump, strace, 跟踪观察这些工具产生的53端口UDP(即DNS)流量,

# strace -e network ping -c1 kernel.org
socket(PF_INET, SOCK_RAW, IPPROTO_ICMP) = 3
socket(PF_FILE, SOCK_STREAM, 0) = 4
connect(4, {sa_family=AF_FILE, path="/var/run/nscd/socket"}, 110) = -1
ENOENT (No such file or directory)
socket(PF_FILE, SOCK_STREAM, 0) = 4
connect(4, {sa_family=AF_FILE, path="/var/run/nscd/socket"}, 110) = -1
ENOENT (No such file or directory)
socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 4
connect(4, {sa_family=AF_INET, sin_port=htons(53),
sin_addr=inet_addr("202.96.134.133")}, 28) = 0
send(4, "\330\37\1\0\0\1\0\0\0\0\0\0\6kernel\3org\0\0\1\0\1", 28,
MSG_NOSIGNAL) = 28
recvfrom(4, "\330\37\201\200\0\1\0\2\0\0\0\0\6kernel\3org\0\0\1\0\1\300\f\0\1"...,
1024, 0, {sa_family=AF_INET, sin_port=htons(53),
sin_addr=inet_addr("202.96.134.133")}, [16]) = 60
socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 4
connect(4, {sa_family=AF_INET, sin_port=htons(1025),
sin_addr=inet_addr("204.152.191.5")}, 16) = 0

Ivan

unread,
Jan 4, 2008, 6:30:40 AM1/4/08
to sz...@googlegroups.com
谢谢rae。我执行strace -e network ping -c1 kernel.org,得到下面的结果,那要怎么处理呢?不好意思,刚接触linux没多久。


socket(PF_INET, SOCK_RAW, IPPROTO_ICMP) = 3
socket(PF_FILE, SOCK_STREAM, 0)         = 4
connect(4, {sa_family=AF_FILE, path="/var/run/nscd/socket"}, 110) = -1 ENOENT (No such file or directory)
socket(PF_FILE, SOCK_STREAM, 0)         = 4
connect(4, {sa_family=AF_FILE, path="/var/run/nscd/socket"}, 110) = -1 ENOENT (No such file or directory)
ping: unknown host kernel.org
Process 30489 detached

rae l

unread,
Jan 4, 2008, 10:20:26 AM1/4/08
to sz...@googlegroups.com
On Jan 4, 2008 7:30 PM, Ivan <iva...@gmail.com> wrote:
> 谢谢rae。我执行strace -e network ping -c1
> kernel.org,得到下面的结果,那要怎么处理呢?不好意思,刚接触linux没多久。
>
> socket(PF_INET, SOCK_RAW, IPPROTO_ICMP) = 3
> socket(PF_FILE, SOCK_STREAM, 0) = 4
> connect(4, {sa_family=AF_FILE, path="/var/run/nscd/socket"}, 110) = -1
> ENOENT (No such file or directory)
> socket(PF_FILE, SOCK_STREAM, 0) = 4
> connect(4, {sa_family=AF_FILE, path="/var/run/nscd/socket"}, 110) = -1
> ENOENT (No such file or directory)
> ping: unknown host kernel.org
> Process 30489 detached
关键的内容没贴出来,

在这个正常的例子中,3号用于创建ICMP包,先创建的4号socket是UNIX域套接字,是glibc库检查nscd(某种cache)创建的,不必理会它,后创建的DGRAM类型4号socket就是用于发送DNS解析,需要观察它的行为,

> >

rae l

unread,
Jan 4, 2008, 10:23:44 AM1/4/08
to sz...@googlegroups.com
On Jan 4, 2008 7:30 PM, Ivan <iva...@gmail.com> wrote:
> 谢谢rae。我执行strace -e network ping -c1
> kernel.org,得到下面的结果,那要怎么处理呢?不好意思,刚接触linux没多久。
请注意使用有针对性的bottom-posting。

Ivan

unread,
Jan 4, 2008, 8:08:53 PM1/4/08
to sz...@googlegroups.com
没有其他内容了,到Process 30489 detached就没有东东了,我自己再研究一下吧。

Ivan

unread,
Jan 4, 2008, 8:12:31 PM1/4/08
to sz...@googlegroups.com
我用的是gmail,直接点reply就是top-post了,这个似乎设置不了?而且我订阅的其他邮件列表,一般用的都是top-post?这个邮件列表喜欢bottom-post多一点?就我自己而言,我更喜欢top-post,因为可以先看到别人的回复,引用有必要再看好了。

肖盛文

unread,
Jan 4, 2008, 10:10:49 PM1/4/08
to sz...@googlegroups.com

以前在 Debian 中文邮件列表中也看到过相关讨论,也一直没有搞明白具体是怎么
回事?
其中还提到什么邮件列表礼仪的问题。

top-post 是指在回复邮件时,将自己的答复放在邮件的前面吗?

到底哪种回复方式是符合国际惯例的呢?


Ivan 写道:
> 我用的是gmail,直接点reply就是top-post了,这个似乎设置不了?而且我订阅
> 的其他邮件列表,一般用的都是 top-post?这个邮件列表喜欢bottom-post多一
> 点?就我自己而言,我更喜欢top-post,因为可以先看到别人的回复,引用有必


> 要再看好了。
>
> On Jan 4, 2008 11:23 PM, rae l < crq...@gmail.com

> <mailto:crq...@gmail.com>> wrote:
>
> On Jan 4, 2008 7:30 PM, Ivan < iva...@gmail.com

atzlinux.vcf

Yuan Yijun

unread,
Jan 4, 2008, 10:21:24 PM1/4/08
to sz...@googlegroups.com
在 08-1-5,肖盛文<atzl...@gmail.com> 写道:

>
> 以前在 Debian 中文邮件列表中也看到过相关讨论,也一直没有搞明白具体是怎么
> 回事?
> 其中还提到什么邮件列表礼仪的问题。
>
> top-post 是指在回复邮件时,将自己的答复放在邮件的前面吗?
>
> 到底哪种回复方式是符合国际惯例的呢?
>
>

甭在乎什么国际惯例。社区的习惯是,回复时带原文回复,对原文略作裁减,回复的文字在原文后面。就像一个 你问-我答 的列表,问题之后才是答案。

--
bbbush ^_^

Zoom.Quiet

unread,
Jan 4, 2008, 10:22:14 PM1/4/08
to sz...@googlegroups.com
On Jan 5, 2008 11:10 AM, 肖盛文 <atzl...@gmail.com> wrote:
>
> 以前在 Debian 中文邮件列表中也看到过相关讨论,也一直没有搞明白具体是怎么
> 回事?
> 其中还提到什么邮件列表礼仪的问题。
>
邮件列表的规范和礼节:
http://www.woodpecker.org.cn:9081/classes/050730-CPUG/usMaillist/
会课时的相关录音资料:
http://wiki.woodpecker.org.cn/moin/BPUG/2005-07-30

实在是非常非常基础的问题

> top-post 是指在回复邮件时,将自己的答复放在邮件的前面吗?
>
> 到底哪种回复方式是符合国际惯例的呢?
>
>
> Ivan 写道:
> > 我用的是gmail,直接点reply就是top-post了,这个似乎设置不了?而且我订阅
> > 的其他邮件列表,一般用的都是 top-post?这个邮件列表喜欢bottom-post多一
> > 点?就我自己而言,我更喜欢top-post,因为可以先看到别人的回复,引用有必
> > 要再看好了。
> >
> > On Jan 4, 2008 11:23 PM, rae l < crq...@gmail.com
> > <mailto:crq...@gmail.com>> wrote:
> >
> > On Jan 4, 2008 7:30 PM, Ivan < iva...@gmail.com
> > <mailto:iva...@gmail.com>> wrote:
> > > 谢谢rae。我执行strace -e network ping -c1
> > > kernel.org,得到下面的结果,那要怎么处理呢?不好意思,刚接触
> > linux没多久。
> > 请注意使用有针对性的bottom-posting。
> >
> >
>
>

--
'''Time is unimportant, only life important!
过程改进乃是开始催生可促生靠谱的人的组织!
'''http://zoomquiet.org
博 @ http://blog.zoomquiet.org/pyblosxom/
维 @ http://wiki.woodpecker.org.cn/moin/ZoomQuiet
豆 @ http://www.douban.com/people/zoomq/
看 @ http://zoomq.haokanbu.com/
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Pls. usage OOo to replace M$ Office. http://zh.openoffice.org
Pls. usage 7-zip to replace WinRAR/WinZip. http://7-zip.org
You can get the truely Freedom 4 software.

Yuan Yijun

unread,
Jan 4, 2008, 10:32:01 PM1/4/08
to sz...@googlegroups.com
在 08-1-5,Zoom. Quiet<zoom....@gmail.com> 写道:

> 邮件列表的规范和礼节:
> http://www.woodpecker.org.cn:9081/classes/050730-CPUG/usMaillist/
> 会课时的相关录音资料:
> http://wiki.woodpecker.org.cn/moin/BPUG/2005-07-30
>
> 实在是非常非常基础的问题
>
> > > On Jan 4, 2008 7:30 PM, Ivan < iva...@gmail.com
> > > <mailto:iva...@gmail.com>> wrote:
> > > > 谢谢rae。我执行strace -e network ping -c1
> > > > kernel.org,得到下面的结果,那要怎么处理呢?不好意思,刚接触
> > > linux没多久。
> > > 请注意使用有针对性的bottom-posting。
> > >

您也不裁减原文的? @_@


在 08-1-5,Ivan<iva...@gmail.com> 写道:


> 我用的是gmail,直接点reply就是top-post了,这个似乎设置不了?而且我订阅的其他邮件列表,一般用的都是top-post?这个邮件列表喜欢bottom-post多一点?就我自己而言,我更喜欢top-post,因为可以先看到别人的回复,引用有必要再看好了。
>
>

那你不对别人的邮件原文仔细裁减的吗?回邮件要有的放矢才对。

当你在回复时,应该仔细地再看对方的邮件原文,把别人的意思搞明白。这个过程中,你的光标在一直随着邮件文本移动,看到哪儿需要回复,就立即加入两句;看到哪儿会干扰回复,就立即删掉。一直移动到引用文字的最后,觉得还有什么要说的,思考成熟了,再写。

top-post 不是邮件客户端的问题,而是人的使用习惯问题。假如光标停在最后一行,你还会把整个邮件再细细看一遍吗?

最后,写邮件的人正是为了考虑到读者,才会引用原文,让原文和自己的回复成为完整的文章。而你不是一般意义的读者。你希望别人完全不引用原文,好让你阅读方便,而
gmail 的确提供了这样的功能,默认隐藏引用文字。你希望自己也不引用原文,那么 gmail
或者任何其他客户端也提供了这个功能,为什么不设置一下呢?

谢谢!


--
bbbush ^_^

Zhang Le

unread,
Jan 5, 2008, 12:25:24 AM1/5/08
to sz...@googlegroups.com
On Jan 5, 2008 9:12 AM, Ivan <iva...@gmail.com> wrote:
> 我用的是gmail,直接点reply就是top-post了,这个似乎设置不了?而且我订阅的其他邮件列表,一般用的都是top-post?这个邮件列表喜欢bottom-post多一点?

那你加入的开源社区邮件列表太少太少太少了
或者根本不能称之为开源社区邮件列表
不为别的,只为不遵守bottom-post
放眼海内外,随便哪个开源社区邮件列表都是首选bottom-post的
Linux Kernel Mailing List,Gentoo的所有邮件列表,linux-mips.....
国内的几个lug,zh-kernel.org无不是如此

--
Zhang Le, Robert
http://r0bertz.blogspot.com
http://zh.gentoo-wiki.com
http://savannah.nongnu.org/projects/pgubook
http://groups.google.com/group/gentoo-china
http://groups.google.com/group/szlug

Ivan

unread,
Jan 5, 2008, 1:11:18 AM1/5/08
to sz...@googlegroups.com
真的很抱歉了,我还真的没有参加过Zhang Le同学"认证"过的开源社区邮件列表,只参加过Spring、appfuse、dwr、shark等的邮件列表,我原来想着这些都是开源软件,所以应该都是开源社区的邮件列表了,而且它们也都是用的top-post。原来,都是见识太少了,"不为别的,只为不遵守bottom-post"这条原来还是鉴定是不是开源社区的准则啊,长见识了,真的长见识了。

Ivan

unread,
Jan 5, 2008, 1:15:11 AM1/5/08
to sz...@googlegroups.com
我觉得这里重要的不是top或者bottom,而是信息量,也就是裁减问题,不要附带太多对别人无用的信息。就这点而言,我讨厌看到附加的签名超过3行,而且每封邮件都出现。


Zhang Le

unread,
Jan 5, 2008, 2:04:02 AM1/5/08
to sz...@googlegroups.com
On Jan 5, 2008 2:11 PM, Ivan <iva...@gmail.com> wrote:
> 真的很抱歉了,我还真的没有参加过Zhang
> Le同学"认证"过的开源社区邮件列表,只参加过Spring、appfuse、dwr、shark等的邮件列表,我原来想着这些都是开源软件,所以应该都是开源社区的邮件列表了,而且它们也都是用的top-post。原来,都是见识太少了,"不为别的,只为不遵守bottom-post"这条原来还是鉴定是不是开源社区的准则啊,长见识了,真的长见识了。

不是鉴定开源社区,而是鉴定开源社区邮件列表
你看top-posting的话,我要引用我自己原话都不方便。
一个容忍乃至推崇top-posting的邮件列表绝对不是一个典型的开源社区邮件列表
有时间研究一下 RFC1855
http://tools.ietf.org/html/rfc1855

退一万步,不管别的地方怎么样,这个社区的共识是只用bottom-posting
每个社区都有自己的行为准则,自己的一套行事方法
俗话说入乡随俗,如果没有什么不可抗拒的理由,请尽量遵守,谢谢!

Zhang Le

unread,
Jan 5, 2008, 2:16:44 AM1/5/08
to sz...@googlegroups.com
On Jan 5, 2008 2:11 PM, Ivan <iva...@gmail.com> wrote:
> 真的很抱歉了,我还真的没有参加过Zhang
> Le同学"认证"过的开源社区邮件列表,只参加过Spring、appfuse、dwr、shark等的邮件列表

不是说什么
不过,java的开源社区真的没有什么代表性
sun的java本身gpl-2也不过是最近的事,而且还现在还没有全部放出源代码
如果我只参加过java社区,我会耻于在人前提及我参加过开源社区
java的跨平台特性决定了它的开发者中使用Linux的比例不会很高
而一个社区的参与者的成分组成,可以决定这个社区的一些性质

rae l

unread,
Jan 5, 2008, 3:43:30 AM1/5/08
to sz...@googlegroups.com
On Jan 4, 2008 7:30 PM, Ivan <iva...@gmail.com> wrote:
> 谢谢rae。我执行strace -e network ping -c1
> kernel.org,得到下面的结果,那要怎么处理呢?不好意思,刚接触linux没多久。

还是回到这个问题本身的话,DNS不通可能要检查防火墙设置,SELINUX,还有DNS配置文件/etc/resolv.conf,这些很小的方面太多了,要说起来每一个方面都有可能造成DNS不通。

可以检查一下resolv.conf中的nameserver是否可以直接ping通,在另一个term上启动 tcpdump -s0
-xxvvX ip host X.X.X.X and udp port 53 来监听有无DNS流量出去,

不过这些都是从外在现象着手,

而strace和tcpdump却是终极解决方案,熟练运用它们的各种参数还能解决DNS以外的很多问题。

Zhang Le

unread,
Jan 6, 2008, 1:47:14 AM1/6/08
to sz...@googlegroups.com
On Jan 5, 2008 3:16 PM, Zhang Le <robert....@gmail.com> wrote:
> On Jan 5, 2008 2:11 PM, Ivan <iva...@gmail.com> wrote:
> > 真的很抱歉了,我还真的没有参加过Zhang
> > Le同学"认证"过的开源社区邮件列表,只参加过Spring、appfuse、dwr、shark等的邮件列表
>
> 不是说什么
> 不过,java的开源社区真的没有什么代表性
> sun的java本身gpl-2也不过是最近的事,而且还现在还没有全部放出源代码
> 如果我只参加过java社区,我会耻于在人前提及我参加过开源社区

补充一下,如果是一些自由的jvm或者类库项目,比如kaffe, gnu classpath,那自然令当别论
给你找了几个例子
http://www.kaffe.org/pipermail/kaffe/2008-January/105346.html
http://www.kaffe.org/pipermail/kaffe/2008-January/105358.html
http://developer.classpath.org/pipermail/classpath/2008-January/002389.html

> java的跨平台特性决定了它的开发者中使用Linux的比例不会很高

开发自由jvm和类库的人本身应当使用的是自由的操作系统
和开发java app的人应该有所不同

Tomsu

unread,
Jan 10, 2008, 6:10:30 AM1/10/08
to 深圳 Linux Unix 用户组

On 1月4日, 下午2时44分, Ivan <iva...@gmail.com> wrote:
> 各位好,
> 我在fedora里面用nslookup可以解析域名,但是用ping无法解析域名,ping ip则可以ping通,这个可能是什么原因呢?

我遇到了一个类似的问题。 不过是静态DNS的问题,ping可以解析正常,host nslookup dig都解析成其他地址。
希望大家能够帮忙。

debian:/# cat /etc/host.conf
order hosts,bind
multi on
debian:/# cat /etc/nsswitch.conf
hosts: files dns
networks: files
protocols: db files
services: db files
ethers: db files
rpc: db files
netgroup: nis
debian:/# cat /etc/hosts
127.0.0.1 localhost debian
192.168.0.2 test.com
debian:/# cat /etc/resolv.conf
nameserver 202.96.128.86
nameserver 202.96.134.133
debian:/# ping debian
PING localhost (127.0.0.1) 56(84) bytes of data.
64 bytes from localhost (127.0.0.1): icmp_seq=1 ttl=64 time=0.031 ms
debian:/# host debian
debian has address 59.37.71.85
Host debian not found: 3(NXDOMAIN)
Host debian not found: 3(NXDOMAIN)
debian:/# nslookup debian
Server: 202.96.128.86
Address: 202.96.128.86#53

Non-authoritative answer:
Name: debian
Address: 61.140.3.66
debian:/# cat /etc/debian_version
4.0
debian:/# uname -a
Linux debian 2.6.23.8 #2 SMP Thu Nov 22 20:36:16 CST 2007 i686 GNU/
Linux

zhangsong

unread,
Jan 10, 2008, 8:38:03 PM1/10/08
to sz...@googlegroups.com
ping 走的路径不通,所以不准

dalin

unread,
Jan 15, 2008, 3:39:26 AM1/15/08
to sz...@googlegroups.com
2008/1/10 Tomsu <hell...@gmail.com>:

ping,包括其它的一些网络客户端,会根据nsswitch里定义的解析顺序来解析域名,在这里,你是files在前,也就是先检查/etc/hosts文件。而像dig,host等DNS诊断工具则是直接连到DNS服务器进行查询。至于为什么解析出来的地址为什么不一样,我也搞不清楚。可是问题是,世界上是不是真的有叫debian的域名啊?

也许有的工具会自作聪明地在后面加上个.com或者.net之类的吧。

tomsu

unread,
Jan 15, 2008, 4:36:55 AM1/15/08
to sz...@googlegroups.com
在 08-1-15,dalin<dali...@gmail.com> 写道:

> ping,包括其它的一些网络客户端,会根据nsswitch里定义的解析顺序来解析域名,在这里,你是files在前,也就是先检查/etc/hosts文件。而像dig,host等DNS诊断工具则是直接连到DNS服务器进行查询。至于为什么解析出来的地址为什么不一样,我也搞不清楚。可是问题是,世界上是不是真的有叫debian的域名啊?
>
> 也许有的工具会自作聪明地在后面加上个.com或者.net之类的吧。
>
多谢解释。
至于DNS解析出了地址而且不同,是DNS服务器的问题。
Reply all
Reply to author
Forward
0 new messages