Articles

UbuntuとDebianで永続的なDNSネームサーバーを設定する方法

/etc/resolv。confは、DNS名リゾルバライブラリのメイン構成ファイルです。 リゾルバは、インターネットドメインネームシステム(DNS)へのアクセスを提供するCライブラリの関数のセットです。 これらの機能は、/etc/hostsファイルまたは複数のDNSネームサーバー内のエントリをチェックするか、ホストのネットワーク情報サービス(NIS)のデータベースを使用するように,systemd(system and service manager)を使用する最新のLinuxシステムでは、dnsサービスまたは名前解決サービスは、systemd解決サービスを介してローカルアプリケーションに提供されます。 Systemd DNSスタブファイル(/run/systemd/resolve/stub-resolv)を使用します。デフォルトの動作モードでは、conf)。

DNSスタブファイルには、唯一のDNSサーバーとしてローカルスタブ127.0.0.53が含まれており、/etc/resolvにリダイレクトされます。システムで使用されるネームサーバーを追加するために使用されたconfファイル。,/etc/resolvで次のlsコマンドを実行すると、次のlsコマンドが実行されます。このファイルは/run/systemd/resolve/stub-resolvへのシンボリックリンクであることがわかります。confファイル。

$ ls -l /etc/resolv.conflrwxrwxrwx 1 root root 39 Feb 15 2019 /etc/resolv.conf -> ../run/systemd/resolve/stub-resolv.conf

残念ながら、/etc/resolvので。confはsystemd解決サービスによって間接的に管理され、場合によってはネットワークサービスによって(initscriptsまたはNetworkManagerを使用して)、ユーザーによって手動で行われた変更,

この記事では、resolvconfプログラムをインストールして使用して、/etc/resolvに永続的なDNSネームサーバーを設定する方法を示します。DebianおよびUbuntu Linuxディストリビュ/p>

なぜ編集したいのですか/etc/resolv.confファイル?

主な理由は、システムのDNS設定が誤って構成されているか、特定のネームサーバーまたは独自のネームサーバーを使用することを好むためです。 次のcatコマンドは、/etc/resolv内のデフォルトのネームサーバーを示します。私のUbuntuシステム上のconfファイル。,

$ cat /etc/resolv.conf
DNSネームサーバーをチェック

この場合、APTパッケージマネージャーなどのローカルアプリケーションがローカルネットワーク上のFqdn(完全修飾ドメイン名)にアクセスしようとすると、その結果、次のスクリーンショットに示すように、”名前解決の一時的な失敗”エラーが発生します。

一時的な失敗の解決

pingコマンドを実行すると同じことが起こります。,

$ ping google.com
名前解決の一時的な失敗

したがって、ユーザーがネームサーバーを手動で設定しようとすると、変更は長く続かないか、再起動後に取り消されます。 これを解決するには、reolvconfユーティリティをインストールして使用して変更を永続的にすることができます。次のセクションに示すようにresolvconfパッケージをインストールするには、まず/etc/resolvに次のネームサーバーを手動で設定する必要があります。,インターネット上のUbuntuリポジトリサーバーのFqdnにアクセスするように、confファイル。

nameserver 8.8.4.4nameserver 8.8.8.8

また読む:Linuxで/etc/hostsファイルを使用してローカルDNSを設定する方法

UbuntuおよびDebianでresolvconfをインストールする

まず、システムソフトウェアパッケージを更新し、次のコマンドを実行して公式リポジトリからresolvconfをインストールします。

$ sudo apt update$ sudo apt install resolvconf

resolvconfのインストールが完了すると、systemdはresolvconfをトリガーします。サービスが自動的に開始され、有効になります。, 起動しているかどうかを確認するには、次のコマンドを発行します。

$ sudo systemctl status resolvconf.service

何らかの理由でサービスが開始されず、自動的に有効になっていない場合は、次のようにしてサービスを開始および有効にできます。

$ sudo systemctl start resolvconf.service$ sudo systemctl enable resolvconf.service$ sudo systemctl status resolvconf.service
Resolvconfサービスステータスを確認

UbuntuとDebianで永続的なDNSネームサーバを設定

次に、/etc/resolvconf/resolv.コンフd/head設定ファイル。,

$ sudo nano /etc/resolvconf/resolv.conf.d/head

次の行を追加します。

nameserver 8.8.8.8 nameserver 8.8.4.4
Resolvconfに永続的なDNSネームサーバーを設定します
iv id=”138ba3c257″

変更を保存し、resolvconfを再起動します。システムのサービスまたは再起動。

$ sudo systemctl start resolvconf.service

今、あなたは/etc/resolvをチェックするとき。confファイ 今後は、システム上の名前解決に関する問題に直面することはありません。,

Permanent DNS Name Servers