DNSサーバーを変更するには?

DNSサーバーを変更するには?

USBケーブルを介して携帯電話のインターネットをコンピュータに接続し、以下を使用します/etc/resolv.conf

# Generated by NetworkManager
nameserver 192.168.114.150

私の考え192.168.114.150では、ちょうど私の携帯電話を指していると思います。 NMがこのファイルを上書きした場合、それをプライマリDNSサーバーに変更するにはどうすればよいですか?

答え1

もちろん、NetworkManagerに/etc/resolv.confを書かずに自分で書くように指示することもできます。

ただし、通常、DNSサーバーは接続されているネットワークによって異なり、固定ではありません。これがNetworkManagerで接続プロファイル(つまりネットワーク設定)の一部としてDNS設定を構成する必要がある理由です。

たとえば、nmcli connection showすべてのプロファイルを一覧表示します。それらの1つの詳細を確認してくださいnmcli connection show "$PROFILE"man nm-settingsフィールドの意味を確認してください。静的DNSサーバー構成の設定

  nmcli connection modify "$PROFILE" ipv4.dns 8.8.8.8 ipv4.ignore-auto-dns yes

その後、リアクティブ化プロファイルを使用してくださいnmcli connection up "$PROFILE"

答え2

次の方法はRed Hat ドキュメントから、Debianでも動作します。 systemdとNetworkManagerを使用するArch Linuxの場合は、同じまたは同様に機能できます。

rootユーザーとしてテキストエディタを使用して、次の内容で/etc/NetworkManager/conf.d/90-dns-none.confファイルを作成します。

[main]
dns=none

NetworkManagerサービスを再ロードします。

# systemctl reload NetworkManager

ノート

NetworkManagerはサービスを再ロードした後、/etc/resolv.confファイルを更新しなくなりました。ただし、ファイルの最後の内容は保存されます。

または、混乱を避けるために、/etc/resolv.confからNetworkManagerによって生成されたコメントを削除してください。

今すぐ編集でき、/etc/resolv.confNetworkManagerは上書きされません。

編集:誰かが編集を提案しましたが、ドキュメントページで直接引用しているので、引用を編集する必要はありません。私は彼らの意見をここに残します。

そうでない場合、rc-manager=unamanagedNMは盲目的にコマンド(dns = none、no dns)に沿ってresolv.confを空のファイルに書き換えます。

関連情報