Fedora 20의 DNS 확인 문제

Fedora 20의 DNS 확인 문제

방금 네트워크에 연결한 새로 구축된 Fedora 20 서버가 있습니다. VirtualBox 호스트에서 실행되는 가상 서버입니다. 모든 것이 작동하는 것 같지만 이름 확인에 문제가 있습니다.

(이 시점에서 이름 확인은 네트워크의 다른 모든 컴퓨터에서 잘 작동하는 별도의 하드웨어에 있는 Windows 서버에서 제공된다는 점을 말씀드리고 싶습니다.)

명령줄에서 unix.stackexchange.com. 내가 시도한 다른 모든 외부 호스트와 마찬가지로 이 문제를 매우 행복하게 해결하고 핑할 수 있습니다.

그러나 내 로컬 네트워크(라고 부르겠습니다 xyz.local)는 다릅니다. 내 F20 시스템의 네트워크 인터페이스에는 DOMAIN=xyx.local네트워크 스크립트(아래 전체 스크립트)가 있습니다. 명령줄에서는 다음과 같은 문제를 해결할 수 있지만 server-01그렇지 않습니다.server-01.xyz.local .

표준 이름이 긴 형식인 경우에도 짧은 형식의 별칭을 확인할 수 있습니다. 예를 들어 ping mysql해당 별칭으로 성공적으로 확인되지만 linux-04.xyz.local둘 중 어느 것도 확인할 수 없습니다 mysql.xyz.local.linux-04.xyz.local .

분명히 나는 ​​뭔가를 놓쳤습니다. 누구든지 무엇을 제안할 수 있나요?

/etc/hosts에는 127.0.0.1에 대한 표준 localhost 항목만 있습니다.

/etc/resolv.conf는 다음과 같습니다:

#Generated by Network Manager
search xyz.local
nameserver 192.168.xxx.xxx

내 인터페이스 스크립트는

TYPE=Ethernet
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
NAME="Wired connection 1"
UUID=<uuid>
ONBOOT=yes
IPADDR0=192.168.xxx.xxx
PREFIX0=24
GATEWAY0=192.168.xxx.xxx
DNS1=192.168.xxx.xxx
HWADDR=<mac>
DOMAIN=xyz.local
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes

답변1

문제의 일부는 NetworkManager를 통해 자동 생성되는 검색 경로로 인해 발생할 수 있습니다.

search xyz.local

이 줄은 실제로 다음과 같아야 합니다.

search xyz.local.

마지막 기간은 DNS 확인자가 중지하도록 지시하므로 중요합니다. 따라서 다음과 같은 작업은 수행되지 않습니다.

mysql.xyz.local.xyz.local

일시적으로 마침표를 수동으로 추가하여 호스트 이름을 확인하면 이를 확인할 수 있습니다.

$ nslookup mysql.xyz.local.

이 도메인 전체를 해결

이 문제를 해결하려면 DHCP 서버에서 도메인 정의를 변경하여 도메인을 xyz.local..

/etc/nsswitch.conf

호스트 이름을 확인하는 데 사용되는 방법은 파일에 의해 제어됩니다 /etc/nsswitch.conf. NSS 표기법은 Name Service Switch를 의미하며 매뉴얼 페이지를 통해 이에 대한 자세한 내용을 읽을 수 있습니다 man nss.

호스트 이름을 확인하는 방법을 제어하는 ​​내 파일의 줄은 다음과 같습니다.

$ grep ^hosts /etc/nsswitch.conf
hosts:      files dns mdns4_minimal

먼저 내 로컬 파일인 을 찾은 /etc/hosts다음 DNS를 두 번째로 쿼리합니다.

답변2

이 문제는 nsswitch.conf 파일의 "mdns4_minimal" 키워드로 인해 발생합니다. 이 키워드는 local로 끝나는 모든 것이 mdns를 사용하여 쿼리되어야 함을 확인자에게 알려줍니다. 해당 키워드(및 일반적으로 대괄호 안에 제공되는 추가 옵션)를 제거하면 충분합니다.

자세한 내용은 내에서 찾을 수 있습니다.우편

nslookup이 모든 것을 해결하는 이유는 nsswitch.conf를 조사하지 않고 /etc/resolv.conf를 직접 사용하기 때문입니다. 반면에 ping은 먼저 nsswitch.conf를 조사하고 거기에 기록된 내용을 사용하여 이름을 확인하는 확인자에 따라 다릅니다.

관련 정보