Linux를 사용하다 보면 웹사이트 접속, 패키지 업데이트, 인터넷 연결이 필요한 작업을 실행할 때 "이름 확인에 일시적 오류가 발생했습니다(temporary failure in name resolution)" 오류가 나타날 수 있습니다. 이 오류는 시스템이 도메인 이름을 IP 주소로 변환하지 못해 네트워크 작업을 완료할 수 없다는 의미입니다.
이 문제는 대부분 인터넷 연결 문제나 DNS 설정 오류에서 비롯됩니다. 원인을 찾아 해결하는 방법은 간단합니다. 이 가이드에서는 다양한 Linux 배포판에서 이 오류를 해결하는 방법을 설명합니다. Ubuntu 22.04와 24.04에 대한 구체적인 해결 방법도 다룹니다.
이름 확인 일시적 오류란 무엇인가요?
이름 확인 일시적 오류가 발생하면 Linux 시스템이 인터넷에 정상적으로 연결되지 않습니다. 이 경우 웹사이트에 접근하거나 인터넷 연결이 필요한 애플리케이션을 사용할 수 없습니다.
DNS에서 발생하는 일반적인 "재시도" 오류입니다. 로컬 오작동, 업스트림 타임아웃, 유효성 검사 실패 등 조회 과정 어딘가에서 실패가 발생한 것입니다.
이 오류는 보통 웹사이트에 ping을 시도할 때 나타납니다:

ping google.com
ping: google.com: Temporary failure in name resolution
이름 확인 일시적 오류 해결 방법
이 오류는 원인에 따라 해결 방법이 다릅니다. 주요 해결 방법을 살펴보겠습니다.
해결 방법 1: 인터넷 연결 확인
라우터와 네트워크 장비를 점검하여 모든 설정이 올바른지 확인하세요. 다른 애플리케이션을 열어 인터넷 연결이 되는지 확인해 보세요.
IP 주소에 직접 ping을 보내 기본 연결 상태를 확인할 수 있습니다:
ping -c 4 8.8.8.8
이 명령은 Google의 공개 DNS 서버로 패킷 4개를 전송합니다. 응답을 받으면 인터넷 연결이 정상적으로 작동하는 것입니다.
"Request timed out" 또는 "Network unreachable" 메시지가 나타나면 DNS와 무관한 일반적인 연결 문제입니다.

애플리케이션이 인터넷에 정상적으로 연결된다면 다음 해결 방법으로 넘어가세요.
해결 방법 2: resolv.conf 파일 설정 오류
더 /etc/resolv.conf 이 파일에는 시스템이 사용하는 DNS 서버 목록이 있습니다. 잘못된 IP 주소가 입력되어 있으면 웹사이트에 연결할 수 없습니다.
많은 Ubuntu 시스템에서 이 파일은 systemd-resolved가 관리하는 동적 파일의 심볼릭 링크입니다. 파일 상단에 "직접 편집하지 마시오"라는 경고 문구가 있는 경우가 많습니다. 파일을 직접 수정해도 변경 사항은 몇 분 후 사라집니다. 네트워크 설정이 업데이트되거나 시스템이 재시작되면 원래 내용으로 덮어써집니다.
DNS 설정을 변경하기 전에, 현재 사용자에게 관리자 권한이 있는지 확인하세요. 방법은 다음을 참고하세요: sudoers에 사용자 추가하기 필요한 경우.
현재 DNS 설정 확인
먼저 DNS 설정을 변경하지 않고 현재 상태를 확인합니다:
cat /etc/resolv.conf
유효한 네임서버가 보이지 않으면 문제를 찾은 것입니다.
임시 테스트
빠른 테스트를 위해 Google의 DNS 서버를 추가할 수 있습니다.
nameserver 8.8.8.8
nameserver 8.8.4.4
또는 Cloudflare의 DNS 서버를 사용할 수도 있습니다:
nameserver 1.1.1.1
nameserver 1.0.0.1
자주 쓰이는 공개 DNS 서버를 비교하면 다음과 같습니다:

| DNS 공급자 | 기본 DNS | 보조 DNS | 주요 기능 |
| Google DNS | 8.8.8.8 | 8.8.4.4 | 고가용성, 전 세계 커버리지 |
| Cloudflare | 1.1.1.1 | 1.0.0.1 | 개인정보 보호 중심, IP 로그 미수집 |
| Quad9 | 9.9.9.9 | 149.112.112.112 | 알려진 악성 도메인 차단 |
| OpenDNS | 208.67.222.222 | 208.67.220.220 | 피싱 방지 및 콘텐츠 필터링 |
단, 이 변경은 영구적이지 않습니다. 시스템이 재시작되면 설정이 초기화됩니다. Ubuntu에서 영구적으로 적용하려면 systemd-resolved 또는 Netplan을 설정해야 합니다. 각 방법은 아래 해당 섹션에서 자세히 설명합니다.
systemd-resolved 서비스 상태 확인
네임서버 설정이 올바른데도 DNS 조회가 계속 실패한다면 systemd-resolved 서비스를 확인하세요. 이 서비스는 대부분의 최신 Linux 시스템에서 로컬 DNS 조회를 담당합니다. 실행 중인지 확인하려면 다음 명령어를 사용하세요: sudo systemctl status systemd-resolved
출력 결과에 서비스가 비활성 상태로 표시되면 바로 시작할 수 있습니다.
sudo systemctl start systemd-resolved
이 단계는 Ubuntu 사용자라면 반드시 알아야 합니다. 서비스 중단이 발생하면 이름 확인 오류로 이어지는 경우가 많기 때문입니다.
해결 방법 3: 방화벽 제한
방화벽은 Linux 시스템을 악성 코드와 보안 위협으로부터 보호합니다. 그러나 방화벽 설정이 잘못되면 DNS 요청이 차단되어 이름 확인 오류가 발생할 수 있습니다.
방화벽과 보안 소프트웨어를 일시적으로 비활성화하면 문제의 원인인지 확인할 수 있습니다. 비활성화 후 문제가 해결된다면 방화벽 설정을 다시 구성해야 합니다.
UFW 방화벽 구성
대부분의 Debian 및 Ubuntu 배포판은 UFW 방화벽을(를) 사용합니다. 포트 53에서 DNS 트래픽을 허용해야 합니다(UDP 및 TCP 모두).
sudo ufw allow 53/udp
sudo ufw allow 53/tcp
DNS는 일반 쿼리에 UDP를, 대용량 전송에 TCP를 사용합니다.
포트를 열었다면 UFW를 다시 로드하여 변경 사항을 적용합니다.

sudo ufw reload
Firewalld 구성
firewalld를 사용하는 CentOS 및 Red Hat 기반 시스템에서는 필요한 포트를 다음과 같이 엽니다.
sudo firewall-cmd --add-port=53/udp --permanent
sudo firewall-cmd --add-port=53/tcp --permanent
방화벽을 다시 로드하여 변경 사항을 적용합니다.
sudo firewall-cmd --reload
해결 방법 4: DNS 캐시 초기화
DNS 캐시는 IP 주소를 로컬에 저장하여 이후 조회 속도를 높입니다. 그러나 캐시 데이터가 오래되었거나 손상된 경우, 도메인 이름이나 호스팅 제공업체를 변경한 웹사이트에 접근하지 못할 수 있으며 이름 확인 일시 오류가 발생합니다.
오직 당신만 DNS 캐시 초기화 시스템이 최신 데이터를 직접 요청하도록 강제하려면 이 단계를 사용하세요. 이름 확인 오류가 발생할 때 적용합니다.

DNS 서비스 확인
설치 환경에 따라 서비스가 다를 수 있습니다. "unit not found" 오류를 방지하려면 실행 중인 서비스를 먼저 확인하세요.
sudo systemctl is-active nscd
sudo systemctl is-active dnsmasq
nscd 플러시
If nscd 활성 상태이면 다시 시작하세요:
sudo systemctl restart nscd.service
dnsmasq 플러시
If dnsmasq 활성 상태이면 다시 시작하세요:
sudo systemctl restart dnsmasq.service
Ubuntu에서 캐시 초기화 (systemd-resolved)
systemd-resolved를 사용하는 시스템의 경우:
sudo systemctl restart systemd-resolved.service
또는 resolvectl 명령을 사용하세요.
sudo resolvectl flush-caches
이름 확인 이해하기
cloudzy.com과 같은 웹사이트 주소를 입력하면, 컴퓨터는 사람이 읽을 수 있는 도메인 이름을 IP 주소(예: 172.66.40.212)로 변환해 인터넷에서 해당 사이트를 찾습니다. 이 변환 과정을 이름 확인(name resolution)이라고 하며, DNS 서버가 이를 처리합니다.
Linux 시스템이 DNS 서버에 접속해 웹사이트의 IP 주소를 가져오지 못할 때 'temporary failure in name resolution' 오류가 발생합니다. '일시적(temporary)'이라는 표현은 이 오류가 반드시 영구적인 장애가 아님을 의미합니다. 대부분의 경우, 설정 문제나 네트워크 연결 문제가 원인이며 해결이 가능합니다.
DNS 서버는 도메인 이름을 컴퓨터가 통신에 사용하는 IP 주소로 변환합니다. Google Public DNS는 매일 1조 이상 건의 쿼리를 처리하며, 이 핵심 인터넷 서비스의 규모를 잘 보여줍니다.
마찬가지로 Cloudflare의 1.1.1.1 리졸버도 매일 약 2조 건의 쿼리를 처리합니다. 이 수치는 DNS가 인터넷의 핵심 인프라임을 증명합니다.
Temporary Failure in Name Resolution의 원인은 무엇인가요?
Ubuntu에서 발생하는 temporary failure in name resolution 오류를 해결하려면 먼저 근본 원인을 파악해야 합니다. 이 오류를 유발하는 요인은 여러 가지가 있습니다.

인터넷 연결 문제
느리거나 끊긴 인터넷 연결이 가장 흔한 원인입니다. 복잡한 문제 해결 과정에 들어가기 전에, 먼저 인터넷 연결이 정상적으로 작동하는지 확인하세요.
DNS 설정 문제
DNS 설정 오류는 이 오류의 가장 흔한 원인 중 하나입니다.
- 응답하지 않는 DNS 서버: 시스템이 접속을 시도하는 DNS 서버가 응답하지 않을 수 있습니다.
- 잘못된 DNS 설정: DNS 확인 메커니즘이 올바르게 구성되지 않았을 수 있습니다.
- 오래된 DNS 캐시: 오래되거나 손상된 DNS 캐시 항목이 정상적인 이름 확인을 방해할 수 있습니다.
방화벽 제한
방화벽이 올바르게 설정되어 있어도 DNS 요청을 차단할 수 있습니다. DNS 쿼리는 포트 53를 사용하는데, 방화벽이 이 포트를 차단하면 이름 확인이 실패합니다.
포트 53은 UDP와 TCP 프로토콜을 모두 처리합니다. DNS는 일반적으로 속도가 빠른 UDP 포트 53을 표준 쿼리에 사용합니다. TCP 포트 53은 영역 전송(zone transfer)과 UDP의 크기 제한을 초과하는 대용량 쿼리에 사용됩니다.
서비스 설정 문제
최신 Linux 배포판에서 DNS 확인을 관리하는 systemd-resolved 서비스가 중지되거나, 비활성화되거나, 잘못 설정되어 있을 수 있습니다. 이 서비스는 시스템의 모든 애플리케이션에 DNS 확인 기능을 제공합니다.
이름 확인 일시적 오류 Ubuntu 22.04
Ubuntu 22.04 LTS는 네트워크 관리 방식에 변경이 생겨 특히 시스템 업그레이드 후 DNS 해석 문제가 발생할 수 있습니다. 이 버전에서는 호스트를 찾을 수 없거나 이름 해석에 일시적으로 실패했다는 오류가 더 자주 나타날 수 있습니다.
Ubuntu 22.04 자주 발생하는 문제
Ubuntu 20.04에서 22.04로 업그레이드한 사용자들 사이에서 DNS 해석 실패가 자주 보고됩니다. Ubuntu 22.04의 이름 해석 일시적 실패 문제는 대부분 업그레이드 과정에서 발생하는 systemd-resolved 서비스 설정 오류에서 비롯됩니다.
Ubuntu 22.04 특정 수정 사항
DNS 문제가 Ubuntu 22.04에서 계속 발생한다면 다음 단계를 따르세요:
먼저 systemd 네트워킹 서비스가 올바르게 활성화되어 있는지 확인합니다:
sudo systemctl unmask systemd-networkd.service
sudo systemctl unmask systemd-resolved.service
systemd-resolved 상태 확인:

sudo systemctl status systemd-resolved.service
서비스가 실행 중이 아니라면 시작하세요:
sudo systemctl start systemd-resolved.service
sudo systemctl enable systemd-resolved.service
<code>/etc/resolv.conf</code> 심볼릭 링크가 올바른 위치를 가리키는지 확인하세요:
ls -l /etc/resolv.conf
권장 설정은 스텁 리졸버와 연결됩니다:
sudo ln -sf /run/systemd/resolve/stub-resolv.conf /etc/resolv.conf
수정 사항 테스트
이 변경 사항을 적용한 후 DNS 해결 여부를 테스트하세요:
resolvectl status
이 명령어는 현재 DNS 설정을 표시하며, systemd-resolved가 DNS를 올바르게 관리하고 있는지도 확인합니다.
Ubuntu 24.04 이름 확인 일시적 실패
Ubuntu 24.04 LTS는 최신 장기 지원 릴리스로, systemd 255를 사용하며 업데이트된 네트워크 관리 구성 요소를 포함합니다. 이전 버전보다 안정적이지만, 특정 DNS 문제가 발생할 수 있습니다.
원격 관리자들은 종종 "SSH could not resolve hostname" 오류에 직면합니다. 이 오류는 시스템 스텁 리졸버가 127.0.0.53 실패합니다. SSH는 이름 변환을 위해 이 로컬 서비스에 의존하기 때문에, 서비스가 중지되면 systemd-resolved 이 프로세스는 도메인 기반 연결 시도를 즉시 모두 차단합니다.
Ubuntu 24.04 DNS 구성
Ubuntu 24.04는 DNS 관리를 위해 systemd-resolved에 크게 의존합니다. 127.0.0.53의 스텁 리스너가 시스템의 DNS 쿼리를 처리합니다.
DNS 오류를 Ubuntu 24.04에서 해결하는 방법
Ubuntu 24.04에서 이름 확인 오류가 발생하면 systemd-resolved가 실행 중인지 확인하세요:
sudo systemctl status systemd-resolved
resolvectl로 DNS 설정을 확인하세요:
resolvectl status
이 명령은 각 네트워크 인터페이스의 네임서버 정보와 DNS 설정을 표시합니다.
Ubuntu 24.04 Netplan 설정
Ubuntu 24.04는 네트워크 설정에 Netplan을 사용합니다. 파일 이름과 renderer 설정은 Server 버전과 Desktop 버전에 따라 다릅니다.
먼저 설정 파일을 확인하세요:
ls /etc/netplan/
찾은 파일을 편집하세요 (보통 50-cloud-init.yaml or 00-installer-config.yaml):
sudo nano /etc/netplan/YOUR_FILE_NAME.yaml
DNS 설정을 확인하세요. 참고: 서버는 일반적으로 networkd을 사용하고, Desktop 설치에서는 NetworkManager을 사용합니다. 인터페이스 이름을 확인하세요 (예: eth0 or ens3) 사용하여 ip addr 편집하기 전에.
network:
version: 2
renderer: networkd
ethernets:
eth0:
dhcp4: yes
nameservers:
addresses: [8.8.8.8, 8.8.4.4]
설정을 적용하세요:

sudo netplan apply
Stub 리스너 충돌 문제
일부 애플리케이션이 포트 53에서 실행 중인 systemd-resolved의 stub 리스너와 충돌할 수 있습니다. stub 리스너를 비활성화해야 하는 경우:
sudo mkdir -p /etc/systemd/resolved.conf.d/
설정 파일을 생성하세요:
echo -e "[Resolve]\nDNSStubListener=no" | sudo tee /etc/systemd/resolved.conf.d/noresolved.conf
systemd-resolved를 재시작하세요:
sudo systemctl restart systemd-resolved.service
추가 문제 해결 방법
오류가 계속 발생하면 다음 도구로 문제의 원인을 파악하세요. 문제가 네트워크 연결, DNS 서버 자체, 또는 로컬 파일 충돌 중 어디서 발생하는지 확인해야 합니다.
DNS 서버 접근성 확인
설정에 명시된 특정 DNS 서버에 접근할 수 있는지 테스트하세요. ping 명령 뒤에 기본 네임서버의 IP 주소를 입력하세요:
ping -c 4 <your_dns_server_ip>
이 명령이 실패하면 네트워크 연결에 문제가 있는 것입니다.
/etc/hosts 파일 확인
/etc/hosts 파일은 DNS 조회를 재정의할 수 있습니다. 잘못된 항목이 있으면 도메인 확인에 실패할 수 있습니다:
sudo nano /etc/hosts
최소한 다음 항목이 포함되어 있는지 확인하세요:
127.0.0.1 localhost
127.0.1.1 your-hostname
DNS 진단에 dig 사용하기
dig 명령어를 사용하면 DNS 문제를 진단할 수 있습니다:
dig google.com
이 명령어는 어떤 네임서버가 응답했는지, 쿼리에 얼마나 걸렸는지를 포함한 DNS 쿼리 상세 정보를 보여줍니다.

네트워크 인터페이스 설정 확인
네트워크 인터페이스가 올바르게 설정되어 있는지 확인하세요:
ip addr show
기본 네트워크 인터페이스에 IP 주소가 할당되어 있는지 확인하세요.
DNS 문제 재발 방지
당장의 오류를 수정하면 접근이 복구되지만, 재발을 막으려면 안정적인 설정이 필요합니다. 아래 방법들을 적용하면 네트워크 설정에 이중화를 구성하여, 사소한 연결 끊김이 발생해도 이름 확인 기능이 중단되지 않습니다.
네트워크 안정성은 하드웨어 품질에 달려 있습니다. Cloudzy의 Cloudzy는 Linux VPS 고클럭 AMD Ryzen 9 프로세서와 40 Gbps 연결을 기반으로 합니다. 이 빠른 속도 덕분에 지연 시간과 타임아웃이 줄어들어, 이름 확인 실패로 인한 애플리케이션 장애를 방지할 수 있습니다.
신뢰할 수 있는 DNS 서버 사용
Netplan 또는 systemd-resolved 를 통해 여러 네임서버를 설정하세요. /etc/resolv.conf 을 직접 편집하는 것보다 이 방법이 권장됩니다. 재부팅 후에도 설정이 유지되기 때문입니다. 보조 IP(예: 1.1.1.1 or 8.8.4.4 )를 추가해 두면 기본 공급자에 장애가 생겼을 때 이중화가 적용됩니다.
시스템 업데이트 모니터링
시스템 업데이트 후 DNS 설정이 변경될 수 있습니다. Linux 배포판을 업데이트한 후에는 DNS 확인이 정상적으로 동작하는지 반드시 확인하세요.
설정 문서화
특히 커스텀 DNS 서버를 사용하는 경우, DNS 설정을 기록해 두세요. 문제가 발생했을 때 훨씬 빠르게 원인을 파악할 수 있습니다.
불필요한 캐시 초기화 자제
DNS 캐시를 일일 스케줄로 정기적으로 지우지 마세요. 유효한 데이터가 삭제되어 웹 브라우징 속도가 느려집니다.
캐시를 초기화해야 하는 경우는 두 가지뿐입니다:
- DNS 공급자를 변경한 경우 (예: ISP에서 Google DNS로 전환).
- 웹사이트가 새 서버로 이전했는데 접근이 되지 않는 경우.
결론
Linux 시스템에서 발생하는 이름 확인 임시 실패 오류는 대부분 인터넷 연결 문제, DNS 설정 오류, 방화벽 제한, 또는 DNS 캐시 손상이 원인입니다. 이 가이드의 해결 방법을 순서대로 적용하면 해당 시스템의 정확한 원인을 찾아 수정할 수 있습니다.
Ubuntu 22.04 및 24.04 사용자는 반드시 systemd-resolved 설정을 우선적으로 확인해야 합니다. 이 서비스는 모든 DNS 쿼리를 처리하므로, 설정 하나가 잘못되면 패키지 업데이트와 외부 연결이 모두 차단됩니다. 서비스가 활성 상태이며 올바르게 연결되어 있는지 확인하세요. DNS 설정이 안정적으로 유지되면 Linux VPS에서 네트워크 작업을 끊김 없이 실행할 수 있습니다.