
コンピューターを静的 IP を使用するように構成すると、Ubuntu 12.04 Server エディションで名前解決の問題が発生しているようです。
/etc/network/interfaces 内:
# The primary network interface
auto eth0
iface eth0 inet static
address 192.168.1.28
netmask 255.255.255.0
gateway 192.168.1.1
を実行すると$ sudo apt-get upgrade
、「取得に失敗しました...」という結果になります。
. . . W: Failed to fetch http://us.archive.ubuntu.com/ubuntu/dists/precise-backports/universe/i18n/Translation-en_US Something wicked happened resolving 'us.archive.ubuntu.com:http' (-5 - No address associated with hostname)
[...]
/etc/network/interfaces を次のように変更します。
auto eth0
iface eth0 inet dhcp
すべて正常に動作しています。
/etc/resolv.conf を調べると、さらにヒントがいくつか得られます。
解決の問題が発生していた場合、resolv.conf は空で、ネームサーバーが指定されていませんでした。その後、静的から DHCP に変更し、ネットワークを再起動しました。/etc/resolv.conf は「nameserver 192.168.1.1」に変更されました。
DHCP から静的に切り替えて再起動しても、ネームサーバー エントリは削除されません。しかし、静的に設定してシステムを再起動すると、resolv.conf は空になりました。DHCP を設定してシステムを再起動すると、resolv.conf にネームサーバー 192.168.1.1 が設定されます。つまり、問題は、resolv.conf が正しく書き込まれていないことにあるようです。どのパッケージ/コードが resolv.conf への書き込みを担当していますか? 未解決の問題を確認できる特定のパッケージはありますか?
更新: istream は、12.04 でのresolv.conf の変更について説明した優れた記事を投稿しました。 http://www.stgraber.org/2012/02/24/dns-in-ubuntu-12-04/
答え1
に従ってresolvconf マニュアルページ(マニュアル ページに例が記載されています)、静的設定の下の /etc/network/interfaces に以下を追加します。
dns-nameservers [IP address(es) of your DNS]
dns-search [your dns-search strings (optional)]
答え2
192.168.1.1
静的 IP を設定するときに、DNS の値として指定したことは確かですか?
コマンドラインからこれを行う方法はわかりませんが、System Settings -> Network
GUI を使用する方法も機能するはずですよね? 私が考えているのは、以下のスクリーン キャプチャのようなものが必要なのではないかということです。それとも、私が何をしようとしているのか理解していないのでしょうか?
注: 左側のウィンドウの値は無視してください。これらは DHCP から取得した値です。自分の考えを説明しようとしただけなので、静的構成を保存しませんでした。
ちなみに、 を192.168.1.1
使用したのは、それが使用されていたからです。ただし、有効な DNS サーバーの IP を使用することもできます。たとえば、8.8.8.8
および/または208.67.222.222
も機能するはずです。
答え3
ネットワークマネージャアプレットを使用してネットワーク設定をセットアップしたくない(またはできない)場合は、"静的"利用可能な DHCP サーバーがない場合の IP 構成は、 に静的リースを設定することです。そこで、 dhclient が静的にフォールバックするときにファイルdhclient.conf
に書き込まれるネームサーバーを指定する必要があります。resolv.conf
しかし、手を汚したくない場合は、接続のIP設定でDNSサーバーのアドレスを指定するためにGUIを使用することをお勧めします。https://askubuntu.com/a/127537/33305。
答え4
OP はサーバー版を使用しています。NetworkManager は適用されません。ただし、サーバーの複雑さを増すためだけに追加される可能性もあります。
ところで、いったいなぜ resolvconf がサーバー ed に追加されたのでしょうか... なぜですか!!??!?
とにかくあなたの質問に答えるために以下を追加してください:
/etc/ネットワーク/インターフェース
このようなもの:
auto eth0 inet static
dns-nameservers ns1.mydnsservers.com ns2.mydnsservers.com
重要なオプションは「dns-nameservers」です。