VirtualBox에서 CentOS 7 시스템을 실행하고 있습니다. 호스트 전용 네트워크에 연결됩니다. 파일 /etc/hosts
에는 다음 내용이 포함되어 있습니다.
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost4 localhost4.localdomain4
192.168.56.102 prospero.localdomain prospero
192.168.56.105 ariel.localdomain ariel
ariel.localdomain을 ping하면 예상대로 192.168.56.105가 ping됩니다.
# ping -c1 ariel.localdomain
PING ariel.localdomain (192.168.56.105) 56(84) bytes of data
ariel.localdomain을 ping6하면 예상하지 못한 ::1 ping이 발생합니다.
# ping6 -c1 ariel.localdomain
PING ariel.localdomain(localhost (::1)) 56 data bytes
또한 존재하지 않는 foo.localdomain에 대해 ping6을 수행하고 동일한 응답을 얻을 수 있는데, 이는 전혀 예상하지 못한 결과입니다.
# ping6 -c1 foo.localdomain
PING foo.localdomain(localhost (::1)) 56 data bytes
ping6이 *.localdomain을 localhost로 확인하는 이유는 무엇입니까?
호스트 전용 네트워크에는 DNS 서버가 없으므로 DNS를 사용하는 쿼리는 시간 초과됩니다. 예를 들면 다음과 같습니다.
nslookup
dig
host
답변1
귀하의 hosts
문서에 따르면 "ariel.localdomain의 IPv6 주소는 무엇입니까?"라는 질문에 대한 답변은 ::1
해당 유형의 요청 에 응답하도록 구성되는 DNS 서버에서 나올 가능성이 높습니다 *.localdomain
(btw, I 이것이 foo.localdomain
IPv4 도메인에서도 해결된다는 사실은 놀라지 않을 것입니다 .127.0.0.1
디버그 모드에서 nslookup
(또는 dig
, 또는 )를 사용하면 hosts
정보의 출처를 확인할 수 있습니다. 아래 (가상) 예시의 처음 두 줄을 참조하세요.
$ nslookup -debug -type=AAAA foo.localdomain
Server: ns1.google.com
Address: 216.239.32.10#53
...
foo.localdomain has AAAA address ::1
마지막으로 이는 일반적으로 LAN( 귀하의 경우) 이 아닌 localdomain
루프백 네트워크( )에 대한 것입니다 . 호스트는 일반적으로 컴퓨터에 대해 로컬이어야 합니다(즉, IPv4 주소가 있어야 함 ). 이는 단지 관례일 뿐이지만 DNS가 이런 방식으로 응답하는 이유를 설명할 수 있습니다.127/8
192.168.56/24
xxx.localdomain
127.x.x.x