私の小さな物語をお話ししましょう。
現在、私は研究室で Ubuntu 16.04 LTS ディストリビューションを使用しています。Ubuntu をインストールした後、Google でインターネット アクセスを確認しようとしましたが、できませんでした。そこで、まず Google のサーバーに ping を試みました。
ping 8.8.8.8
この最初の ping は成功しました。次に、Yahoo サイトに ping してみます。
ping yahoo.com
答えは名前が不明だったので、/etc の 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
nameserver 127.0.0.1
search <www.some-sites>
問題はネームサーバーです。協力者によると、/etc/resolvconf/resolv.config.d/base のいくつかの行をコピーしたそうです。
domain bla.bla
search <www.some-sites>
nameserver 111.222.3333.4444
nameserver 555.666.7777.8888
再起動するか、次のコマンドを実行するように提案されました
resolvconf --enable-updates
resolvconf -u
/etc/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
nameserver 127.0.1.1
search <www.some-sites>
では、ドメインと 2 つの新しい特定のネームサーバーを入力するにはどうすればよいでしょうか。インターフェイスを構成する方法や、それが可能かどうかはよくわかりません。base は resolv.conf ファイルにコピーされるファイルなので、なぜこのようなことが起こるのか理解できません。このエラーが発生した理由を説明していただけますか。
ありがとう
答え1
127.0.1.1
NetworkManager は、(resolvconf ユーティリティを介して)にアドレスを挿入するプログラムですresolv.conf
。 NM は、ローカル転送ネームサーバーとして機能する dnsmasq プログラムのインスタンスを起動するように構成されている場合にのみ、そのアドレスを挿入します。その dnsmasq インスタンスは、アドレス 127.0.1.1 でクエリをリッスンします。
DNS
現在使用しているものを確認したい場合は、コマンドを入力してください
nmcli device show <interfacename> | grep IP4.DNS
DNS
接続ごとに異なるパラメータを設定できます
ローカル転送ネームサーバを使用しない場合は、NetworkManagerがdnsmasqインスタンスを起動せず、そのアドレスを挿入しないように設定します。/etc/NetworkManager/NetworkManager.conf
次の行をコメントアウトします。dns=dnsmasq
sudo nano /etc/NetworkManager/NetworkManager.conf
[main]
plugins=ifupdown,keyfile,ofono
#dns=dnsmasq
NetworkManager サービスを再起動します。
sudo systemctl restart network-manager
このモードでは、NetworkManager は/etc/resolv.conf
(resolvconf 経由で) 更新し、アクティブな接続用に NetworkManager が持つネームサーバー アドレスを含めます。
resolv.conf を更新するための resolvconf メカニズムを無効にして、静的な resolv.conf ファイルのみを使用する場合は、次の手順を実行します。
sudo rm -f /etc/resolv.conf # Delete the symbolic link
sudo nano /etc/resolv.conf # Create static file
# Content of static resolv.conf
nameserver 8.8.4.4
nameserver 8.8.8.8