web-dev-qa-db-ja.com

`Host`を使用してDNS経由でホスト名を解決できますが、ping / ssh / ntpはできません

ローカルネットワークをセットアップし、DNSサーバーを構成しました。 DNSサーバーに照会することでホスト名を解決できますが、プログラムはそれらを検索できません。

Libnss-mdnsをアンインストールし、avahi-daemonを削除し、その後再起動しました。

ここではいくつかの例を示します。

root@cloud2:~# Host ns.example.com
ns.example.com has address 10.10.10.100
root@cloud2:~# ping ns.example.com
ping: unknown Host ns.example.com

root@cloud2:~# grep hosts /etc/nsswitch.conf 
hosts:          files dns

私のntpサーバーはns.example.com用に設定されていますが、私が得るのはntpq上のnxdomainだけです

何か案は?

編集:

これは外部DNSエントリにも適用されます。カスタムDNSサーバーのDNSフォワーダーとresolvconfのエントリの両方としてルーターを使用しています。

例えば。

root@cloud2:~# Host google.com | head
google.com has address 74.125.225.65
google.com has address 74.125.225.66
google.com has address 74.125.225.67
google.com has address 74.125.225.68
google.com has address 74.125.225.69
google.com has address 74.125.225.70
google.com has address 74.125.225.71
google.com has address 74.125.225.72
google.com has address 74.125.225.73
google.com has address 74.125.225.78
root@cloud2:~# traceroute google.com
google.com: Temporary failure in name resolution
Cannot handle "Host" cmdline arg `google.com' on position 1 (argc 1)
6
zje

これはUbuntuサーバー12.04 LTSおよびUbuntu 12.04 LTSにありました

助けてくれてありがとう。 Hostとglibcリゾルバーが/etc/resolv.confを読み取る方法の違いの結果であることが判明しました。

/etc/resolvconf/resolv.conf.d/の適切なファイルを編集するパペットモジュールでresolv.confを管理していました。

このパペットモジュールは、次のような/etc/resolv.confを生成しました。

 nameserver 10.10.10.100
 nameserver 192.168.3.100
 nameserver 10.10.10.1

 search example.com

各行の先頭にスペースがあります。これらのスペースを削除した後、pingと手動のルックアップ(Host/nslookup/etc ...)の両方で解決できました。

他のOSでも問題なくこれらのスペースがあったことを誓うことができましたが、SL6.3ボックスを試してみたところ、同じ動作を引き起こしました。

ご協力いただきありがとうございます、ごめんなさい!

4
zje

使用している接続タイプごとにdns configを提供する必要があります。

Network Managerは友達です(またはDHCPを使用している場合は、そこでDNSを構成してください)

0
przemo_li