resolv.conf가 DNS 주소를 기억하지 못하는 이유는 무엇입니까?

resolv.conf가 DNS 주소를 기억하지 못하는 이유는 무엇입니까?

Apache 구성에서 와일드카드를 사용할 수 있도록 파일을 설치 하고 dnsmasq추가했습니다 . 하지만 컴퓨터를 다시 시작하거나 Wi-Fi 연결을 변경할 때마다 Wi-Fi 연결을 다시 추가해야 작동합니다.nameserver 127.0.0.1resolv.conf

왜 이런 일이 발생하며 어떻게 작동하게 할 수 있나요?

답변1

아직 12.04 이상으로 업그레이드되지 않은 12.04 이전의 Ubuntu 시스템을 실행 중이거나 resolvconf 패키지를 제거한 경우 resolvconf 패키지를 설치하십시오.

sudo apt-get install resolvconf

resolvconf가 이미 설치된 경우 /etc/resolv.conf가 ../run/resolvconf/resolv.conf에 대한 심볼릭 링크인지 확인하십시오.

sudo dpkg-reconfigure resolvconf

dnsmasq 패키지(dnsmasq-base 패키지와 혼동하지 마세요)를 설치한 후에는 /etc/resolv.conf를 편집할 필요가 없습니다. dnsmasq initscript는 dnsmasq가 시작될 때 resolvconf를 통해 '127.0.0.1'이 resolv.conf에 추가되도록 합니다. 단, 값이 /etc/default/dnsmasq IGNORE_RESOLVCONF에 설정되어 있지 않아야 합니다 .yes

의심하시는 분들은 /etc/init.d/dnsmasq를 읽어보시기 바랍니다.

PS Ubuntu 12.04에는 복잡한 요소가 있습니다. NetworkManager는 기본적으로 127.0.0.1에서만 수신 대기하는 dnsmasq 프로세스를 시작합니다. 이는 "독립형" dnsmasq 프로세스와 충돌합니다. 둘 중 하나만 시작할 수 있습니다. 이는 알려진 버그 #959037로 Ubuntu 12.10에서 수정되었습니다(NM-dnsmasq의 청취 주소를 127.0.1.1로 이동). 여전히 Ubuntu 12.04를 실행 중이고 독립형 dnsmasq를 실행하려면 NetworkManager 제어 dnsmasq를 비활성화하거나(/etc/NetworkManager/NetworkManager.conf에서 "dns=dnsmasq"를 주석 처리하여) 독립형 dnsmasq를 구성해야 합니다. 127.0.0.1에서 들어보세요.

답변2

Network Manager에서 기본 DNS 서버를 지정해야 합니다. 그렇지 않으면 계속해서 구성 파일을 덮어씁니다. 보다DNS IP를 변경하는 올바른 방법은 무엇입니까?

답변3

건물에에길님의 답변입니다. 네트워크 관리자가 파일을 방해하는 경우, 누군가우분투 포럼resolvconf 패키지를 제거하여 문제를 해결했습니다. 스레드가 약간 오래되었기 때문에 여전히 작동할 수도 있고 작동하지 않을 수도 있습니다.

관련 정보