콘텐츠로 이동

Bonjour와 Tailscale을 활용한 OpenClaw Gateway 자동 탐색 가이드

서버 IP 주소를 일일이 외우거나 바뀌는 IP를 매번 확인하는 건 정말 번거로운 일이에요. 설정 파일에 IP를 하드코딩했다가 네트워크 환경이 바뀌어서 연결이 끊기면 다시 수정해야 하는 상황, 개발자라면 누구나 한 번쯤 겪어보셨을 거예요.

OpenClaw는 Bonjour(mDNS / DNS-SD)를 사용해 로컬 네트워크(LAN)에서 활성화된 Gateway를 자동으로 찾아줍니다. 복잡한 설정 없이도 WebSocket 엔드포인트를 바로 발견할 수 있어 편리해요.

  • OpenClaw Gateway가 설치된 호스트
  • Tailscale (네트워크 경계를 넘어서 탐색할 경우 필요)
  • iOS 또는 Android 기기 (Node 연결용)

로컬 네트워크를 넘어 Tailscale 환경에서도 Gateway를 자동으로 찾을 수 있도록 설정하는 5분 완성 가이드예요.

~/.openclaw/openclaw.json 파일에서 Gateway가 Tailnet을 사용하도록 설정하고 Wide-Area DNS-SD를 활성화하세요.

{
gateway: { bind: "tailnet" }, // tailnet 전용 설정 (권장)
discovery: { wideArea: { enabled: true } }, // Wide-Area DNS-SD 게시 활성화
}

Gateway 호스트에서 다음 명령어를 실행해 CoreDNS를 설치하고 설정하세요.

Terminal window
openclaw dns setup --apply

이 명령어를 실행하면 CoreDNS가 Gateway의 Tailscale 인터페이스(53번 포트)에서 대기하며, openclaw.internal. 같은 전용 도메인을 관리하게 됩니다.

Tailscale 관리 콘솔(Admin Console)에서 두 가지를 설정하세요.

  • Nameserver 추가: Gateway의 Tailnet IP(UDP/TCP 53)를 가리키도록 설정하세요.
  • Split DNS 추가: 설정한 탐색용 도메인(예: openclaw.internal.)이 해당 네임서버를 사용하도록 지정하세요.

Tailnet에 연결된 머신에서 다음 명령어로 레코드가 잘 보이는지 테스트해 보세요.

Terminal window
dns-sd -B _openclaw-gw._tcp openclaw.internal.
dig @<TAILNET_IPV4> -p 53 _openclaw-gw._tcp.openclaw.internal PTR +short

문제가 생겼을 때는 다음 항목들을 체크해 보세요.

  • 네트워크 간 Bonjour 미작동: 멀티캐스트 mDNS는 네트워크 경계를 넘지 못해요. 이럴 땐 Tailnet을 사용하거나 SSH 연결을 이용하세요.
  • 멀티캐스트 차단: 일부 공용 Wi-Fi는 보안상의 이유로 mDNS를 차단하기도 해요.
  • 탐색은 되지만 접속이 안 될 때: 머신 이름에 이모지나 특수문자가 포함되면 resolver가 혼동을 일으킬 수 있어요. 이름을 단순하게 바꾸고 Gateway를 재시작해 보세요.
  • 절전 모드 이슈: macOS가 절전 모드에 들어가면 일시적으로 mDNS 결과가 사라질 수 있으니 다시 시도해 보세요.

더 자세한 로그는 Gateway 실행 시 출력되는 gateway log file: ... 경로의 로그 파일에서 bonjour:로 시작하는 라인을 확인하면 도움이 돼요.


설정 중에 막히는 부분이 있나요? AI Setup Assistant에게 물어보고 바로 해결해 보세요.

OpenClaw

OpenClaw Expert

아직 막혀 있나요?

이 문서에서 답을 못 찾았다면 OpenClaw Expert에게 바로 물어보세요.