為什麼 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 ...

解決了這個問題。

(我暫時保留這個問題,以防萬一有人能對此做出解釋。)

相關內容