2025.09.09 | 조회 : 26
서버를 운영하다 보면 예상치 못한 네트워크 문제를 겪을 때가 있습니다. 최근 저희는 후이즈(Whois) 문자 메시지 발송 서비스를 사용하던 중, 메시지가 발송되지 않고 PHP 로그에 다음과 같은 에러가 남는 이슈를 겪었습니다.
php_network_getaddresses: getaddrinfo failed: Temporary failure in name resolution
fsockopen(): unable to connect to hosting.whois.co.kr:80
즉, PHP에서 후이즈 문자 발송 서버(hosting.whois.co.kr
)로 연결을 시도했지만 DNS 해석 실패로 인해 IP 주소를 가져오지 못한 상황이었습니다.
Ubuntu 20.04 서버에서 확인한 결과:
dig hosting.whois.co.kr
nslookup hosting.whois.co.kr
ping hosting.whois.co.kr
SERVFAIL
오류 발생101.101.216.31
) 반환즉, DNS 응답이 불안정하게 오락가락하면서 PHP fsockopen()
함수가 최대 타임아웃(15초)을 기다린 후 실패 → 문자 발송이 지연되거나 실패하는 현상이 발생했습니다.
systemd-resolved
가 순간적으로 도메인 해석을 실패/etc/systemd/resolved.conf
수정
sudo nano /etc/systemd/resolved.conf
[Resolve]
DNS=8.8.8.8 1.1.1.1
FallbackDNS=8.8.4.4 1.0.0.1
sudo systemctl restart systemd-resolved
sudo systemd-resolve --flush-caches
dig hosting.whois.co.kr
nslookup hosting.whois.co.kr
ping hosting.whois.co.kr
이제는 항상 안정적으로 IP가 반환되었고, PHP의 fsockopen()
호출도 지연 없이 성공했습니다. 그 결과, 후이즈 문자 발송 서비스도 정상적으로 메시지를 발송할 수 있었습니다.
Temporary failure in name resolution
은 방화벽 문제가 아니라 DNS 문제일 가능성이 높습니다./etc/systemd/resolved.conf
설정으로 DNS 서버를 안정적인 외부 DNS로 교체하는 것이 좋습니다.저희도 이번 이슈를 통해 DNS 설정의 중요성을 다시 한 번 확인했습니다. 혹시 비슷한 문제를 겪는다면, 위 과정을 참고해 빠르게 해결하시길 바랍니다.