nslookup이 주소를 확인하려고 할 때 왜 / etc / hosts 파일을 조회하지 않습니까?


15

127.0.0.1/etc/hosts파일 에서 확인 된 두 개의 로컬 도메인이 있습니다. 그리고 그것은 한동안 괜찮 았지만 지금은 내가 달릴 때 :

nslookup test.local

결과는 다음과 같습니다.

Server:     192.168.1.3
Address:    192.168.1.3#53

** server can't find test.local: NXDOMAIN

192.168.1.3우리의 네트워크 DNS이며, 내 로컬 도메인을 알고 가정 아니에요 test.local. 몇 번의 검색 후 /etc/nsswitch.conf파일에 의해 쿼리 할 DNS 소스의 우선 순위에 대한 정보가있는 것을 발견 했습니다. 그러나 아무런 문제가 없었습니다! 내 꺼야 :

# /etc/nsswitch.conf
#
# Example configuration of GNU Name Service Switch functionality.
# If you have the `glibc-doc-reference' and `info' packages installed, try:
# `info libc "Name Service Switch"' for information about this file.

passwd:         compat
group:          compat
shadow:         compat

hosts:          files mdns4_minimal [NOTFOUND=return] dns
networks:       files

protocols:      db files
services:       db files
ethers:         db files
rpc:            db files

netgroup:       nis

hosts파일이 왜 DNS 조회에 포함되지 않는지 아는 사람이 있습니까?

답변:


20

nslookup다른 응용 프로그램에서 사용 하는 이름 서비스 스위치 하위 시스템과 크게 다른 적절한 DNS 확인 만 수행 합니다. 즉, 무시 하고 mDNS입니다.nslookup/etc/hosts

이와 같은 로컬 해상도를 테스트하려면 NSS를 사용하는 것을 사용하십시오. ping <hostname>예를 들어. 다음 /etc/hosts은 내 네트워크 항목을 기반으로 한 간단한 데모 입니다.

$ nslookup bert
Server:     8.8.8.8
Address:    8.8.8.8#53

** server can't find bert: NXDOMAIN

$ ping bert
PING bert (10.10.0.4) 56(84) bytes of data.
64 bytes from bert (10.10.0.4): icmp_seq=1 ttl=64 time=0.352 ms
64 bytes from bert (10.10.0.4): icmp_seq=2 ttl=64 time=0.407 ms

/etc/hosts파일을 고려할 수있는 DNS 서버 및 프록시가 있습니다 . 이 경우 nslookup로컬 소스에서 결과를 반환 할 수 있습니다.


5
대신 여분의 물건을 모두 필요로하지 않기 때문에 ping하나를 사용해야합니다 . getent ahostsping
Mikko Rantalainen

2

/etc/hosts특정 호스트 (mysite.com)의 파일 에서 이름 확인을 원한다고 생각합니다 .

이 동작을 일으킬 수있는 또 다른 일반적인 문제는 /etc/hosts파일에 동일한 IP에 대해 많은 항목이있을 수 있다는 것입니다 .

1.1.1.1 host1.domain1.com
1.1.1.1 host2.domain2.com

일부 구현에서 이로 인해 이름 확인이 DNS로 전달 될 수 있습니다. 빠른 수정, 모든 것을 1 행으로 그룹화

1.1.1.1 host1.domain1.com host2.domain2.com

1

내가 보는 또 다른 일반적인 점은 누군가 (보통 나)가 IP 주소를 호스트 이름으로 바꾸는 것입니다 /etc/hosts.

mysite.com    10.2.3.4

언뜻보기에 정상으로 보입니다 ... 여기 내 시간의 약 50 %가 있습니다.

10.2.3.4    mysite.com

이번에는 유죄 ... # sigh
Cybex

1
일반적으로 호스트 파일은 사전 정의 된 127.0.0.1 로컬 호스트 항목과 함께 제공됩니다. 잘못하는 것은 너무나 잘못입니다 :-)
m3nda
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.