English

resolvectl — systemd DNS 상태 확인

Linux / 네트워크 및 방화벽 / resolvectl.html

네트워크 및 방화벽원문등록 2026-10-18T22:00:00+09:00

💬 "resolvectl 명령어"

resolvectl는 systemd DNS 상태 확인 systemd-resolved의 DNS 설정과 캐시를 확인·관리합니다. /etc/resolv.conf 대신 씁니다.

인터페이스별 DNS 서버·검색 도메인을 확인합니다. DNS 캐시 조회 및 플러시가 가능합니다.

  • 개념: 인터페이스별 DNS 서버·검색 도메인을 확인합니다.
  • 주요 기능: DNS 캐시 조회 및 플러시가 가능합니다.
  • 장점: DNSSEC 검증 상태를 확인합니다.
  • 활용: DNS-over-TLS 설정을 관리합니다.

설치 및 다운로드

resolvectl는 패키지 매니저 또는 공식 스크립트로 설치합니다.

환경명령
systemd 내장 (235+)resolvectl status
구버전 (235 미만)systemd-resolve 이름 사용
활성화sudo systemctl enable --now systemd-resolved
확인resolvectl --version

설치 확인은 resolvectl --version으로 합니다.

자주 쓰는 옵션

옵션설명
resolvectl status현재 DNS 설정 전체를 조회합니다
resolvectl query <domain>특정 도메인 DNS를 조회합니다
resolvectl flush-cachesDNS 캐시를 비웁니다
resolvectl statisticsDNS 쿼리 통계를 확인합니다
resolvectl revert <iface>인터페이스 DNS 설정을 초기화합니다

필수 명령어 조합 3가지

  • resolvectl status — 어떤 DNS 서버를 쓰는지 확인
  • resolvectl query example.com — DNS 해석 경로 추적
  • resolvectl flush-caches — 캐시 문제 해결

💬 "실제 서버에서 resolvectl를 사용하는 예시를 보여줘"

실제 운영 중인 서버에서 자주 만나는 상황을 순서대로 정리했습니다.

1단계 · 설치 확인

systemd-resolved 활성 상태를 확인합니다.

resolvectl --version && systemctl status systemd-resolved

2단계 · DNS 설정 확인

현재 DNS 서버를 확인합니다.

resolvectl status

3단계 · 해석 테스트

특정 도메인 해석을 확인합니다.

resolvectl query example.com

실제 실행 화면

resolvectl status로 현재 DNS 설정을 확인한 결과입니다.

resolvectl 명령어 실행 결과

실제 운영 중인 서버

실무에서는 이렇게 씁니다

1. DNS 경로 추적

상황 — 특정 도메인만 해석이 안 될 때 원인을 찾습니다.

resolvectl query example.com

결과 — 어떤 DNS 서버가 응답했는지, 어느 링크의 설정이 개입했는지가 표시됩니다.

포인트 — /etc/resolv.conf만 봐서는 알 수 없는 정보입니다.

2. 캐시 플러시

상황 — DNS가 간헐적으로 풀리지 않을 때 캐시를 비웁니다.

resolvectl flush-caches && resolvectl query example.com

결과 — 캐시가 비워지고 재해석이 시도됩니다.

포인트 — 운영 시간대에는 트래픽 급증을 주의합니다.

실제 실행 화면

resolvectl query와 statistics로 해석·통계를 확인한 결과입니다.

resolvectl 명령어 실행 결과 2

실제 운영 중인 서버

주의할 점

  • systemd-resolved가 비활성화되어 있으면 resolvectl이 작동하지 않습니다.
  • 구버전(235 미만)에서는 명령어 이름이 systemd-resolve입니다.
  • flush-caches는 모든 클라이언트의 DNS 캐시를 무효화합니다. 운영 시간대에 주의합니다.