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 서버 중 하나를 현재 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조건부 전달 서버의 목표를 달성하기 위한 몇 가지 제안을 보았습니다 .

링크

관련 정보