DNS 서버를 설정하는 방법 (예 : opennic)


2

Opennic을 사용하기 위해 구성에 DNS 서버를 추가하고 싶습니다. 꽤 많이 검색했지만 만족스러운 솔루션을 찾을 수 없으며 우분투 솔루션과 관련하여 길을 잃었습니다.

  1. 멋진 튜토리얼을 찾았습니다. 그래픽 부분은 저에게 효과적이지만 첫 번째 부분은 작동하지 않습니다 (물론 스크립트를 작성하고 싶습니다). http://www.ubuntututorials.com/set-dns-server-ubuntu-12-04/ "prepend…"행을 추가하고로 DNS 주소를 확인할 nm-tool때 변경되지 않았습니다. 서비스 또는 무언가를 다시 시작하려면 명령이 필요합니까? 그들은 그렇게 말하지 않습니다. (실행 service networking restart해도 도움이되지 않습니다).

  2. Arch wiki ( https://wiki.archlinux.org/index.php/Resolv.conf#Use_resolv.conf.head )에 설명 된대로 /etc/resolv.conf.head 파일을 사용할 수 있지만 다음을 수행해야합니다. openresolv실행 하려면 패키지를 설치하십시오 resolvconf -u. 그러나 외부 스크립트가 없어도 향후 스크립트를 실행하고 싶습니다.

따라서 누군가 편집 할 파일과 conf를 업데이트하기 위해 실행할 명령을 알려줄 수 있습니까?

Debian (Mint Debian)을 사용하고 있지만 Ubuntu에서 동일한 지 알고 싶습니다. 우분투 12.04 이후 변경된 사항을 읽었으므로 인터넷의 많은 자습서가 오래되었습니다 (특히 글을 쓰는 /etc/dhcp3/dhclient.conf것은 더 이상 사용되지 않습니다).

감사 !


실제로 나는 이미 (가장 가까운 opennic dns 서버를 사용하여) 그렇게 한 파이썬 스크립트를 작성했지만 오래된 자습서에 대해 ^
Ehvince

dhcpd (dhcp 서버)를 실행중인 경우 dhcpd.conf에 domain-name-servers 8.8.8.8 옵션을 추가 하면됩니다. dns 서버 바인드 가 필요한 경우 표준 바인드 입니다. 이 중 하나를 찾고 있습니까?
cybernard 2013 년

고마워, 나는 dhcpd 또는 bind를 실행하지 않는다. 그래도 궁금합니다.
Ehvince

답변:


4

여러 가지 방법이 있으며 정확하게 달성하고자하는 것에 약간 의존합니다.

일반적으로 / etc / network / interfaces 파일 내에서 DNS를 올바르게 구성 할 수있는 resolvconf 패키지 (도트 부족, pls 부족)를 사용합니다. 정적 구성에 최적입니다. 그냥 라인을 추가하십시오

dns-nameservers 8.8.8.8 8.8.4.4

적절한 스탠자 (= 주어진 인터페이스의 속성을 지정하는 여러 줄). dns-nameservers 끝에 "s"(실수 아님)와 동일한 회선에 두 개의 IP 주소가 있는지 확인하십시오.

그러나 resolvconf를 사용하여 실행시 DNS를 변경할 수도 있습니다.

echo "dns-nameservers 8.8.8.8"| resolvconf -my_DNS

8.8.8.8을 DNS로 추가합니다 (업데이트 스크립트를 즉시 실행 함).

resolvconf -d my_DNS

업데이트 스크립트가 즉시 실행됩니다.

두껍고 얇은 것을 통해 선호하는 DNS를 고수하려는 경우 가장 간단한 방법은 /etc/resolv.conf 파일에 /do/resolv.conf 파일에 자신의 줄을 추가하는 것입니다.

nameserver 8.8.4.4
nameserver 8.8.8.8

그런 다음 아무도 덮어 쓸 수 없도록 파일을 변경하십시오.

sudo chattr +i /etc/resolv.conf

이 시점에서 변경 불가능한 DNS 세트가 있습니다.

resolvconf 패키지는 일반 파일 /etc/resolv.conf를 /run/resolvconf/resolv.conf의 심볼릭 링크로 변환하기 때문에이 두 가지 솔루션이 충돌합니다. , chattr을 적용 할 수 없습니다.

마지막으로 여기 에서 와 같이 몇 가지 주제로 여러 번 논의 된 다른 임시 솔루션이 있습니다 . 이 페이지에서 현재 우분투 (및 데비안) 배포판이 /etc/dhcp3/dhclient.conf를 /etc/dhcp/dhclient.conf로 옮겼다는 사실을 언급합니다. 선택권.


고마워요, 이것은 매우 분명합니다 :) / etc / network / interfaces를 편집하면 실행해야 resolvconf -u합니까? 시도하고 nm-tool로 확인했지만 새 DNS를 볼 수 없습니다. (btw 나는 나머지를 시도하기 위해 집에 기다릴 것이다)
Ehvince

아니요, 그러나 네트워킹을 다시 시작해야합니다. resolvconf가이를 처리합니다. 정말로 조심하고 싶다면 PC를 껐다가 다시 켜야합니다.
MariusMatutiae

또한 인터페이스가 / etc / network / interfaces에 고정 IP를 갖도록 설정하면 네트워크 관리자의 제어에서 제거됩니다. 따라서 nm-tool을 사용하여 DNS를 확인하는 데 아무런 문제가 없습니다. 해당 인터페이스에는 적용되지 않기 때문입니다.
MariusMatutiae

아 따라서 이해하면 네트워크 관리자의 아이콘에 수정 사항 resolvconf이 반영 nm-tool되거나 올바른 클릭이 반영되지 않습니다 . 그것은 나를 많이 혼동했다! 네트워크 관리자와 동기화 할 편집 할 파일이 있습니까?
Ehvince

미안, 무슨 뜻인지 모르겠어 nm-tool의 출력은 nm가 구성된 방식을 정확하게 보여줍니다. nm가 원하는 방식으로 구성되도록하는 것을 원하십니까? 그렇다면 내가 게시 한 링크에 표시된 많은 도구가 작동합니다.
MariusMatutiae 15:43에

0

그래서 이해하려고 노력했으며 이것이 스크립트를 작성하려는 의도입니다 : https://github.com/vindarel/open-nic

사용자는 python opennic-set.py (종속성 : apt-get install resolvconfpip install BeautifulSoup4(기본적으로 우분투에서 가능할 수 있음)) 실행해야하며 스크립트는 다음을 수행합니다.

  • 가장 가까운 openNic DNS 서버를 가져옵니다.
  • 이름 서버를 /etc/resolvconf/resolv.conf.d/tail에 추가합니다.
  • resolvconf -u업데이트하기 위해 실행 됩니다.
  • Opennic의 예약 된 TLD에 액세스 할 수 있는지 테스트합니다.

바로 시도 명령 : wget https://raw.github.com/vindarel/open-nic/master/opennic-set.py && python opennic-set.py

모든 의견을 환영합니다!

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.