私のラップトップはバイオニックを実行しており、巧妙に実行しており、数週間前にaptを介して完全なアップグレードを完了し、すべてが正常に機能していますが、nasに接続しようとするとFQDNが解決されず、IPなどを介して接続できます2003年にredhat linuxで最後に作業してから、Linuxに起こった大きな変化に追いつく必要がありました。
ネットワークマネージャーとsystemdができました。これらは古いUNIXのやり方からの大きな変更であり、進化の理由がわかります。 ;-) systemdリゾルバはdnsmasqに交換でき、ネットワークマネージャにはdnsmasqで動作するプラグインがあります。私が推測できないのは、なぜUbuntuがDNSルックアップをルーターに正しく転送していないのですか?ルーターはネットワーク上の特定のサービスに静的なDNSエントリを提供できます。これは、ウィンドウとmacosで完全に機能します。
これを解決するために、systemdリゾルバで正しく動作していませんでした。dnsmasqに交換しましたが、まだ葉巻はありません:-/
ラップトップはdhcpを介してIPを正しくピックアップし、ネットワークマネージャーは/etc/resolv.confにdnsのルーターIPを正しく入力します。
通常のインターネットDNS解決は正常に機能しています。ネットワークマネージャーが提供する自動DNSリゾルバーエントリをオフにすると、/ etc/resolv.confにエントリがなく、インターネットDNSが期待どおりに壊れます。これはまた、私のラップトップがローカルで解決できないDNSクエリも転送していることを証明しています。
何が間違っているのかについて完全に迷っています。ネットワークマネージャやdnsmasqでの可能なqwerksに関するガイダンスはありがたいことに感謝します。また、誰かがLinux DNS 2016/17の本当に優れた技術的な詳細へのリンクを持っているなら、それは大きな助けになるでしょう。
私は自分の問題を解決したので、他の人が役に立つと思うように解決策を提供しています。
Linux dns client issues のトラブルシューティングに関するブログを読んでいて、/ etc/nsswitch.confに私のエントリと同じエントリがないことがわかりました。
私のように見えた:
ホスト:ファイルmdns4_minimal [NOTFOUND = return] dns myhostname
ブログのエントリは次のようになりました。
ホスト:ファイルdns myhostname
DNS /ネットワークサービスを再起動したときにmdns4_minimalおよび[NOTFOUND = return]を削除すると、FQDN解決が機能し始めました。だから、実際に何をmdns4_minimalと[NOTFOUND = return]を調査することにしました行う。次に、askubuntu.comで、私の 問題 の実際の原因を説明する別の質問に出会いました。
私のように、内部ネットワークのDNSに.localドメインを使用している場合、このtldはBonjourのようなサービスのmDNSマルチキャストDNSにも使用されます。 DNSを正しく機能させるには、mdnsよりもdnsを優先して動作させる必要があります。
/etc/nsswitch.confファイルを元の状態に戻し、次の変更を加えました。
ホスト:ファイルdns [NOTFOUND = return] mdns4_minimal mdns4
ご覧のとおり、dnsはmdns4よりも優先され、ローカルリゾルバーはネットワークdnsにクエリを実行し、予想される結果を返します。
〜$ ping nas01.home.local
PING nas01.home.local(192.168.1.101)56(84)バイトのデータ。
nas01.home.local(192.168.1.101)からの64バイト:icmp_seq = 1 ttl = 64 time = 0.196 ms
nas01.home.local(192.168.1.101)からの64バイト:icmp_seq = 2 ttl = 64 time = 0.279 ms
nas01.home.local(192.168.1.101)からの64バイト:icmp_seq = 3 ttl = 64 time = 0.243 ms
ほとんどの人が自宅や研究室で.localを使用する可能性は低いでしょうが、インターネットtldではないため、エンタープライズ環境でも使用することを常に好みます。