为什么 hostname --fqdn 只返回域名?

为什么 hostname --fqdn 只返回域名?

相关文件(略有匿名):

heinzi@d2:~$ cat /etc/hostname
d2
heinzi@d2:~$ cat /etc/hosts
127.0.0.1       localhost
<myexternalip>  d2.<myname>.at    <myname>.<myprovider>.at       <myname>

# The following lines are desirable for IPv6 capable hosts
::1     localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

这个输出是正确的:

heinzi@d2:~$ hostname
d2
heinzi@d2:~$ hostname --all-fqdns
d2.<myname>.at

但这我不明白:

heinzi@d2:~$ hostname --fqdn
<myprovider>.at

难道不是吗d2.<myname>.at,因为这是之后的第一个条目<myexternalip>?如果是第二个条目,难道不应该用<myname>.<myprovider>.at域名来代替吗?

我知道我可以通过使用主机文件来解决这个问题,但我真的很想理解为什么会发生这种情况。我阅读了主机名手册页并用谷歌搜索并认为它应该返回d2.<myname>.at我的情况。因此,我真的更喜欢这样的答案“这是因为 ...“ 代替 ”尝试一下...看看是否有效。”。

该系统是 Debian 7.5“喘息”。

答案1

事实证明,罪魁祸首是/etc/resolv.conf。改变:

search <myprovider>.at
nameserver ...
nameserver ...
nameserver ...

search <myname>.at <myprovider>.at
nameserver ...
nameserver ...
nameserver ...

解决了这个问题。

(我暂时保留这个问题,以防万一有人能对此做出解释。)

相关内容