참고 - 제 제목이 그 의미인 것 같아요...
내 서버에서 dnsmasq를 사용하고 클라이언트에 DNS(DHCP를 통해)를 설정하고 있습니다.
192.168.2.1 (local server)
ISP DNS 1
ISP DNS 2
이것은 적어도 작동합니다- 내 Ubuntu 클라이언트에서 sudo nmcli dev list | grep DNS
제공됩니다
IP4.DNS[1]: 192.168.2.1 (local)
IP4.DNS[2]: 122.56.237.1 (ISP 1)
IP4.DNS[3]: 210.55.111.1 (ISP 2)
그러나 실행하면 ping mail.mydomain.org
로컬 네트워크 대신 외부 인터넷 주소가 반환됩니다.
nslookup
Ubuntu의 네트워크 관리자가 작동 중임을 표시하고( nmcli
위와 일치) 내 도메인의 외부 IP가 신뢰할 수 없음을 나타냅니다. 로 변경하면 server 192.168.2.1
검색 시 로컬 IP만 제공됩니다.
내 (클라이언트의) 해결.conf는 결국
nameserver 172.20.1.153
nameserver 172.20.1.6
nameserver 127.0.1.1
후배가 맨 아래야? 이것이 nslookup이 사용하는 것 같습니다 ...
그러면 어떻게 이런 일이 일어날 수 있었습니까? 문제를 해결하려면 어떻게 해야 하나요? (물론 보조 DNS를 유지하고 싶습니다). 로컬 DNS 서버를 사용해 보았지만 어떤 구성을 변경하더라도 dnsmasq는 아무 것도 전달할 수 없는 것 같습니다(문서도 도움이 되지 않습니다. "전달 전용"이어야 하는 것처럼 보이기 때문입니다) 기본적으로).
분석은 Ubuntu에서 수행되었지만 Mac에서도 동일한 상황이 발생합니다.
답변1
DNS 확인자 목록이나 NS
레코드 세트는 본질적으로 순서가 지정되지 않으므로 "기본"이 없습니다. 고객은 원하는 순서대로 원하는 내용을 자유롭게 문의할 수 있습니다. 특히 파서, 클라이언트의 경우가능한기본적으로 서버는 클라이언트에 표시되는 순서대로 사용되지만, 알고 있듯이 그렇지 않을 수도 있습니다.
답변2
제 생각에는 가장 쉬운 방법은 로컬 파서가 재귀 조회도 수행하도록 하는 것입니다. ISP 확인자의 IP로 로컬 확인자를 구성한 다음 로컬 확인자만으로 모든 클라이언트를 구성할 수 있습니다. 오히려 자체 정보로 응답하므로 LAN의 서버를 통과하는 데 걸리는 시간은 무시할 수 있습니다.