시스템 확인으로 로컬 DNS 서버를 사용하지 않는 이유는 무엇입니까? 19.172.in-addr.arpa

로컬 BIND9 서버를 사용하여 일부 로컬 DNS 레코드를 호스팅하고 있습니다. 로컬 도메인 이름을 찾으려고 할 때 로컬 BIND9 서버를 사용하도록 명시 적으로 파고하지 않으면 찾을 수 없습니다.

user@heimdal:~$ dig +short heimdal.lan.se
user@heimdal:~$ dig +short @192.168.1.7 heimdal.lan.se
192.168.1.2

우분투 17.04 및 systemd-resolved가 사용됩니다. 이것은 내 / etc / resolved의 내용입니다.

# 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
# 127.0.0.53 is the systemd-resolved stub resolver.
# run "systemd-resolve --status" to see details about the actual nameservers.

nameserver 127.0.0.53

그리고 systemd-resolve –status의 출력

Global
         DNS Servers: 192.168.1.7
                      192.168.1.1
          DNSSEC NTA: 10.in-addr.arpa
                      16.172.in-addr.arpa
                      168.192.in-addr.arpa
                      17.172.in-addr.arpa
                      18.172.in-addr.arpa
                      19.172.in-addr.arpa
                      20.172.in-addr.arpa
                      21.172.in-addr.arpa
                      22.172.in-addr.arpa
                      23.172.in-addr.arpa
                      24.172.in-addr.arpa
                      25.172.in-addr.arpa
                      26.172.in-addr.arpa
                      27.172.in-addr.arpa
                      28.172.in-addr.arpa
                      29.172.in-addr.arpa
                      30.172.in-addr.arpa
                      31.172.in-addr.arpa
                      corp
                      d.f.ip6.arpa
                      home
                      internal
                      intranet
                      lan
                      local
                      private
                      test

DNS 서버 섹션은 기본 DNS 서버 (내 로컬 BIND9 인스턴스)로 192.168.1.7을 올바르게 구성한 것으로 보입니다. 왜 사용되지 않는지 이해할 수 없습니다 …?



답변

따라서 유선 eth0 인터페이스를 관리하도록 변경하면이 문제가 해결되었습니다.

/etc/NetworkManager/NetworkManager.conf에서 ifupdown을 managed = true로 변경

[ifupdown]
managed=true

그런 다음 NetworkManager를 다시 시작하십시오.

sudo systemctl restart NetworkManager

이 후에는 완벽하게 작동합니다 ..

이것은 100 %가 아닙니다. 나는 또한 이러한 변경 사항을 적용하여 리졸버를 시도하고 죽였습니다.

sudo service resolvconf disable-updates
sudo update-rc.d resolvconf disable
sudo service resolvconf stop

주제에 관한이 블로그 게시물 덕분에
https://ohthehugemanatee.org/blog/2018/01/25/my-war-on-systemd-resolved/

이것이 효과가 있기를기도합시다.이 전체 체계적인 해결 사업은 너무 추악합니다.


답변

내 생각 엔 귀하의 systemd-resolved서비스가 올바르게 구성되었지만 요청을 볼 수는 없습니다. .local도메인이됩니다 mDNS를 실행중인 시스템에서 특별하게 처리 . avahi-daemonmDNS / DNS-SD 서비스 (Apple 제품에서 “Bonjour”라고도 함)를 제공하는 이름은 이름 확인 중에 DNS보다 우선하도록 구성 할 수 있습니다. 우분투가 이것을하는 것처럼 보입니다.

선택할 수있는 몇 가지 옵션이 있습니다.

  1. .local도메인 이름 을 다른 것으로 바꾸십시오 ( .internal또는 .lan). DNS 서버에서 몇 가지 사항 만 변경하면되고 Avahi와 가장 잘 작동하기 때문에 실제로 가장 쉬운 방법 일 수 있습니다. 이 방법을 권장합니다.

  2. /etc/nsswitch.confdns항목을 항목 앞에 두어 파일변경하십시오mdns .

  3. .local편집 /etc/avahi/avahi-daemon.conf및 변경 (또는 추가) domain-name=.something( [server]섹션에 있음) 하여 mDNS 도메인을 다른 도메인으로 변경 하도록 Avahi의 구성 을 변경하십시오 . mDNS를 사용하는 모든 컴퓨터에서이 작업을 수행해야 여전히 함께 작동합니다.


답변

이것은 의견으로 더 좋지만 평판이 충분하지 않은 것 같습니다 ….

Civing의 자체 답변은 내가 원하는 것의 선을 따라 가장 많았습니다.

또한 dns=none[main]섹션에 추가 해야 /etc/NetworkManager/NetworkManager.conf했으므로 다음과 같습니다.

[main]
plugins=ifupdown,keyfile
dns=none

방금 14.04에서 xubuntu 18.04로 업데이트했으며 그보다 오래된 LAN이 있으며 몇 년 동안 많은 조정이 이루어졌습니다. 그래서 나는 DNS가 내가 원하는 일을하기를 원합니다 (예, 저는 제 2 판부터 시작하여 몇 년 동안 많은 크리켓 리 우즈의 책을 구입했습니다).

따로, 나는 이전에 내가보고자하는 DNS 확인 정보를 파일에 추가했었다 /etc/resolvconf/resolv.conf.d/head.

간단히 말해서, 루트로 /etc/resolv.conf가 작동하면 :

cat /etc/resolv.conf >> /etc/resolvconf/resolv.conf.d/head

그러나 이제는 /etc/resolv.conf를 직접 편집하면 그대로 유지됩니다. systemd / resolvconf를 사용하는 LAN 방문자는 SOOL입니다. 존재하지 않습니다.

독서가 man 8 resolvconf도움이되었습니다. 많이. 나는 않았다 하지 ifup을 프로그램을 찾을 수있는 물건을 착용하는 지침을 따르십시오. 대부분 GUI에 전체 상부 구조가 있기 때문에 업그레이드 중에 수행 된 모든 작업에 의해 이미 무시되고있었습니다. 더 큰 문제인 것 같습니다 (WTF, Ubuntu?).

그래서 이것은 어리석은 일이며, 네트워크 제어판 GUI에 입력 한 (오래 전에) 새로 업그레이드 된 시스템이 준수하지 않는 문제가 여전히 있습니다. 물어봐


답변

나를 위해 최근에 설치된 18.04를 실행하면서 @Civing이 인용 한 첫 번째 변경 사항을 작성했습니다.

[ifupdown]
managed=true

그런 다음 /etc/resolv.conf가 항상 stub-resolv.conf를 가리키고 있고 적절한 LAN DNS 서버와의 합리적인 resolv.conf가 생성되고 있음을 알면서 symlink를 변경했습니다.

/etc/resolv.conf -> /run/systemd/resolve/resolv.conf

그런 다음 ping을 통해 로컬 호스트 이름을 모두 확인합니다.

이것이 얼마나 오래 작동하는지 지켜봐야합니다.

처음 설치했을 때 무선 네트워크 설정이 실패했으며 설치가이 초기 상태로 /etc/resolv.conf를 남겼는지 궁금 할 수 없습니다.

따라서 해결 된 것이 무엇을 생성하는지 살펴 보는 것이 좋습니다. 당신은 이미 작업 기초가있을 수 있습니다.