호스트 명령이 성공했지만 DNS를 확인할 수 없습니다.

호스트 명령이 성공했지만 DNS를 확인할 수 없습니다.

Bind9 DNS 서버 설정을 완료하려고 합니다.

두 시스템 모두 Debian Stretch를 실행합니다. 서비스 컴퓨터 (192.168.0.113)는 VM 호스트이고 클라이언트 컴퓨터는 (192.168.0.104)가상 게스트입니다.

서버가 제대로 실행되는 것 같지만 혼란스러운 결과가 나타납니다. 명령 은 host예상대로 구문 분석합니다.

$ host wiles.local
wiles.local has address 192.168.0.113

하지만 다른 곳에서는 호스트 이름으로 시스템을 참조할 수 없습니다.

$ ssh wiles.local
ssh: Could not resolve hostname wiles.local: Name or service not known

물론, 명시적으로 IP를 참조하여 시스템에 아무런 문제 없이 SSH로 접속할 수 있습니다.

클라이언트 컴퓨터가 올바른 위치에서 DNS를 찾는 것 같습니다.

$ nslookup google.com
Server:         192.168.0.113
Address:        192.168.0.113#53

Non-authoritative answer:
Name:   google.com
Address: 216.58.192.206

여기서 차이점이 무엇인지, 이 문제를 해결하기 위해 무엇을 할 수 있는지 알아내는 데 누군가 도움을 줄 수 있기를 바랍니다.

내가 알고 있는 관련 구성 정보를 제공하겠습니다.

서비스 시스템에서:

/etc/bind/named.conf.local

zone "wiles.local" {
        type master;
        file "/etc/bind/db.wiles.local";
};

/etc/bind/db.wiles.local

$TTL    86400
@       IN      SOA     wiles.local. root.localhost. (
                              1         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                          86400 )       ; Negative Cache TTL
;
        IN      A       192.168.0.113
@       IN      NS      localhost.
www     IN      A       192.168.0.104

연결된 시스템에서:

/etc/네트워크/인터페이스

auto lo enp0s3
iface lo inet loopback

iface enp0s3 inet static
        address 192.168.0.104
        netmask 255.255.255.0
        gateway 192.168.0.1
        dns-nameservers 192.168.0.113

마침내:

/etc/resolv.conf

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 192.168.0.113

마지막 파일에 대한 참고 사항: 시끄러운 경고에 맞서서 해당 줄을 직접 작성해야 했습니다. 그때까지 시스템은 외부 또는 내부 서비스의 호스트 이름을 확인할 수 없습니다. 나는 이것이 설치하고 실행함으로써 해결될 수 있는 별도의 문제라고 생각 resolvconf하지만, 문제가 관련된 경우를 대비해 언급합니다.

답변1

Johan Myréen이 댓글에서 지적했듯이 예약된 TLD를 사용하여 문제가 발생한 것 같습니다. 저는 mDNS를 사용하지 않기 때문에 에서 으로 전환하면 이름 확인이 제대로 작동합니다 .local..com

관련 정보