subdomain.localhost를 127.0.0.1로 설정하고 확인하는 모든 단계는 무엇입니까?

subdomain.localhost를 127.0.0.1로 설정하고 확인하는 모든 단계는 무엇입니까?

갑자기 localhost의 하위 도메인이 작동하지 않는 것에 대해 완고함을 느꼈습니다. 내 /etc/hosts파일은 다음과 같습니다.

127.0.0.1   localhost
255.255.255.255 broadcasthost
::1             localhost 
fe80::1%lo0 localhost

127.0.0.1   develop2win.de
127.0.0.1   develop2win.de

127.0.0.1   alomvar.localhost

다음과 같이 하나의 IP에 대한 모든 호스트 이름을 한 줄에 입력하는 것도 작동하지 않습니다.

127.0.0.1   localhost alomvar.localhost develop2win.de www.develop2win.de

또한 다음 명령을 사용하여 OS X 10.9 Mavericks에 적합한 DNS 확인자를 다시 시작했습니다.

dscacheutil -flushcache; sudo killall -HUP mDNSResponder

그러나 nslookup alomvar.localhost터미널에서 발행하면 다음이 생성됩니다.

Server:     192.168.178.1
Address:    192.168.178.1#53

** server can't find alomvar.localhost: NXDOMAIN

이것이 내 로컬 네트워크에 있는 라우터의 IP입니다. 이 경우 해결을 위해 localhost 호스트 파일을 건너뛴 것처럼 보입니다. 프로세스가 develop2win.de성공적으로 해결되어 로컬 Apache 가상 호스트를 가리키기 전입니다. 하지만 이제는 더 이상 작동하지 않습니다. 위와 같은 오류입니다(WTF?). 그러나 일반 검색은 localhost여전히 ​​잘 작동합니다.

Server:     192.168.178.1
Address:    192.168.178.1#53

Name:   localhost
Address: 127.0.0.1

업데이트 1: 저도 아무런 변화없이 재부팅을 했습니다. DNS 쿼리가 로컬에서 전혀 해결되지 않고 대신 내 라우터로 전송되는 것 같습니다.

내가 무엇을 놓치고 있나요? 다른 사람이 OS X Mavericks에서 localhost에 대한 하위 도메인을 설정하려고 시도했습니까? 이것은 Apache에 관한 것이 아니라 DNS에 관한 것입니다.

여기에는시스템 환경설정의 내 DNS 구성 스크린샷, 그런데. 아직 이미지를 삽입하기엔 평판이 부족해서 외부 사이트 링크입니다.

업데이트 2: dave_thompson_085가 지적한 대로 터미널에서 검사 host와 명령을 수행했습니다 . pinglocalhost의 경우 잘 작동합니다.

$ host localhost
localhost has address 127.0.0.1

그러나 하위 도메인의 경우 다음이 아닙니다.

$ host alomvar.localhost
Host alomvar.localhost not found: 3(NXDOMAIN)

localhost를 ping해도 잘 작동합니다.

$ ping localhost
PING localhost (127.0.0.1): 56 data bytes
64 bytes from 127.0.0.1: icmp_seq=0 ttl=64 time=0.048 ms
64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.078 ms
64 bytes from 127.0.0.1: icmp_seq=2 ttl=64 time=0.085 ms
64 bytes from 127.0.0.1: icmp_seq=3 ttl=64 time=0.076 ms
^C
--- localhost ping statistics ---
4 packets transmitted, 4 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 0.048/0.072/0.085/0.014 ms

이제 짜증나게도 하위 도메인에서도 작동합니다.

$ ping alomvar.localhost
PING alomvar.localhost (127.0.0.1): 56 data bytes
64 bytes from 127.0.0.1: icmp_seq=0 ttl=64 time=0.039 ms
64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.042 ms
64 bytes from 127.0.0.1: icmp_seq=2 ttl=64 time=0.075 ms
64 bytes from 127.0.0.1: icmp_seq=3 ttl=64 time=0.091 ms
^C
--- alomvar.localhost ping statistics ---
4 packets transmitted, 4 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 0.039/0.062/0.091/0.022 ms

문제 없이 ping을 실행했지만 하위 도메인을 확인할 수 없는 경우 어떻게 해야 합니까? 인터넷에서 다른 사람들이 어떻게 했는지 살펴보면 분명히 이렇게 작동할 것입니다. 나는 네트워킹에 관한 균열이 아닙니다. 아마도 이것을 설정하는 데 직접 필요한 것 외에 다른 것을 깨뜨렸을 것입니다.

나는 또한 diglocalhost와 하위 도메인에서도 실행했습니다. 출력이 다소 길어서 이 질문은 이미 충분히 복잡하다고 생각합니다. 보다이 파일발굴 출력용.

업데이트 3: 네트워크에서 Mac 연결을 끊고(이더넷 네트워크 어댑터 비활성화) localhost 검색에도 실패할 dig때 .host

업데이트 4: 브라우저 내에서 소위 호스트 이름을 듣고 있는 Apache 가상 호스트를 표시하는 것이 작동한다는 것을 알았습니다. 그것은 문제의 해결책이 아니라 내가 살아가고 일할 수 있는 환경이다. 그러나 나는 여전히 문제를 해결하는 데 관심이 있습니다. 누구든지 추가 아이디어가 있으면 알려주십시오.

답변1

dig, hostnslookup모두 시스템 이름 확인자를 우회하고 DNS에 직접 쿼리합니다. 따라서 /etc/hosts에 정의된 이름을 볼 수 없습니다.또한DNS 서비스에 정의됨) 또는 mDNS(Bonjour라고도 함) .local 이름 디렉터리 서비스의 컴퓨터 항목 또는...

시스템 확인자가 보는 내용을 보려면 가장 좋은 도구는 입니다 dscacheutil. 불행하게도 그 구문은 다소 서투르므로( ) 일반적으로 시스템 이름 확인자를 사용하는 것과 dscacheutil -q host -a name alomvar.localhost유사한 것을 사용하는 것이 더 빠릅니다 . ping그러나 전체 세부정보(예: 이름이 여러 주소로 확인되는지 여부)를 원하는 경우에는 dscacheutil이 방법을 사용하세요.

관련 정보