私のラップトップに4つのUbuntu仮想マシンをインストールし、各仮想マシンに追加のネットワークアダプタを追加し、プライベートネットワークに固定IPを提供しました。そのうちの1つを内部DNSサーバーとして構成し、そのIPを各仮想マシンのresolvconfベースファイルに追加してから、resolvconfとネットワークサービスを再起動しました。
resolv.confファイルには2つのDNSサーバーがあります。
私のホームルーター(resolvconfファイルに追加していません)
私が追加したもの。
何らかの理由で内部DNS(resolv.confファイルの2番目のDNS)が機能しません。
dhcp.confとインターフェースファイルには何も追加していません。
ファイルのルータDNS IPを生成するものは何ですか?内部DNSが2番目の場合、なぜ機能しないのですか? (手動で切り替えると動作します)
答え1
UbuntuはNetworkManager
自動的に設定され、接続がリセットされるたびにresolv.conf
後者が上書きされます。NetworkManager
使用順序を設定して永続的に適用するには、nameservers
次の手順を実行します。
- バックアップ
resolv.conf
:sudo cp /etc/resolv.conf /etc/resolv.conf.backup
resolv.conf
シンボリックリンクの場合は削除します。sudo rm -vf /etc/resolv.conf
- 新しい
resolv.conf
:を作成し、sudoedit /etc/resolv.conf
次の内容を入力します。
nameserver <IP_OF_YOUR_PRIMARY_DNS>
nameserver <IP_OF_YOUR_SECONDARY_DNS>
内部DNSサーバーが最初に照会されるサーバーになりたいので、これは<IP_OF_YOUR_PRIMARY_DNS>
そのサーバーのIPアドレスでなければなりません。
resolv.conf
次の変更を防ぐためにロック(不変ビット設定)NetworkManager
:sudo chattr +i /etc/resolv.conf
- 再起動
NetworkManager
:sudo systemctl restart NetworkManager
引用する
- マニュアル
resolv.conf
ページを引用すると、次のようになります。
複数のサーバーがある場合、パーサーライブラリはリストされた順序で照会します。
https://www.man7.org/linux/man-pages/man5/resolv.conf.5.html
ArchWiki
適用範囲も参照してくださいresolv.conf
。https://wiki.archlinux.org/index.php/Domain_name_solution#Overwriting_of_/etc/resolv.conf