새로운 Kubuntu 19.10 랩톱에서 사용자 정의 DNS 서버를 구성하려면 다음을 추가하는 것만으로는 충분하지 않습니다 /etc/systemd/resolved.conf
:
DNS=77.88.8.7 77.88.8.3 #Yandex의 DNS, Google 이미지에도 음란물 콘텐츠 없음
나는 또한 심볼릭 링크를 변경해야했다/etc/resolv.conf
$ ls -l /etc/resolv.conf
lrwxrwxrwx 1 root root 37 oct 26 01:48 /etc/resolv.conf -> /run/systemd/resolve/stub-resolv.conf
$ sudo ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.conf
/run/systemd/resolve/stub-resolv.conf
ISP 지정 DNS만 있고 사용자 지정 DNS는 /run/systemd/resolve/resolv.conf
.
볼 때:
man systemd-resolved.service
권장 파일은 이라고 하는데 /run/systemd/resolve/stub-resolv.conf
차이점을 모르겠습니다(예:이해하기 쉽고 간단함설명은 허용되는 답변이어야 합니다.) 그렇다면 다른 파일 대신 해당 파일을 사용하여 전역적으로 구성된 DNS를 사용하도록 시스템을 어떻게 설정합니까?
노트: WiFi 연결 수가 많은 노트북에서는 방금 설명한 내용을 달성하는 방법을 설명하는 많은 웹사이트에서 제안한 것처럼 연결당 DNS를 구성하는 것이 불가능합니다.
궁금하신 분들을 위한 추가 정보:
/run/systemd/resolve/$ diff stub-resolv.conf resolv.conf
3,8c3,4
< # This is a dynamic resolv.conf file for connecting local clients to the
< # internal DNS stub resolver of systemd-resolved. This file lists all
< # configured search domains.
< #
< # Run "resolvectl status" to see details about the uplink DNS servers
< # currently in use.
---
> # This is a dynamic resolv.conf file for connecting local clients directly to
> # all known uplink DNS servers. This file lists all configured search domains.
17,18c13,17
< nameserver 127.0.0.53
< options edns0
---
> nameserver 77.88.8.7
> nameserver 77.88.8.3
> nameserver 200.49.130.40
> # Too many DNS servers configured, the following entries may be ignored.
> nameserver 200.42.4.207
답변1
resolv.conf
재정의를 사용하면 stub-resolv.conf
DNS 응답 캐싱, 인터페이스별 DNS 구성, DNSSec 시행 등과 같이 systemd가 확인하는 많은 구성을 우회합니다.
설명하다:
를 사용하면 stub-resolv.conf
애플리케이션은 주소 127.0.0.53에서 systemd가 제공하는 DNS 스텁 확인자에게 DNS 요청을 보냅니다. 스텁 확인자는 DNS 요청을 에 구성된 업스트림 DNS 확인자로 프록시하여 systemd-resolved
해당 요청 및 응답에 캐싱과 같은 원하는 논리를 적용합니다.
를 사용하면 resolv.conf
애플리케이션은 에 구성된 "실제"(업스트림이라고도 함) DNS 확인자에 직접 DNS 요청을 보냅니다 systemd-resolved
. 이 경우 DNS 확인자 자체가 아닌 systemd-resolved
"관리자" 역할만 수행합니다 .resolv.conf