ドメインネームシステム(DNS)は、Webのインフラストラクチャの中心的な部分であり、ドメイン名をIPアドレスに変換する方法を提供します。 DNSはインターネットの電話帳と考えることができます。
インターネットに接続されている各デバイスは、そのIPアドレスによって一意に識別されます。ブラウザでアクセスするWebサイトを入力するときは、そのドメイン名を対応するIPアドレスに変換する必要があります。オペレーティングシステムは、最初にホストファイルで対応するドメインを確認し、ドメインのエントリがない場合は、構成されたDNSネームサーバーにクエリを実行して、指定されたドメイン名を解決します。
ドメインが解決されると、システムはリクエストをキャッシュし、ドメインと対応するIPアドレスの記録を保持します。
DNSネームサーバー(リゾルバー)は、要求されたドメインのDNSルックアップを実行するために他のデバイスによって使用されるサーバーです。
通常、DNSリゾルバーはISPによって割り当てられます。ただし、これらのリゾルバーは低速であるか、定期的に更新されない可能性があります。これにより、ドメインのクエリ、間違ったIPアドレスへの解決に遅延が発生したり、目的のドメインをまったく解決できない場合があります。
高速でプライベートで定期的に更新される無料のパブリックDNSリゾルバーがたくさんあります。
以下は、最も人気のあるパブリックDNSリゾルバーの一部です。
- Google(8.8.8.8、8.8.4.4)
- Cloudflare(1.1.1.1および1.0.0.1)
- OpenDNS(208.67.222.222、208.67.220.220)
- レベル3(209.244.0.3、209.244.0.4)
このガイドでは、Ubuntu 18.04でDNSネームサーバー(リゾルバー)を構成する方法について説明します。
ローカルネットワークに接続されているすべてのデバイスにDNSネームサーバーを設定する場合、最も簡単で推奨される方法は、ホームルーターで変更を行うことです。UbuntuデスクトップでのDNSネームサーバーの設定#
Ubuntu 18.04デスクトップコンピューターでのDNSネームサーバーのセットアップは非常に簡単で、技術的な知識は必要ありません。
-
[設定]ウィンドウを起動します。
-
WiFiネットワークに接続している場合は、[Wi-FI]タブをクリックします。それ以外の場合、有線接続がある場合は、[ネットワーク]タブをクリックします。
-
DNSネームサーバーを設定する接続を選択し、歯車アイコンをクリックしてネットワークマネージャーを開きます。
-
[IPv4設定]タブを選択します。
-
「自動」トグルスイッチを無効にし、DNSリゾルバーのIPアドレスをコンマで区切って入力します。 GoogleDNSネームサーバーを使用します:
-
[適用]ボタンをクリックして、変更を保存します。
DNSエントリがシステムまたはアプリケーションによってキャッシュされている場合を除いて、変更はすぐに有効になります。
以前の設定に戻す場合は、Network Managerを開き、IPv4設定に移動して、「自動」トグルスイッチを有効にします。
UbuntuサーバーでのDNSネームサーバーの設定#
昔は、LinuxでDNSリゾルバーを構成したいときはいつでも、/etc/resolv.conf
を開くだけでした。 ファイルを作成し、エントリを編集し、ファイルを保存すれば、準備は完了です。このファイルはまだ存在しますが、systemd-resolvedサービスによって制御されるシンボリックリンクであり、手動で編集しないでください。
systemd-resolvedは、ローカルサービスとアプリケーションにDNS名解決を提供するサービスであり、Ubuntu18.04のデフォルトのネットワーク管理ツールであるNetplanを使用して構成できます。
Netplan構成ファイルは/etc/netplan
に保存されます ディレクトリ。このディレクトリには、おそらく1つまたは2つのYAMLファイルがあります。ファイル名は、セットアップごとに異なる場合があります。通常、ファイルの名前は01-netcfg.yaml
のいずれかです。 または50-cloud-init.yaml
ただし、システムによっては異なる場合があります。
これらのファイルを使用すると、IPアドレス、ゲートウェイ、DNSネームサーバーなどのネットワークインターフェイスを構成できます。
DNSネームサーバーを構成するには、テキストエディターでインターフェイス構成ファイルを開きます。
sudo nano /etc/netplan/01-netcfg.yaml
ファイルの内容は次のようになります。
/etc/netplan/01-netcfg.yamlnetwork:
version: 2
renderer: networkd
ethernets:
ens3:
dhcp4: no
addresses:
- 192.168.121.199/24
gateway4: 192.168.121.1
nameservers:
addresses: [8.8.8.8, 8.8.4.4]
インターフェイスのDNSネームサーバーを構成するには、現在のIPアドレスを優先DNSサーバーに変更します。たとえば、CloudflareのDNSサーバーを使用する場合は、addresses
を変更します 行先:
nameservers:
addresses: [1.1.1.1, 1.0.0.1]
DNSサーバーはコンマで区切る必要があります。 3つ以上のネームサーバーを追加することもできます。
エントリが存在しない場合は、インターフェイス名ブロックの下に追加します。 Yamlファイルを編集するときは、YAMLコードのインデント標準に準拠していることを確認してください。構成に構文エラーがある場合、Netplanはファイルを解析できません。
完了したら、ファイルを保存し、次のコマンドで変更を適用します。
sudo netplan apply
Netplanは、systemd-resolvedサービスの構成ファイルを生成します。
新しいDNSリゾルバーが設定されていることを確認するには、次のコマンドを実行します。
systemd-resolve --status | grep 'DNS Servers' -A2
systemd-resolve -status
多くの情報を印刷します。 grep
を使用しています 「DNSサーバー」文字列をフィルタリングします。出力は次のようになります:
DNS Servers: 1.1.1.1
1.0.0.1