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
この場合、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
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を再起動します。システムのサービスまたは再起動。
$ sudo systemctl start resolvconf.service
今、あなたは/etc/resolvをチェックするとき。confファイ 今後は、システム上の名前解決に関する問題に直面することはありません。,