Ubuntu 20.04 systemd-resolvedは、検索ドメインに基づいて他のDNSサーバーを確認する必要があります。

Ubuntu 20.04 systemd-resolvedは、検索ドメインに基づいて他のDNSサーバーを確認する必要があります。

私はUbuntu 20.04を使用しており、systemd-resolvedを使用してDNSクエリを解決しています。機械は1つのインターフェイスに接続されます。

network:
  ethernets:
    eth0:
      dhcp4: true
      set-name: eth0
      nameservers:
        addresses: [11.2.3.4, 12.2.3.4]
        search: [domain.first, domain.second]
  version: 2

Resolvectlは、DNSサーバーの1つを現在のDNSサーバーとして選択します。私が直面している問題は、domain.firstに対するクエリのみを解決する11.2.3.4 DNSサーバーと、domain.secondに対するクエリのみを解決する別の12.2.3.4があることです。

Resolvectlが現在のDNSサーバーとして11.2.3.4を選択するたびに、domain.firstへのクエリは成功しますが、domain.secondへのクエリは失敗します(12.2.3.4で解決する必要があるため、これは明らかです)。

ドメイン検索とそのDNSサーバーに基づいてクエリを解決するようにresolvctlを設定する方法はありますか?つまり、検索ドメインに基づいて他のDNSサーバーを確認します。

私はバインド9がこの機能を提供していることを知っていますが、systemd-resolved解決プログラムを使用して同様のことを達成したいと思います。

ベストアンサー1

私が知っている最も近いsystemd-resolved機能は「split dns」ですが、これは複数のネットワークインターフェイス(物理アダプタやVPNアダプタなど)でのみ機能すると思います。

dnsmasq条件付き配信サーバーの目標を達成するためのいくつかの提案を見ました。

リンク

おすすめ記事