ping 8.8.8.8は機能しますが、ping www.google.comは機能しません


11

私はubuntuサーバー16.04.2を実行していapt-get updateて、「リストのすべて」を解決する一時的なエラーを返します。

  • www.google.comにpingを実行すると、不明なホストで応答します。
  • 8.8.8.8でpingを実行すると、エラーなしでパケットが送信されます。

私は、Ubuntuフォーラムやその他のインターネットの世界で見つけることができるすべての「修正」を試みましたが、何も機能しません。resolv.conf空で、機能しているNICのショーはifconfig、ファイアウォールオフになっている、と私は念のためにハンマーを捨てました。残念ながら、同じネットワーク上の別のコンピューターでこれを入力していますが、さまざまな出力からテキストを添付して、何が起こっているのかを示すことはできません。これについて助けが必要です。

resolv.confファイルには、次の行が含まれています。

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8) # DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
search 8.8.8.8 8.8.4.4

最後の行は、システムを再起動すると、インターフェースファイルによって配置されます。これは16.04LTSの新機能です。Windows NT4はそれほど悪くなく、Ubuntu Server 12もそうではなかったと思います。


2
システムはIPアドレスをどのように取得していますか?DHCPサーバーからのものですか?静的IPですか?IPアドレスにpingできることは、DNSサーバーのIP設定なしで機能します。しかし、DNSアドレスが設定されていないか、DHCPがアドレスを提供していないようです。
テランス

IPは静的です。サーバーソフトウェアをインストールしたときにDNSサーバーをセットアップしたことはありません。
Gary Mercer

askubuntu.com/questions/143819/…を見て、8.8.8.88.8.4.4に Google DNSサーバーなどのDNSエントリを追加します
Terrance

私はそれをすべてやった。私の静的IPはat&t vdslボックスから来ています。私は彼らのDNSネームサーバーとDNS検索IPを使用しています。私が推測できることは、at&tがDNSクエリをブロックしていることだけです。
Gary Mercer

面白い。多分あなたはAT&Tに連絡して、とにかく彼らがそれをブロックしているかどうかを確認したいかもしれません。DNSサーバーをGoogle DNSサーバーに置き換えてみて、それが機能するかどうかを確認できると思います。
テランス

回答:


16

/etc/resolv.confファイルにネームサーバーが必要です。を編集して/etc/resolv.conf、稼働中のネームサーバーを追加します。Googleが無料で提供しています8.8.8.8

これを行う:

$ nano /etc/resolv.conf

これを最初の非コメント行として配置します。

nameserver 8.8.8.8

この機能は次の方法で確認できます。

$ ping -c10 www.google.com

このファイルに行を追加することにより、この変更を永続的にすることができ/etc/resolvconf/resolv.conf.d/headます。


わー!成功!すみません、このボックスを36時間連続で叩いて...それはうまくいきました。at&tのIPを入れても機能しました。皆さんの助けと素早い対応に感謝します。(モデレーターさん、これらの人たちは背中を軽くたたく必要があったので、無感情なジャンク全体を緩和しました)
Gary Mercer

resolv.confが編集の許可を与えていない
Syam kumar KK

@Ragy Morkosの回答とは対照的に、ubuntu 18.04 LTS
Gwang-Jin Kim

どうもありがとう!ubuntuにchrootした後、www.google.comにpingできませんでした。あなたの解決策のおかげで、chrootされたパーティションでのインストールなどができるようになりました。
Gwang-Jin Kim、

3

マークされた回答は、実際にはUbuntu 18.04.01では機能しません。この問題を修正するために、私がしたことは次のとおりです。

  • 実行する sudo gedit /usr/lib/systemd/resolv.conf
  • nameserver 8.8.8.8(および/または必要な他のネームサーバー)を貼り付け、保存して終了します。
  • 実行してシンボリックリンクを追加する sudo ln -sf /usr/lib/systemd/resolv.conf /etc/resolv.conf

https://askubuntu.com/a/1050280/899241へのクレジット


2

ファイルresolv.confを空にする必要があることを通知するページへのリンクを投稿できますか?せいぜい誤解を招くだけだと思います。

コマンドでそのファイルを編集し、sudo nano /etc/resolv.confそこに1行追加します。

nameserver 8.8.8.8

名前解決とそれを使用するさまざまなプログラム(ping、apt-getなど)が修正されます。

また、resolv.confが空である理由も調査する必要があります。DHCPサーバーが正しく構成されていない可能性があります。


これはファイルに含まれる内容です:#resolvconf(8)によって生成されたglibc resolver(3)の動的resolv.conf(5)ファイル#このファイルは手動で編集しないでください-変更は上書きされますsearch 8.8.8.8 8.8.4.4最後の行は、システムを再起動すると、interfacesファイルによって配置されます。
Gary Mercer

@GaryMercerを質問に追加してください。コメントを読むのは難しいです。
wjandrea 2017

0

Ubuntu 16.04.xでは、単に上書きするのは良い考えではありません/etc/resolv.conf。ほとんどの場合、OSによって上書きされます。

ファイル/etc/resolv.confは通常、別のファイルへのシンボリックリンクです。

ls -lisa /etc/resolv.conf
1310924 0 lrwxrwxrwx 1 root root 29 Jul 13  2016 /etc/resolv.conf -> ../run/resolvconf/resolv.conf

つまり、それは正しいので編集できますが、別のプログラムが上書きする可能性があります。NetworkManagerがインストールされていると思います。私の知る限り、このサービスは解決の内容を管理します。したがって、実際にそれをセットアップする必要があります。(一方で、NetworkManagerがシステムで無効になっている可能性があります。教えてください。)

nmtuiそこに正しいDNSサーバーを追加してみてください。また8.8.8.8、セカンダリDNSとしてのみ使用します。プライマリDNSは、ローカルネットワークの近くのマシンまたはルーター、またはそこにあるものにする必要があります...


ネットワークマネージャーはありません。GUIのない​​サーバーです。リポジトリへの接続が終了する前に、dnsutilsをインストールしました。
ゲイリーマーサー

@ゲイリー・マーサー:では、どのようにしてネットワークインターフェイスを導入しますか?(ifupとifdown?)Network Managers GUIはオプションのコンポーネントです。nmtuiそのテキストベースです。
Gerhard Stein

システムを再起動してNICを起動します。サーバーなので、「オフ」になることはありません。インターフェイスを使用するすべてのサービスを構成する他の相互に関連するコンポーネントがあるため、再起動サービスの使用が常に機能するとは限らないことがわかりました。単純な再起動コマンドですべてのサービスを再起動するのが、より簡単で最も効率的です。
Gary Mercer

システムを再起動することにより、「マネージャー」がデバイスを持ち込む必要があります。静的IPアドレスをどこで構成しましたか?
ゲルハルトスタイン

0

次の値でファイル50-cloud-init.yamlを編集するまで、同じ問題が発生しました

 network:
    ethernets:
        eno2:
            addresses:
            - 192.168.0.50/24 (my static ip address)
            dhcp4: false
            gateway4: 192.168.0.42
            nameservers:
                addresses: [208.67.222.222,208.67.220.220]
                search: [208.67.222.222]

それもあなたのために働くことを願っています


使用している場合netplanとGoogleのDNSサーバーになります addresses: [8.8.8.8,8.8.4.4](多分、より良い使用CloudFlareの1.1.1.1を上)/etc/netplan/50-cloud-init.yamlその後、とsudo netplan --debug apply
パブロビアンキ

0

システムに指定したDNSサーバーに関連する問題に直面しています。/etc/resolv.confのネームサーバーエントリを確認します。

問題は、DNSサーバーがそれを解決してgoogleの実際のIPアドレスを提供できないため、pingコマンドが「www.google.com」を識別できないことです(すべてのサーバーはそのIPアドレスでのみアクセスできます)。

解決

のエントリを編集し/etc/resolv.confます。/etc/resolve.conf「www.google.com」を解決できる適切なDNSサーバーを選択してください

またはy行を追加して、IPアドレスが127.0.0.53のローカルシステムリゾルバーを指定できます。

nameserver 127.0.0.53

または、GoogleのDNSサーバーIP(いずれか1つ)を指定します:8.8.8.8または8.8.4.4

nameserver 8.8.8.8**

PS ここで DNSの仕組みをよりよく理解できます


-2

ここで取り上げた問題は、内部的にドメイン名をIPアドレスに解決することです。Ubuntuサーバーのバージョン15以降は、サービスまたはシステムが再起動または再起動されるたびに変更される動的構成ファイルのシステムを使用していると思います。管理者がresolv.confファイルに変更を加えた場合、それらの変更はリゾルバーサービスが再起動されるときに削除されます。

Ubuntuは、変更を永続的にするために、構成ファイルの動的構成に影響を与えずにユーザーの変更を永続的にする方法を用意しています。LD James(上記)からの提案は、/etc/resolvconf/resolv.conf.d/headファイルに必要な変更を加えることでした。

これにより、変更が永続的になり、ドメイン名エラーメッセージの解決の問題が解決されましたhost not found。これは、インターフェースファイルでDNSネームサーバーを設定し、それをリゾルバにも取得するためのソリューションです。このパズルを解くためのあなたの最高の努力をみんなありがとう。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.