4

Ubuntu 11.10を使用していて、/ etc / resolv.confでDNSサーバーを手動で構成していますが、再起動するとどういうわけか上書きされます。どうすればこれを防ぐことができますか?

ありがとう。

4

8 に答える 8

13

resolv.confのヘッダーで読むことができるように:

Dynamic resolv.conf file for glibc resolver generated by resolvconf

したがって、resolv.confが生成されます。再起動後にresolvconf構成を保持する場合は、/ etc / resolvconf / resolv.conf.d/baseを編集する必要があります。そのファイルに、resolv.confと同じように情報を入力します。

nameserver 8.8.8.8

次に、resolvconfを使用してresolv.confを再生成します。

sudo resolvconf -u
于 2015-02-26T10:36:16.673 に答える
5

他の答えを読んだ後、私はまだ次の理由で何か違うものが必要でした:

  • 私は使用していませんresolvconf、ただプレーン/etc/resolv.confです。
  • chattr +iロックダウンに使用するのresolv.confはあまりにもハッキーなようです。必要に応じてPuppetが自由に変更できるようにする必要があります。

私が見つけた最良の解決策dhclientは、文書化されたフックを使用するデフォルトの動作をオーバーライドします。

/etc/dhcp/dhclient-enter-hooks.d/nodnsupdate次の内容で新しいファイルを作成します。

#!/bin/sh
make_resolv_conf() {
    :
}

次に、ファイルを実行可能にします。

chmod +x /etc/dhcp/dhclient-enter-hooks.d/nodnsupdate

これで、dhclientが実行されると(再起動時または手動で実行するとき)、sudo ifdown -a ; sudo ifup -aこのスクリプトがロードされますnodnsupdatemake_resolv_conf()このスクリプトは、通常は上書きresolv.confされ、代わりに何も行わないという内部関数をオーバーライドします。

これはUbuntu12.04でうまくいきました。

于 2015-03-05T22:14:56.290 に答える
2

NetworkManagerが/etc/resolv.confファイルを上書きしていることがわかりました。私の場合、DNSサーバーがリストされている順序を変更したかったのです。接続IP4V設定を編集することにより、NetworkManagerを介してこれを行うことができます。

于 2013-03-20T20:46:05.957 に答える
0

これを行うDHCPクライアントがあります。これらの手順に従って、それをオーバーライドします。

于 2013-03-12T17:40:51.760 に答える
0

私は次の行を使用します:chattr + i /etc/resolv.conf

使用を元に戻すには:chattr -i /etc/resolv.conf

それがうまくいったかどうか教えてください...

于 2014-02-24T09:24:32.270 に答える
0

NetworkManagerは、手動で入力したIPv4構成を使用するように構成することも、DHCPIP/ネットマスク/ルーターからのみ取得するように構成することもできます。このような場合は/etc/resolv.confを変更しないでください。

ただし、/ etc/resolv.confに独自の設定を設定したい場合があります。検索するネームサーバーやドメインなどです。ドメインが必要なだけで、次のファイルを含む/etc/NetworkManager/dispatcher.d/99my_fixを追加しました。

#!/bin/bash rc=/etc/resolv.conf; le="search my.domain" grep -q domain $rc && ! grep -q "$le" $rc && echo "$le" >> $rc

もちろん、私はそれを+xでchmodしました。NetworkManagerは/etc/resolv.confを設定した後にそれを呼び出し、私のスクリプトは必要に応じてそれを修正します。最初のgrepはネットワークが稼働していることを検出し、2番目は修正が適用されなかったことを検出します。これらは両方とも修正を適用するために必要です。

于 2015-02-05T08:33:56.803 に答える
0

同じ問題が発生し、domain-nameとdomain-name-serversを追加して`/etc/dhcp/dhclient.conf'ファイルを編集しました

supersede domain-name "local.com"; supersede domain-name-servers 192.168.56.103;

192.168.56.103はbind9を実行している私のVMであり、私のドメイン名はlocal.comです。

requestセクションからも同じものを削除しました。

于 2016-04-02T09:57:05.490 に答える
0

サーバーインスタンスのネットワークインターフェイスがDHCPによって制御されている場合、ネットワークサービスが再起動されるたびに、dhclientプログラムは/etc/resolv.confファイルを上書きします。

この問題を修正するには、「/ etc / dhcp / dhclient.conf」ファイルを編集し、次のようにdomain-namedomain-searchdomain-name-serversのsupersedeステートメントを追加します。

supersede domain-name "mydomain.com";
supersede domain-search "mydomain.com"
supersede domain-name-servers 8.8.8.8;

この特定のケースでは、ネームサーバーは「8.8.8.8」にあり、ドメイン名は「mydomain.com」です。特定の情報に置き換えてください。

各行はセミコロンで終了し、ドメイン名は二重引用符で囲まれていることに注意してください。

于 2018-02-06T21:56:09.553 に答える