이 가이드는 macOS 네트워크 구성의 특정 측면, 즉 특정 도메인에 대한 DNS 라우팅 설정에 중점을 둡니다. VPN을 사용하고 최적의 네트워크 구성을 유지하려는 사용자에게 이상적인 이 가이드는 프로세스를 단계별로 안내합니다.

개요: macOS의 특정 도메인에 대한 사용자 정의 DNS 구성

특정 내부 sudomain에 대해 특정 DNS 서버를 사용하기 위한 솔루션을 찾고 있습니다. 이러한 DNS 서버는 VPN을 통해서만 사용할 수 있습니다.

저는 모든 쿼리가 이 내부 DNS 확인자를 통과하는 것을 원하지 않습니다. 제가 자주 사용하는 확인자는 광고와 추적기를 차단하기 때문입니다.

효과적인 해결책: 특정 도메인에 사용할 확인자를 지정하려면 도메인 이름을 딴 파일을 만들고 /etc/resolver/네임서버를 추가하세요.

단계별 구성 가이드

1단계: /etc/resolver/ 디렉터리가 있는지 확인

먼저 필요한 디렉터리가 시스템에 있는지 확인하는 것이 중요합니다. 이 디렉터리에는 사용자 지정 DNS 구성이 보관됩니다. 먼저 /etc/resolver/디렉토리가 존재하는지 확인하십시오

macbook:~ user$ sudo mkdir /etc/resolver/

2단계: 도메인별 구성 파일 생성

디렉터리의 존재를 확인한 후 다음 단계에서는 구성하려는 도메인과 관련된 파일을 만드는 작업이 포함됩니다. 도메인 파일 만들기

macbook:~ user$ sudo vi /etc/resolver/example.com

3단계: 도메인 파일에 네임서버 추가

도메인별 파일을 생성한 후 중요한 부분은 네임서버를 추가하는 것입니다. 이는 도메인에 대한 DNS 쿼리가 전송되는 위치를 결정합니다. 방금 생성한 파일에 네임서버를 추가합니다.

macbook:~ user$ cat /etc/resolver/example.com
nameserver 192.0.2.100

이제 example.com에 대한 모든 쿼리는 192.0.2.100으로 해결됩니다.

이 기술의 주의 사항은 dig 와 같은 도구가 실제로 앱과 같은 도메인을 확인하지 않고 이를 우회한다는 것입니다.

DNS 구성 테스트

DNS 구성을 설정한 후에는 예상대로 작동하는지 테스트하고 확인하는 것이 중요합니다.

'scutil –dns'로 구성 확인

구성을 테스트하는 안정적인 방법은 scutil --dns명령을 사용하는 것입니다.

확인을 위해 'scutil –dns' 사용

명령을 사용하여 scutil --dns구성을 확인하십시오.

macbook:~ user$ scutil --dns
resolver #8
  domain   : example.com
  nameserver[0] : 192.0.2.100
  flags    : Request A records, Request AAAA records
  reach    : 0x00000002 (Reachable)

Ref: https://virtuallytd.com/posts/macos-dns-routing-by-domain/