resolv.conf 파일이 매번 재생성되는 이유는 무엇입니까?


17

/etc/resolv.conf파일은 내 3G 모뎀을 다시 연결할 때 나 구글 DNS 서버를 느슨하게하고, 때마다 다시 생성됩니다.

DNS 설정을 변경하기 위해 http://code.google.com/intl/fr-FR/speed/public-dns/docs/using.html을 살펴 보았습니다 .

dhclient.conf꽤 큰 (58 줄) 그래서 pastebin에 게시했습니다 .

그러나 dhclient.conf주석 줄이나 빈 줄이없는 전체는 다음 과 같습니다.

option rfc3442-classless-static-routes code 121 = array of unsigned integer 8;
send host-name "<hostname>";
request subnet-mask, broadcast-address, time-offset, routers,
    domain-name, domain-name-servers, domain-search, host-name,
    netbios-name-servers, netbios-scope, interface-mtu,
    rfc3442-classless-static-routes, ntp-servers;
prepend domain-name-servers 8.8.8.8, 8.8.4.4;

wvdialNetwork Manager 대신 사용하고 있습니다.


불행히도에 대한 정보는 없습니다 wvdial. 이 시점에서 패키지 또는 아직 발견되지 않은 다른 패키지가 여기에 관련되어 있다고 생각합니다. DNS, DHCP, 인터페이스 등에 영향을 줄 수있는 다른 네트워크 관련 응용 프로그램이나 도구를 어떤 방식으로 설치했는지 알고 있습니까?
belacqua

답변:


6

12.04에서는 resolvconf가 기본적으로 설치됩니다. 다음은 일반적인 사용 사례에서 DNS 구성을 변경하는 방법에 대한 간략한 요약입니다.

정적 구성의 사용 ifup, 사용 dns-nameserversdns-search항목에 /etc/network/interfaces.

를 사용하는 정적 구성의 경우 연결 편집기 의 및 필드에 주소를 NetworkManager선택하고 Automatic (DHCP) addresses only Method주소와 도메인 이름을 입력하십시오 .Additional DNS serversAdditional search domains

resolvconf의 기본 구성, 사용 재정의하려면 base, headtail에서를 /etc/resolvconf/resolv.conf.d/. 이 파일에는 주소와 도메인 이름 만 위에 설명 된 것처럼 실제로 다른 곳에 속하기 때문에 임시 측정으로 만 입력하십시오.

resolvconf를 비활성화하지 않는 것이 좋지만 symlink /etc/resolv.conf를 일반 파일로 바꿀 수 있습니다 .

자세한 내용은 Stéphane Graber의 블로그 게시물을 참조하십시오 .


4

Google DNS 서버를 resolv.conf에 유지하기 만하면됩니다. 편집
/etc/dhcp3/dhclient.conf하고 추가 할 수 있습니다.

prepend domain-name-servers 8.8.8.8;
prepend domain-name-servers 8.8.4.4;

내가 가지고있는 것과 내가 여기에 표시하는 것의 유일한 차이점은 언급 한 문서에 따라 두 줄의 이름 서버가 한 줄에 있다는 것입니다.

내가 빠진 것이 아니라면 dhclient.conf는 문제가되지 않습니다. 이 시점에서 문제는 wvdial과 관련이 있다고 가정합니다.

우분투 포럼 에서 시도해 볼만한 것이 있습니다 .

gksudo gedit /etc/ppp/peers/wvdial

REMOVE 매개 변수 usepeerdns 및 파일 저장. 암호:

gksudo gedit /etc/wvdial.conf

이 줄을 추가하십시오 :

check DNS = no
auto DNS = no

@jgbelacqua 나는 스피어 라인에서 시도했지만 작동
하지 않았다

@Jakh 나는 prepend 행을 상단에 더 가깝게 이동해도 실패한다고 가정합니다. (이것이 내가 설정 한 방법입니다.)
belacqua

@jgbelacqua 네, 저도 시도했습니다;]
Jakh Saidlikp

@Jakh- request subnet-mask, broadcast-address, time-offset, routers, domain-name, domain-name-servers, domain-search, host-name, netbios-name-servers, netbios-scope, interface-mtu, rfc3442-classless-static-routes, ntp-servers;이름 서버를 제거하기 위해 줄을 편집 해 보셨습니까 ?
belacqua

@jgbelacqu 아니 지금 그것을 시도하고 당신을 kno하자
Jakh Saidlikp

4

NetworkManger를 사용하지 않고 CLI를 통해 고정 주소를 사용하거나 연결과 무관하게 네임 서버를 설정하는 가장 좋은 방법은 다음과 같습니다.

resolvconf 패키지를 설치하십시오 .

운영

sudo nano /etc/resolvconf/resolv.conf.d/head

(두려운 경고는 무시하십시오. /etc/resolv.conf가 자동으로 생성되므로 경고가 있으므로 /etc/resolv.conf가 생성 될 때 /etc/resolv.conf에 배치됩니다.) 파일 끝에서, 더하다

 nameserver <ip_of_nameserver>

Ctrl x파일을 저장하려면 예를 누르고 대답하십시오. 완료하려면 /etc/resolv.conf를 다시 생성하여 변경 사항을 지금 적용하십시오.

 sudo resolvconf -u

정적 이름 서버 주소를 resolv.conf에 넣는 것은 일반적으로 좋지 않습니다. /usr/share/doc/resolvconf/README.gz를 읽으십시오.
jdthood

0

당신은 설정할 수 있습니다 domain-name-serversdhclient.conf 옵션을 있습니다.


자신의 pastebin을 확인하십시오-이미 가지고있는 것처럼 보입니다.
belacqua

고마워요. 그건 그렇고, 당신의 해결책은 정확 할 수 있으므로 의견 대신 답변으로 게시하는 것을 고려하십시오.
Adam Byrtek

안녕 @ 아담 당신은 좀 더 명확 메신저 멍청한 수 있습니다 :] 감사합니다
Jakh Saidlikp

0

다음 명령으로 동일한 문제를 해결했습니다.

echo "nameserver 212.217.0.1" >> /etc/resolvconf/resolv.conf.d/head
ln -s /etc/resolvconf/resolv.conf.d/head /etc/resolv.conf
resolvconf -u
/etc/init.d/networking restart

1
이 방법으로 문제를 해결했을 수도 있지만 완전히 잘못 구성되어 있습니다. /etc/resolv.conf를 resolvconf의 구성 파일 중 하나 인 정적 파일로 symlinking했습니다. resolvconf를 비활성화하려면 symlink /etc/resolv.conf를 삭제하고 정적 파일을 저장하는 것이 훨씬 간단합니다.
jdthood

-1

적절하게 패킷 resolvconf가 설치되어 있습니다. 이 경우 인터페이스가 나타날 때마다 resolv.conf가 업데이트됩니다. /etc/resolv.conf.tail 파일을 사용하여 정적 항목을 추가 할 수 있습니다. 자세한 내용은 resolv.conf 매뉴얼 페이지를 참조하십시오.


noo 나는 그 패키지가 설치되어
있지 않다

resolvconf 프로그램은 /etc/resolv.conf를 업데이트하지만 /etc/resolv.conf가 ../run/resolvconf/resolv.conf에 대한 심볼릭 링크 인 경우에만 해당됩니다. resolvconf 패키지는 다른 많은 프로그램들이 서로 독립적으로 /etc/resolv.conf에서 스톰 핑되어 혼돈을 일으키기 때문에 도입되었습니다 . /usr/share/doc/resolvconf/README.gz를 읽으십시오. 따라서 /etc/resolv.conf가 업데이트되었다는 사실 때문에 resolvconf가 설치되었다는 질문 (2011 년 3 월)을 따르지 않습니다. 아마도 pppd가 파일을 다시 쓰고 있었을 것입니다. (그러나 우분투 12.04 현재 resolvconf는 기본 시스템의 일부입니다.)
jdthood

-1

똑같은 문제가 있었는데, 이동 통신사가 제공하는 DNS 서버는 다소 열악했기 때문에 Google의 DNS를 사용하고 싶었습니다. 또한 NetworkManager는 모바일 광대역 연결을 처리하는 데 열악한 작업을 수행하므로wvdial 필수입니다.

그 결과 /etc/resolv.conf로는 상징적 인 링크가 되었을 ubuntu 12.10수도 있고 심지어 짝수 일 수도 12.04있습니다. 여기에 내가 무슨 짓을했는지의 sudo unlink /etc/resolv.conf새 만들 수있는이 후 resolv.conf와를vim 또는 당신의 선택의 편집기와 구글의 네임 서버 또는 당신이 선호하는 다른 네임 서버를 추가합니다. 저장하면 완료됩니다.

무언가를 깨뜨리는 것을 두려워하는 경우 ls -la /etc/resolv.conf이전 을 수행하여 기존 심볼릭 링크를 기록 할 수 있습니다unlinking .

도움이 되길 바랍니다.


@Downvoter, 의견을 조심하십시오. 내 답변이 정말 나쁜 조언이라면 삭제 해 드리겠습니다. 내가 뭘 잘못하고 있는지 알려주세요. 감사합니다
nikhil
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.