私は昔、resolv.conf
は静的で、自分で編集しました。
その後、DHCPクライアントは、いくつかの静的エントリとDHCPリースから取得したものを使用して、それを書き換えます。
最近、いくつかのディストリビューション-私のように(Linux Mint 18.1)は/etc/resolv.conf.d
メカニズムにはスクリプトのいくつかのサブディレクトリがあり、まあ、私はそれの表と裏を作成することはできません。
では、正しい方法は何ですか
自分でスクリプトを書いてもかまいません。既存のメカニズムに「反抗」したり、重複したりしたくないだけです。
答えは簡単です。resolv.conf.d
フォルダーは/ etc/resolvconf /にあり、head/base/originalおよびtailファイルが含まれています。編集した場合、それぞれが/ etc /内のresolv.conf
ファイルを更新します
/ etc /のresolv.conf
の先頭に静的DNSアドレスを置きたいとしましょう(再起動するたびにデフォルト設定に自動的にリセットされるため)head
/etc/resolvconf/resolvconf.d/内のファイルと、たとえば次のように入力します。
nameserver 1.1.1.1
nameserver 1.0.0.1
その後、次を使用してresolvconfサービスを再起動します。
Sudo service resolvconf restart
/ etc /にcatresolv.conf
を追加すると、新しい変更が表示されます。
ファイルの下に何かを入れたい場合も同じことが当てはまります。/etc/でtail
の代わりにhead
を使用しますresolvconf/resolvconf.d /
PS:これは100%テストされ、UbuntuとDebianで動作しています
編集:私はすでにあなたの質問の最後の2つの箇条書きに答えました、今DHCPによって提供されるDNSアドレスを使用しない方法について話している最初の箇条書きについてです。これは実際にインストールしたDNSソフトウェア/パッケージに依存するため、これを確認することをお勧めします Post 、およびdnsmasq
がある場合は、その下のものも読んでください。
resolve.confとこれらのようなメカニズムは、過去数年から現在まで存在しています。このファイルを処理するコマンドラインdhclient
、resolvconf
がありますが、近年Linuxはnmcliの名前でNetworkManagerの構成用の新しいインターフェイスを導入しています。これは、(ランタイムではなく)すべての永続的なネットワーク構成を管理するための豊富なコマンドです。あなたは次のようなものを使うことができます:
$ nmcli connection modify eth0 ipv4.dns 8.8.8.8
このコマンドは上書きされますresolv.conf
ファイル。 RHCAでは、resolv.confを手動で編集してそのコマンドを使用しないことをお勧めします。あなたが言及したresolvconfディレクトリについて、私はいくつかのサービスがOpenVpnのような独自の設定を使用するようにDNSのために独自の設定を持つことができると言えるでしょう。確認してもいい /etc/nsswitch
解決に関する詳細情報を取得するためのファイル。