Ubuntu 18.04.1サーバーで非常に奇妙な問題があり、デフォルトのリゾルバーsystemd-resolved
が特定のドメイン名を解決していません。
確実に失敗するのはstephenreescarter.net
です。
valorin@wp:~$ Dig stephenreescarter.net
; <<>> Dig 9.11.3-1ubuntu1.3-Ubuntu <<>> stephenreescarter.net
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 7015
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;stephenreescarter.net. IN A
;; Query time: 0 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; WHEN: Sun Jan 27 20:01:05 UTC 2019
;; MSG SIZE rcvd: 50
しかし、ドメイン自体は問題なく、他のあらゆる場所で機能します。
valorin@wp:~$ Dig stephenreescarter.net @1.1.1.1
; <<>> Dig 9.11.3-1ubuntu1.3-Ubuntu <<>> stephenreescarter.net @1.1.1.1
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 45539
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 1452
;; QUESTION SECTION:
;stephenreescarter.net. IN A
;; ANSWER SECTION:
stephenreescarter.net. 228 IN A 104.28.2.92
stephenreescarter.net. 228 IN A 104.28.3.92
;; Query time: 1 msec
;; SERVER: 1.1.1.1#53(1.1.1.1)
;; WHEN: Sun Jan 27 20:00:52 UTC 2019
;; MSG SIZE rcvd: 82
他のドメインも問題なく機能するため、サーバーがすべてを解決できない場合だけではありません。
valorin@wp:~$ Dig google.com
; <<>> Dig 9.11.3-1ubuntu1.3-Ubuntu <<>> google.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 24208
;; flags: qr rd ra; QUERY: 1, ANSWER: 6, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;google.com. IN A
;; ANSWER SECTION:
google.com. 148 IN A 74.125.24.100
google.com. 148 IN A 74.125.24.101
google.com. 148 IN A 74.125.24.102
google.com. 148 IN A 74.125.24.113
google.com. 148 IN A 74.125.24.138
google.com. 148 IN A 74.125.24.139
;; Query time: 2 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; WHEN: Sun Jan 27 20:00:57 UTC 2019
;; MSG SIZE rcvd: 135
システムを再起動すると時々、Sudo systemd-resolve --flush-caches
と同様に問題が解決します。ただし、これらは常に機能するとは限らず、機能する前に複数回試行する必要がある場合もあります。
この問題は、SGP1リージョンに新しく作成されたUbuntu 18.04.1 DigitalOceanドロップレットで再現できます。
他のすべての点で、systemd-resolve
は機能しているようで、何が起こっているのかわかりません。
更新-デバッグ情報
valorin@wp:~$ ls -al /etc/resolv.conf
lrwxrwxrwx 1 root root 39 Oct 3 16:43 /etc/resolv.conf -> ../run/systemd/resolve/stub-resolv.conf
valorin@wp:~$ cat /run/resolvconf/resolv.conf
cat: /run/resolvconf/resolv.conf: No such file or directory
1 valorin@wp:~$ cat /run/systemd/resolve/resolv.conf
# This file is managed by man:systemd-resolved(8). Do not edit.
#
# This is a dynamic resolv.conf file for connecting local clients directly to
# all known uplink DNS servers. This file lists all configured search domains.
#
# Third party programs must not access this file directly, but only through the
# symlink at /etc/resolv.conf. To manage man:resolv.conf(5) in a different way,
# replace this symlink by a static file or a different symlink.
#
# See man:systemd-resolved.service(8) for details about the supported modes of
# operation for /etc/resolv.conf.
nameserver 67.207.67.2
nameserver 67.207.67.3
/etc/resolv.conf
のシンボリックリンクが間違っていると思います。
現在表示しています...
~$ ls -al /etc/resolv.conf lrwxrwxrwx 1 root root 39 Oct 3 16:43 /etc/resolv.conf -> ../run/systemd/resolve/stub-resolv.conf
resolv.conf
ではなくstub-resolv.conf
を指す必要があると思います。それを変更するには、これを行います...
Sudo rm -i /etc/resolv.conf
#古いシンボリックリンクを削除
Sudo ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf
#シンボリックリンクを再作成
それが何らかの形で役立つかどうかを確認してください。
18.04のデフォルトのインストールにはlibnss-resolveパッケージが欠落しているようです。このインストールでは/etc/nsswitch.confファイルが修正され、hosts行は次のようになります。
hosts: files mdns4_minimal [NOTFOUND=return] resolve [!UNAVAIL=return] dns myhostname
/ var/log/syslogファイルをスキャンすると、おそらく次のような行が表示されます。
Jan 27 09:33:15 leno systemd-resolved[931]: Using degraded feature set (UDP) for DNS server 192.168.1.1.
Jan 27 10:06:12 leno systemd-resolved[931]: Grace period over, resuming full feature set (UDP+EDNS0) for DNS server 192.168.1.1.
これらは、UDPを介して制限された関数セットで実行している場合があり、大きな出力が通常のバッファーをオーバーフローする可能性があることを示しています。ランチパッドのバグ1804487と1805027を参照してください。/etc/resolv.confリンクを/run/systemd/resolv/stub-resolv.confから.../resolv.confファイルにリダイレクトするなどの他の回避策は、systemdをループから切り離し、ネームサーバーを直接提供します。
あなたは1.1.1.1で解決をテストしましたが、67 ... ipではありません。試してください:
Dig stephenreescarter.net @67.207.67.2
それが失敗する場合、問題はそのネームサーバーを使用しているsystemd-resolvd内にありません。そのネームサーバーは私には機能しませんが、おそらく公開されていません。