저는 민트메이트 17.2를 사용하고 있습니다.
dig를 사용할 때 확인된 IP "응답"이 특정 도메인 이름에 대해 잘못되었습니다. 응답 서버는 입니다 127.0.0.1
.
SSH, 웹 브라우저 등을 통해 내 로컬 컴퓨터에서 이 도메인에 액세스하려고 하면 잘못된 IP로 확인됩니다.
온라인 도구나 다른 컴퓨터를 사용한 DNS 조회는 정상적으로 작동합니다.
로컬 시스템의 무언가가 요청을 가로채고 잘못된 캐시 결과를 반환하고 있습니다. 다양한 캐싱 프로그램을 살펴봤지만 설치하거나 구성한 것은 없는 것 같습니다.
반환된 IP 주소는 이전 IP이고 기본 DNS 레코드는 1년 전에 변경되었습니다.
내 컴퓨터에서 도메인을 올바르게 확인할 수 있도록 어떤 프로그램이 로컬에서 DNS를 가로채고 있는지 확인하고 비활성화하려면 어떻게 해야 합니까?
/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 127.0.1.1
답변1
Resolvconf는 이를 로컬 컴퓨터의 포트 53에서 실행되는 로컬 소프트웨어를 가리킵니다.
어느 것을 알아내려면:
sudo netstat -anlp | grep :53
우리가 발견한 대로 그것은 avahi 데몬입니다.
DNS 확인을 추적하려면 다음 명령도 유용합니다.
dig +trace www.cnn.com
특히 서버 상황에서 DNS 설정을 직접 제어하려면(Mint라고 말한 것을 확인했습니다) resolvconf를 사용하지 않는 것이 좋습니다.
다음 명령을 사용하여 제거할 수 있습니다.
dpkg --purge resolvconf
그런 다음 DHCP를 통해 IP를 얻은 경우 그대로 두고, 그렇지 않으면 /etc/resolv.conf를 DNS 서버로 채웁니다.
mDNS 해상도나 기업 네트워킹에 관심이 없다면 avahi를 제거하는 것이 좋습니다.
데스크톱 설정에서는 모든 서비스를 다시 시작하거나 다시 시작하는 것이 좋습니다. 적어도 네트워크를 다시 시작하겠습니다 service networking restart
.
Avahi mDNS/DNS-SD 데몬은 Apple의 Zeroconf 아키텍처("Rendezvous" 또는 "Bonjour"라고도 함)를 구현합니다. 데몬은 mDNS/DNS-SD를 사용하여 로컬 IP 주소와 정적 서비스를 등록하고, 로컬 프로그램이 avahi-daemon에서 관리하는 mDNS 레코드 캐시를 활용할 수 있도록 두 개의 IPC API를 제공합니다.
작업 환경에서는 필요한 경우 네트워크 수준 서버/워크스테이션에서 mDNS 레코드 게시를 추적하는 것도 흥미로울 수 있습니다. 누락된 호스트 파일이 있거나 일부 오래된 서버 설정이 mDNS를 통해 이전 IP 주소를 전파하고 있는 것 같습니다.
다음 명령을 사용하여 로컬 네트워크에서 mDNS 패킷을 수신할 수도 있습니다.
sudo tcpdump -n udp port 5353
~에서모바일 DNS
mDNS(멀티캐스트 도메인 이름 시스템)는 로컬 이름 서버가 없는 소규모 네트워크의 IP 주소로 호스트 이름을 확인합니다. 이는 기본적으로 유니캐스트 DNS(Domain Name System)와 동일한 프로그래밍 인터페이스, 패킷 형식 및 작동 의미를 사용하는 구성이 필요 없는 서비스입니다. mDNS는 Stuart Cheshire가 독립적으로 작동하도록 설계했지만 유니캐스트 DNS 서버와도 작동할 수 있습니다.