最近、仮想マシンの1つに別のネットワークカードを追加する必要があり、いくつかの問題が見つかりました。 NIC2 は、NIC1 の dhcp サーバーから取得した DNS 設定を上書きすることがわかりました。明らかに静的にすることもできますが、そうすることは本当に避けたいと思います。あるネットワークカードを他のネットワークカードより優先する方法はありますか? Debian は DNS 設定をインポートする DHCP サーバをどのように決定しますか?
事前にありがとう
ベストアンサー1
DHCPクライアントがファイルを直接上書きするように構成されている場合は、/etc/resolv.conf
最後に作成されたDNSアドレスセットが優先され、インターフェイスが失敗した場合に設定が適用されます。特定のインターフェイスを設定する前にインターフェイスの終了順序がインターフェイスの起動順序とまったく逆でない場合、予期しない結果が発生する可能性があります。
(私の考えでは、DHCPはもともと構成するNICが1つしかない「シンプル」クライアント用に設計されているようです。 =異なるネットワーク上の複数のNICの場合、通常は静的IPアドレスを割り当てるのに十分です。
このresolvconf
パッケージを使用してDNS設定を一元管理する場合、どのインターフェイスがどのDNS設定を提供するのかを覚えてすべてマージし、インターフェイスが無効になると、無効な設定インターフェイスを含まずに再マージされます。おそらくほとんどの場合、正しいことでしょう。
ただし、このコマンドを使用してのみ実際のDNSサーバー設定を表示および管理できsystemd-resolved
ますresolv.conf
。グローバルおよびリンクごとのDNS設定を理解し、既存のDNS設定よりも一般的です。nameserver 127.0.0.53
resolvectl
systemd-resolved
たとえば、ネットワーク構成管理システムを使用している場合は、そのNetworkManager
すべての上に別のレイヤーが追加されます。
resolv.conf
クラシックベースのDNS設定(パッケージを含めるか除く)を使用している場合、DNSリゾルバライブラリは、リストされているすべてのネームサーバが交換可能であり、それによって同じ情報を使用できると想定しますresolvconf
。/etc/resolv.conf
したがって、リゾルバーが最初に構成されたDNSサーバーから「この名前は存在しません」という応答を受け取った場合〜しないだろう別の構成のサーバーに2番目のコメントを依頼してください。 DNSでは、「対応する名前/情報はありません」はエラー条件ではなく、クエリに対して可能な有効な応答です。
resolv.conf
特定のドメインに属する名前のクエリをあるDNSサーバーセットに送信し、別のクエリを別のサーバーセットに渡す設定が必要な場合は、これはクラシックDNS設定に基づいて実行できる操作ではないことに注意してください。もの。systemd-resolved
これは「ルーティングドメイン」設定を使用して行うことができ、クラシックが必要な場合は適切な転送ルールで設定できる他のローカルDNSプロキシがresolv.conf
必要です。dnsmasq