17장. DNS 서버 순서 구성
대부분의 애플리케이션은 glibc
라이브러리의 getaddrinfo()
함수를 사용하여 DNS의 이름을 확인합니다. 기본적으로 glibc
는 모든 DNS 요청을 /etc/resolv.conf
파일에 지정된 첫 번째 DNS 서버로 보냅니다. 이 서버가 응답하지 않으면 {ProductShortName}은 이 파일의 다른 모든 이름 서버를 시도합니다. NetworkManager를 사용하면 /etc/resolv.conf
의 DNS 서버 순서에 영향을 줄 수 있습니다.
17.1. NetworkManager가 /etc/resolv.conf의 DNS 서버를 주문하는 방법
NetworkManager는 다음 규칙에 따라 /etc/resolv.conf
파일의 DNS 서버를 주문합니다.
- 하나의 연결 프로필만 존재하는 경우 NetworkManager는 해당 연결에 지정된 IPv4 및 IPv6 DNS 서버의 순서를 사용합니다.
여러 연결 프로필이 활성화되면 NetworkManager는 DNS 우선 순위 값을 기반으로 DNS 서버를 주문합니다. DNS 우선순위를 설정하면 NetworkManager의 동작은
dns
매개변수에 설정된 값에 따라 달라집니다./etc/NetworkManager/NetworkManager.conf
파일의[main]
섹션에서 이 매개변수를 설정할 수 있습니다.DNS=default
또는dns
매개변수가 설정되지 않은 경우:NetworkManager는 각 연결에서
ipv4.dns-priority
및ipv6.dns-priority
매개변수를 기반으로 다양한 연결에서 DNS 서버를 정렬합니다.값을 설정하지 않거나
ipv4.dns-priority
및ipv6.dns-priority
를0
으로 설정하면 NetworkManager는 글로벌 기본값을 사용합니다.DNS=dnsmasq
또는dns=systemd-resolved
:이러한 설정 중 하나를 사용하는 경우 NetworkManager는
dnsmasq
의127.0.0.1
또는127.0.0.53
을/etc/resolv.conf
파일의nameserver
항목으로 설정합니다.dnsmasq
및systemd-resolved
서비스는 모두 NetworkManager 연결에 지정된 DNS 서버로 검색 도메인 집합에 대한 쿼리를 전달하며 기본 경로를 사용한 연결로 쿼리를 다른 도메인에 전달합니다. 여러 연결에 동일한 검색 도메인 집합이 있는 경우dnsmasq
및systemd-resolved
forward queries for this domain to the DNS server set in the connection with the lowest priority value.
NetworkManager는 연결에 다음 기본값을 사용합니다.
-
VPN 연결의 경우
50
-
100
다른 연결
글로벌 기본값 및 연결별 ipv4.dns-priority
및 ipv6.dns-priority
매개변수를 -2147483647
과 2147483647
사이의 값으로 설정할 수 있습니다.
- 더 낮은 값은 우선순위가 높습니다.
- 음수 값은 값이 더 큰 다른 구성을 제외하는 특수 효과가 있습니다. 예를 들어 음수 우선 순위 값을 사용한 연결이 하나 이상 있는 경우 NetworkManager는 우선 순위가 가장 낮은 연결 프로필에 지정된 DNS 서버만 사용합니다.
여러 연결에 동일한 DNS 우선 순위가 있는 경우 NetworkManager는 다음 순서로 DNS에 우선 순위를 지정합니다.
- VPN 연결
- 활성 기본 경로와 연결됩니다. 활성 기본 경로는 가장 낮은 메트릭이 있는 기본 경로입니다.