DNS
VPN에서 내부 이름이 확인되지 않습니다
macOS는 한 도메인의 쿼리를 한 DNS 서버로 보내고 다른 쿼리는 다른 서버로 보낼 수 있습니다. VPN은 내부 이름에 이 분할 DNS를 사용합니다.
증상
intranet.corp.example같은 내부 이름은 실패하지만 공개 사이트는 작동합니다.- 내부 IP 주소는 작동하지만 이름은 작동하지 않습니다.
dig또는nslookup은 실패하지만 브라우저는 작동하거나, 그 반대입니다.
가능한 원인
- VPN이 해당 도메인의 리졸버를 추가하지 않습니다. VPN은 어떤 도메인을 자체 DNS 서버로 보낼지 macOS에 알려야 합니다.
- macOS 규칙을 건너뛰는 테스트 도구.
dig은 앱이 사용하는 도메인별 리졸버가 아닌/etc/resolv.conf의 서버를 사용합니다. - 수동 DNS 서버. Wi-Fi에 직접 설정한 DNS 서버는 내부 이름을 알지 못합니다.
- 검색 도메인이 없는 짧은 이름.
intranet같은 짧은 이름을 전체 이름으로 만들려면 검색 도메인이 필요합니다.
확인 방법
VPN에 연결합니다. 모든 리졸버를 표시하고 회사 도메인에 대한
domain줄이 있는 리졸버를 찾습니다.scutil --dnsdig이 아닌 macOS 리졸버를 통해 이름을 조회하세요.dscacheutil -q host -a name intranet.corp.example서비스의 검색 도메인을 표시합니다.
networksetup -getsearchdomains Wi-Fi
해결 방법
VPN이 사용해야 하는 도메인과 DNS 서버를 관리자에게 문의하세요.
도메인별 리졸버 폴더가 없으면 만드세요.
sudo mkdir -p /etc/resolver관리자 암호가 필요합니다.
도메인 이름으로 파일을 만드세요. 서버마다
nameserver줄을 하나씩 추가하세요.sudo nano /etc/resolver/corp.example관리자 암호가 필요합니다.
내부 DNS 서버의 주소를 한 줄에 입력하세요.
nameserver 10.0.0.53파일을 저장하세요.
scutil --dns을 실행하고 새 도메인을 찾으세요.전체 이름을 사용하거나 시스템 설정 > 네트워크 > 해당 서비스 > 세부사항 > DNS에서 검색 도메인을 추가하세요.
파일이 더 이상 필요하지 않으면 제거하세요.
sudo rm /etc/resolver/corp.example관리자 암호가 필요합니다.
Kilobat 사용
비공개 이름의 경우
why는 요청을 보낸 VPN 리졸버와 해당 리졸버의 응답 여부를 알려줍니다.kilobat why intranet.corp.example
질문
브라우저는 작동하지만 dig는 실패하는 이유는 무엇인가요?
dig에서 /etc/resolv.conf에 있는 서버에 쿼리합니다. 브라우저는 macOS 리졸버를 사용하며, 이 리졸버도 도메인별 리졸버를 사용합니다.
/etc/resolv.conf를 편집해도 되나요?
아니요. resolver 매뉴얼 페이지에 따르면 macOS가 이 파일을 자동으로 관리합니다. 네트워크 설정 또는 /etc/resolver를 사용하세요.
출처
- resolver(5), macOS 27.2와 함께 설치된 매뉴얼 페이지
- scutil(8), macOS 27.2와 함께 설치된 매뉴얼 페이지
- dig(1), macOS 27.2에 설치된 매뉴얼 페이지
- Apple 지원: Mac에서 DNS 설정 변경하기
2026년 10월 29일 확인했습니다.