Mac에서 ping은 tailnet 머신 이름을 확인하지만 nslookup은 실패를 반환하며, 두 명령 모두 사실을 말합니다. 앱은 Tailscale이 인터페이스별로 설정하는 시스템 리졸버를 통해 확인하고, nslookup과 host는 MagicDNS가 전혀 건드리지 않는 정적 파일을 읽습니다. 패킷 하나 잃지 않고도 두 경로가 서로 다를 수 있습니다. DNS 설정을 바꾸기 전에 실패한 앱이 어느 경로를 탔는지 먼저 판단하세요.

두 가지 확인 경로, 두 가지 다른 답

macOS의 앱 트래픽은 시스템 리졸버를 거치며, 인터페이스별로 제한된 리졸버 항목이 어느 서버가 어느 도메인에 답할지 결정합니다. Tailscale은 거기에 자사의 MagicDNS 항목을 설치하므로 Safari와 ssh가 tailnet 이름을 찾습니다. 대신 nslookup, host, dig는 /etc/resolv.conf 를 읽거나 명령줄에서 서버를 지정하며, 그 파일은 보통 여전히 라우터나 사무실 서버를 가리킵니다. 그 파일로 보내진 tailnet 이름에는 기다리는 권위 있는 응답이 없으므로 도구는 실패를 보고하지만 시스템 경로는 성공합니다.

어느 도구도 잘못 동작하지 않습니다. 서로 다른 서버에 묻고 있으며, 그 서버 중 하나만 당신의 tailnet을 알고 있습니다.

시스템 경로로 같은 이름을 시험하세요

시스템 조회 호출을 첫 시험으로 사용하고, 그다음 MagicDNS 리졸버로 직접 보낸 질의와 비교하세요. 짧은 이름과 완전한 이름은 서로 다른 질문이고 답도 다르므로, tailnet 도메인을 포함해 둘의 철자를 동일하게 유지하세요.

dscacheutil -q host -a name nas-01.tailnet-a1b2.ts.net
scutil --dns
dig @100.100.100.100 nas-01.tailnet-a1b2.ts.net

이 세 출력은 세 가지 질문에 답합니다. 시스템이 무엇을 반환하는지, 어느 리졸버가 어느 도메인에 설정되어 있는지, MagicDNS 자체가 무엇을 아는지입니다. 두 번째와 세 번째에는 있고 첫 번째에는 없는 이름은 tailnet이 아니라 로컬 설정을 가리킵니다.

이름이 확인되면 서비스를 시험하세요

올바른 DNS 응답은 이름이 주소에 대응한다는 것만 증명합니다. 그 뒤의 서비스는 멈춰 있을 수 있고, 포트는 접근 규칙으로 필터링될 수 있으며, 인증서는 당신이 입력한 것과 다른 호스트를 가리킬 수 있습니다.

nc -vz nas-01.tailnet-a1b2.ts.net 445
ping -c 3 nas-01.tailnet-a1b2.ts.net

원래 오류 텍스트를 보관하세요. 인증서 경고, 연결 시간 초과, 이름을 찾을 수 없음은 각각 다른 곳으로 이어집니다. 네임서버를 바꾸면 세 번째는 고쳐지고 처음 두 가지에 오후 한나절을 낭비합니다.

MagicDNS는 사무실 DNS를 대체하지 않습니다

같은 클라이언트가 둘 다에 도달할 수 있어도 사무실 영역 안의 이름은 tailnet 기기 이름이 아닙니다. 목적지가 서브넷 라우터 뒤에 있을 때, 클라이언트는 그 영역에 대해 내부 리졸버를 가리키는 split DNS가 필요합니다, 이것은 MagicDNS와 다른 설정이며 그 옆에 문서화되어 있습니다.

검색 도메인도 중요합니다. 자격 없는 짧은 이름에는 설정된 각 접미사가 순서대로 붙으므로, 최근 다른 네트워크에 합류한 노트북은 오래된 접미사로 확인될 수 있습니다. 영역이 깨졌다고 선언하기 전에 어떤 접미사가 적용되었는지 확인하세요.

두 경로가 모두 실패하면 tailnet의 사실이 결정합니다

존재한다고 믿는 기기에 대해 시스템 조회와 직접 질의가 모두 실패한다면, 문제는 Mac 리졸버보다 상류에 있습니다.

관리 콘솔에서 머신 이름과 tailnet 도메인을 확인하고, 기기가 온라인이며 승인되었는지 확인하고, 클라이언트의 DNS 설정이 로컬에서 비활성화되지 않았는지 확인하세요. 오프라인 기기는 이름을 유지하며 돌려줄 주소가 없을 뿐입니다.

그다음 증거에 따라 선택하세요. 시스템 경로에서 확인되고 nslookup에서 실패하는 이름은 도구 경로의 차이이고, 확인되지만 서비스가 거부하는 이름은 접근 또는 인증서 문제이며, 어디에서도 확인되지 않는 이름은 tailnet 또는 DNS 설정 문제입니다. 세 주인, 세 가지 수정, 그리고 MagicDNS 문서 가 첫 사례의 macOS 특성을 다룹니다.

관련 글