Bonjour / mDNS keşfi
OpenClaw, etkin bir Gateway’i (WebSocket uç noktası) keşfetmek için yalnızca LAN’a özel bir kolaylık olarak Bonjour (mDNS / DNS‑SD) kullanır. En iyi çabayla çalışır ve SSH veya Tailnet tabanlı bağlantının yerini almaz.Tailscale üzerinden geniş alan Bonjour (Unicast DNS‑SD)
Düğüm ve gateway farklı ağlardaysa, çok noktaya yayın mDNS sınırı aşmaz. unicast DNS‑SD (“Wide‑Area Bonjour”) kullanarak Tailscale üzerinden aynı keşif UX’ini koruyabilirsiniz. Üst düzey adımlar:- Gateway ana makinesinde bir DNS sunucusu çalıştırın (Tailnet üzerinden erişilebilir).
- Ayrı bir bölge altında
_openclaw-gw._tcpiçin DNS‑SD kayıtları yayımlayın (örnek:openclaw.internal.). - Seçtiğiniz alan adının istemciler (iOS dahil) için bu DNS sunucusu üzerinden çözülmesi amacıyla Tailscale split DNS yapılandırmasını yapın.
openclaw.internal. yalnızca bir örnektir.
iOS/Android düğümleri hem local. hem de yapılandırdığınız geniş alan alan adını tarar.
Gateway yapılandırması (önerilir)
Tek seferlik DNS sunucusu kurulumu (gateway ana makinesi)
- yalnızca gateway’in Tailscale arayüzlerinde 53 numaralı portu dinler
- seçtiğiniz alan adını (örnek:
openclaw.internal.)~/.openclaw/dns/<domain>.dbüzerinden sunar
Tailscale DNS ayarları
Tailscale yönetici konsolunda:- Gateway’in tailnet IP’sini işaret eden bir ad sunucusu ekleyin (UDP/TCP 53).
- Keşif alan adınızın bu ad sunucusunu kullanması için split DNS ekleyin.
_openclaw-gw._tcp tarayabilir.
Gateway dinleyici güvenliği (önerilir)
Gateway WS portu (varsayılan18789) varsayılan olarak loopback’e bağlanır. LAN/tailnet
erişimi için açıkça bağlayın ve kimlik doğrulamayı açık tutun.
Yalnızca tailnet kurulumları için:
gateway.bind: "tailnet"ayarını~/.openclaw/openclaw.jsoniçinde yapın.- Gateway’i yeniden başlatın (veya macOS menü çubuğu uygulamasını yeniden başlatın).
Neler duyurulur
Yalnızca Gateway,_openclaw-gw._tcp duyurusunu yapar.
Hizmet türleri
_openclaw-gw._tcp— gateway taşıma işaretçisi (macOS/iOS/Android düğümleri tarafından kullanılır).
TXT anahtarları (gizli olmayan ipuçları)
Gateway, UI akışlarını kolaylaştırmak için küçük ve gizli olmayan ipuçları duyurur:role=gatewaydisplayName=<friendly name>lanHost=<hostname>.localgatewayPort=<port>(Gateway WS + HTTP)gatewayTls=1(yalnızca TLS etkin olduğunda)gatewayTlsSha256=<sha256>(yalnızca TLS etkin ve parmak izi mevcut olduğunda)canvasPort=<port>(yalnızca canvas ana makinesi etkin olduğunda; varsayılan18793)sshPort=<port>(üzerine yazılmadığında varsayılan 22)transport=gatewaycliPath=<path>(isteğe bağlı; çalıştırılabilir biropenclawgiriş noktasına mutlak yol)tailnetDns=<magicdns>(Tailnet mevcut olduğunda isteğe bağlı ipucu)
- Bonjour/mDNS TXT kayıtları kimliği doğrulanmamıştır. İstemciler TXT kayıtlarını yetkili yönlendirme kaynağı olarak değerlendirmemelidir.
- İstemciler, çözümlenen servis uç noktasını (SRV + A/AAAA) kullanarak yönlendirme yapmalıdır.
lanHost,tailnetDns,gatewayPortvegatewayTlsSha256yalnızca ipucu olarak değerlendirilmelidir. - TLS pinleme, daha önce kaydedilmiş bir pini geçersiz kılmak için ilan edilen bir
gatewayTlsSha256değerine asla izin vermemelidir. - iOS/Android düğümleri, keşif tabanlı doğrudan bağlantıları yalnızca TLS olarak değerlendirmeli ve ilk kez görülen bir parmak izine güvenmeden önce açık kullanıcı onayı gerektirmelidir.
Debugging on macOS
Kullanışlı yerleşik araçlar:-
Browse instances:
-
Bir örneği çözümleyin (
<instance>ile değiştirin):
Gateway günlüklerinde hata ayıklama
Gateway, dönen bir günlük dosyası yazar (başlangıçtagateway log file: ... olarak yazdırılır). Özellikle şu bonjour: satırlarına bakın:
bonjour: advertise failed ...bonjour: ... name conflict resolved/hostname conflict resolvedbonjour: watchdog detected non-announced service ...
iOS düğümünde hata ayıklama
iOS düğümü,_openclaw-gw._tcp’i keşfetmek için NWBrowser kullanır.
To capture logs:
- Ayarlar → Gateway → Gelişmiş → Keşif Hata Ayıklama Günlükleri
- Ayarlar → Gateway → Gelişmiş → Keşif Günlükleri → yeniden üret → Kopyala
Yaygın arıza modları
- Bonjour ağlar arası geçmez: Tailnet veya SSH kullanın.
- Çok noktaya yayın engelli: bazı Wi‑Fi ağları mDNS’i devre dışı bırakır.
- Uyku / arayüz dalgalanması: macOS mDNS sonuçlarını geçici olarak düşürebilir; yeniden deneyin.
- Tarama çalışıyor ama çözümleme başarısız: makine adlarını basit tutun (emojilerden veya noktalama işaretlerinden kaçının), ardından Gateway’i yeniden başlatın. Hizmet örneği adı ana makine adından türetilir; aşırı karmaşık adlar bazı çözücüleri şaşırtabilir.
Escaped instance names (\032)
Bonjour/DNS‑SD, hizmet örneği adlarındaki baytları sıklıkla ondalık \DDD
dizileri olarak kaçışlar (ör. boşluklar \032 olur).
- Bu, protokol düzeyinde normaldir.
- UI’lar görüntüleme için çözmelidir (iOS
BonjourEscapes.decodekullanır).
Devre dışı bırakma / yapılandırma
OPENCLAW_DISABLE_BONJOUR=1duyurmayı devre dışı bırakır (eski:OPENCLAW_DISABLE_BONJOUR).gateway.bind,~/.openclaw/openclaw.jsoniçinde Gateway bağlanma modunu denetler.OPENCLAW_SSH_PORT, TXT’te duyurulan SSH portunu geçersiz kılar (eski:OPENCLAW_SSH_PORT).OPENCLAW_TAILNET_DNS, TXT’te bir MagicDNS ipucu yayımlar (eski:OPENCLAW_TAILNET_DNS).OPENCLAW_CLI_PATH, duyurulan CLI yolunu geçersiz kılar (eski:OPENCLAW_CLI_PATH).
İlgili dokümanlar
- Keşif politikası ve taşıma seçimi: Discovery
- Düğüm eşleştirme + onaylar: Gateway pairing