PiHole의 로컬 호스트 이름에 대한 DNS 조회가 20.04에서 실패합니다(다른 시스템에서 작동).

PiHole의 로컬 호스트 이름에 대한 DNS 조회가 20.04에서 실패합니다(다른 시스템에서 작동).

외부 DNS 조회는 문제 없이 작동하지만 FQ가 아닌 도메인(예: 호스트 이름 부분만)은 PiHole을 사용하여 해결하도록 명시적으로 강제하지 않는 한 실패합니다.

nslookup myhost # this fails with SERVFAIL
nslookup myhost 192.168.12.34 # this works

systemd를 사용하지 않는 내 네트워크의 다른 시스템에서 작동하기 때문에 DNS 항목이 유효하다고 확신합니다(PiHole의 "로컬 DNS 레코드" 인터페이스를 통해 추가됨).

/etc/resolv.conf이틀 전에 새로 설치했기 때문에 이는 시스템 기본값(127.0.0.53 참조)입니다.

resolvectl statusPiHole의 IP는 내 Wi-Fi 연결(유일한 활성 연결)에 대한 유일한 DNS 서버로 표시됩니다.

이것은 PopOS 20.04를 새로 설치한 것이며 PiHole이 방금 5.0으로 업데이트되었습니다.

편집: 명확히 하기 위해 이 호스트는아니요PiHole을 실행하세요 - 네트워크의 다른 호스트에 있습니다.

여기서 무슨 일이 일어나고 있는지에 대한 아이디어가 있는 사람이 있나요?

시간 내 주셔서 감사합니다.

답변1

루프백 해결 프로그램을 우회하는 가장 쉬운 방법은 resolv.conf 심볼릭 링크를 다른 파일(내 PiHole의 IP가 포함된)에 지정하는 것입니다.

sudo ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.conf

답변2

DNS는 추가 정보가 없는 호스트 이름인 짧은 이름을 인식하지 못합니다.

nslookup에 호스트 이름만 제공하면 검색 도메인으로 구성된 모든 항목을 추가하려고 시도합니다. 이는 일반적으로 /etc/resolv.conf에 있으며 다음과 같습니다.

$ cat /etc/resolv.conf 
# Generated by NetworkManager
search domain.com
nameserver 10.0.0.1

검색 도메인이 없거나 구성된 검색 도메인 외부의 호스트 이름을 사용하는 경우에는 확인되지 않습니다.

DNS에서는 이를 해결하기 위해 FQDN을 조회하는 방법이 필요합니다.

이것은 제가 가지고 있는 제한된 정보를 바탕으로 한 제 추측일 뿐입니다.

관련 정보