web-dev-qa-db-ja.com

/etc/resolv.confは再起動中に変更されます

私のISPから、カスタムnameserver設定を使用するように求められました。これらを/etc/resolv.confに配置しました。残念ながら、コンピュータを再起動するたびに、このファイルの内容が変更されます。インターネットに接続するには、まずそのファイルを編集する必要があります。このファイルが変更されないようにするにはどうすればよいですか?

6
Village

おそらく、犯人は NetworkManager -スタートアップ/シャットダウン時、および管理対象のネットワーク接続が変更されるたびに/etc/resolv.confを再構築します。

システムからインストールの一部を削除したくない場合を除いて、最善の策は、ユーザーをnetdevグループに追加し(Sudo adduser myuser netdevがトリックを実行し)、好みのフレーバーに応じてnetwork-manager-gnomeまたはnetwork-manager-kdeを使用することです。設定を管理し、DNSサーバーを指定します。便利なチュートリアルが here にあります。

または、/etc/network/interfacesを掘り下げて、インターネットへの接続に使用するネットワーク接続がNetworkManagerによって管理されないnotであることを指定して、キーワードを追加することもできます。そのインターフェースのスタンザにdns-nameservers

5
Shadur

resolvconfパッケージを見てください-その目的は、resolv.confの変更を(たとえば、DHCPクライアントによって)インターセプトすることです。その場合、小さなスクリプトを実行でき、resolv.confに書き込まれた設定を追加、追加、またはオーバーライドできます。

 Resolvconf is a framework for keeping up to date the system's
 information about name servers. It sets itself up as the intermediary
 between programs that supply this information (such as ifup and
 ifdown, DHCP clients, the PPP daemon and local name servers) and
 programs that use this information (such as DNS caches and resolver
 libraries).
3
hhaamu

Pppを使用してISPに接続している場合、接続後、ネットワークインターフェイスを起動する前にpppd/etc/ppp/ip-pre-upを実行します。ほとんどのシステムには、ネットワークインターフェイスが起動した後に実行される/etc/ip-upもあります。これは通常、ディレクトリ/etc/ip-up.d/内のすべてを実行するスクリプトです。また、ほとんどのシステムには、/etc/ip-up.d/の設定を処理するスクリプトがすでに/etc/resolv.confにあります。これらのスクリプトのいずれかを使用して、ネームサーバーが設定されていることを確認できます。

2
Shawn J. Goff

この問題に遭遇する可能性のある人のために:私はルーターでそれを修正しました。

私のコンピューターはルーターに接続されています。ルーターはモデムに接続されており、モデムは最終的にプロバイダーに接続されます。

resolv.confで、最初のネームサーバーとしてルーターのアドレスを見つけ、次にモデムのアドレスを見つけました。私のルーターにはネームサーバーテーブルがなかったため、有用な応答はありませんでしたが、応答が返されるまでにかなり時間がかかりました。そのため、解決要求を行うたびに、最初にルーターを試しました多くの時間、それからそれは私のモデムに行きます。

そのため、resolv.confの最初のネームサーバーとしてモデムアドレスを設定する方法が必要でした。今はDebianでDHCPを使用しているだけなので、ルーターがこの間違ったネームサーバーを提供する必要があると考えました。そこで、ルーターの構成を調べたところ、静的DNSサーバーを指定できることがわかりました(Linksysルーターがあります)。そこにモデムのアドレスを設定しました。再起動するたびに、Debianのモデムアドレスがresolv.confの最初のネームサーバーになります。

それが誰にでも役立つことを願っています。

1
gitaarik

動的ホスト構成プロトコル(DHCP)を使用している場合は、アドレス、ゲートウェイ、ネームサーバーなどを含むネットワーク設定が自動的に構成されます。これが起こるとき、 resolv.conf、またはこの種のネットワーク構成の他の場所は、設計により変更されます。

システムのドキュメントを確認して、静的DNS設定を提供する正しい方法を確認してください。たとえば、今私のresolv.conf読み取り

# Generated by dhcpcd from eth1
# /etc/resolv.conf.head can replace this line
[...]
# /etc/resolv.conf.tail can replace this line
1
njsg