web-dev-qa-db-ja.com

pingに「名前またはサービスが不明」と表示される

Raspberry PiでArch Linuxを実行しています。

突然:

  1. Webサイトにpingできない。
  2. ブラウザからウェブサイトにアクセスできません。

さらに2台のコンピューター(すべてArch Linuxを実行している)がインターネットに接続されており、pingを実行してインターネットを使用できます。また、/etc/resolv.confは他のコンピューターでも同じです:

nameserver 10.230.252.252
nameserver 203.147.88.2
nameserver 8.8.8.8
search domain.name

VNCを使用できます。 8.8.8.8にpingすることもできます。 ChromiumでDuckDuckGoにアクセスしようとすると、次のようになります。

This site can’t be reached
duckduckgo.com’s server IP address could not be found.
DNS_PROBE_FINISHED_NXDOMAIN

インターネットに接続しています。どうしましたか?

6
S.Goswami

Arch Linuxを実行している他のx86_64 PCで問題が発生したことは一度もありませんが、Network Managerを実行している場合、これはArch Linux ARM=.

問題はwifiに接続しているようですが、pingを実行したりインターネットを使用したりすることはできませんが、ローカルネットワーク上のすべてのコンピューターにアクセスでき、リモートデスクトップ共有ソフトウェアを使用することもできます。

Pingまたはブラウザがホストを解決しようとしているときに問題が発生した可能性が高いです。私は3つの解決策を考えることができます:

解決策1

これは、Archlinux ARMを実行し、NetworkMangerを使用しているRaspberry Piシステムの何千もの問題です。

私の場合、/ etc/resolv.confは../run/systemd/resolve/stub-resolv.confへの壊れたシンボリックリンクでした。

NetworkManagerはシンボリックリンクを入力できず、/ etc/resolv.confは空です。するべき:

  1. 壊れたシンボリックリンクを削除します。
# rm /etc/resolv.conf
  1. 内容を含む/etc/NetworkManager/conf.d/dns.confファイルを作成します。
[main]
dns=none
main.systemd-resolved=false
  1. NetworkManagerを再起動します。
Sudo systemctl restart NetworkManager

ソリューション2に従わない場合、これで問題が解決するはずです。


解決策2

上記の方法で問題が解決しない場合は、次のようにして一時的に/etc/resolv.confを入力できます。

Sudo systemctl restart systemd-resolved && Sudo systemctl stop systemd-resolved

これが機能する理由は、おそらく何かが/etc/resolv.confファイルをめちゃくちゃにしているためです。上記のコマンドで内容が上書きされますが、問題の原因を確認する必要があります。


解決策3

/etc/resolv.confを取得できない場合は、新しい/etc/resolv.confを作成し(空の古いリンクまたはシンボリックリンクが存在する場合は削除して)、コードを貼り付けます。

search domain.name
nameserver 8.8.8.8
nameserver 1.1.1.1
nameserver 1.0.0.1

少し奇妙ですが、ここではgoogleのプライマリDNSとcloudflareのプライマリDNSを使用しています。8.8.8.8を8.8.4.4で、または1.1.1.1を1.0.0.1で使用できます。


彼らはRaspberry Pi 3モデルBの私のインストールで機能しました。これがあなたにも機能することを願っています。

13
S.Goswami

同じ効果で問題が発生しました。時刻が正しく設定されているか確認してください。 DNSSECはデフォルトで有効になっているようで、「期限切れ」の証明書が原因でリクエストをブロックしています。

これに関連する他のいくつかの問題は、journalctl -u systemd-resolved -b -0で診断できます。

6
jaku255

Arch Linuxを実行しているRaspberry Pi 4でこの問題が発生しました。

症状は、DNSが存在せず、pingエラーメッセージが生成されることでした。

dateに電話したところ、2日前ほどの大幅な休業がありました。

時間同期systemctl status systemd-timesyncdでオンになっていることを確認しましたが、timedatectl timesync-statusの出力から、サービスにNTPサーバー(それはServer: Nullと言いました)。

journalctl -u systemd-resolved -b -0をチェックする jaku255のヒント を使用すると、DNSが失敗しているため、時刻同期が機能しないことがわかりました。

DSの質問ntp.orgのDNSSEC検証が失敗しました:署名の期限切れ

これはちょっとした行き詰まりです。時刻が間違っているためにDNSが機能せず、DNSが機能しないために時刻が間違っています。

時間を手動で設定しようとして、私は発行しました

timedatectl set-time "2020-02-29 10:51:55"

しかし、これはエラーを生成しました:

時間の設定に失敗しました:自動時刻同期が有効になっています

これを修正するために、一時的に(hehe ^^)との時間同期を無効にしました

timedatectl set-ntp 0

今回も正常にtimedatectl set-timeを呼び出しました。

その後、timedatectl set-ntp 1との時刻同期を再度アクティブにし、timedatectl timesync-statusを使用して同期が機能することを確認しました。

サーバー:212.69.166.153(0.Arch.pool.ntp.org)

また、pingcurlは、DNSが正常に機能するようになりました。

2
Matthias Braun