OpenClaw, etkin bir Gateway’i (WebSocket uç noktası) keşfetmek için Bonjour (mDNS / DNS-SD) kullanabilir. Çok noktaya yayınDocumentation Index
Fetch the complete documentation index at: https://docs.openclaw.ai/llms.txt
Use this file to discover all available pages before exploring further.
local. taraması yalnızca LAN’a özel bir kolaylıktır. Paketle gelen bonjour
plugin’i LAN duyurusunun sahibidir. macOS ana makinelerinde otomatik başlar ve
Linux, Windows ve container içinde çalışan Gateway dağıtımlarında isteğe bağlıdır. Ağlar arası keşif için aynı
işaret, yapılandırılmış bir geniş alan DNS-SD domain’i üzerinden de yayımlanabilir. Keşif
yine de en iyi çaba esaslıdır ve SSH ya da Tailnet tabanlı bağlantının yerini almaz.
Tailscale üzerinden geniş alan Bonjour (Unicast DNS-SD)
Node ve gateway farklı ağlardaysa, çok noktaya yayın mDNS sınırı geçmez. Tailscale üzerinden unicast DNS-SD’ye (“Wide-Area Bonjour”) geçerek aynı keşif kullanıcı deneyimini koruyabilirsiniz. Üst düzey adımlar:- Gateway ana makinesinde (Tailnet üzerinden erişilebilir) bir DNS sunucusu çalıştırın.
_openclaw-gw._tcpiçin DNS-SD kayıtlarını ayrılmış bir zone altında yayımlayın (örnek:openclaw.internal.).- Tailscale split DNS yapılandırın; böylece seçtiğiniz domain istemciler (iOS dahil) için bu DNS sunucusu üzerinden çözümlenir.
openclaw.internal. yalnızca bir örnektir.
iOS/Android node’ları hem local. hem de yapılandırdığınız geniş alan domain’ini 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 domain’i (örnek:
openclaw.internal.)~/.openclaw/dns/<domain>.dbüzerinden sunar
Tailscale DNS ayarları
Tailscale yönetici konsolunda:- Gateway’in tailnet IP’sini gösteren bir nameserver ekleyin (UDP/TCP 53).
- Keşif domain’inizin bu nameserver’ı 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ı etkin tutun.
Yalnızca tailnet kurulumları için:
~/.openclaw/openclaw.jsoniçindegateway.bind: "tailnet"ayarlayı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 duyurur. LAN çok noktaya yayın duyurusu,
plugin etkinleştirildiğinde paketle gelen bonjour plugin’i tarafından sağlanır; geniş alan
DNS-SD yayımlaması Gateway’e ait kalır.
Hizmet türleri
_openclaw-gw._tcp- gateway aktarım işareti (macOS/iOS/Android node’ları tarafından kullanılır).
TXT anahtarları (gizli olmayan ipuçları)
Gateway, kullanıcı arayüzü akışlarını kolaylaştırmak için küçük 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 olduğunda ve fingerprint kullanılabilir olduğunda)canvasPort=<port>(yalnızca canvas host etkin olduğunda; şu andagatewayPortile aynıdır)transport=gatewaytailnetDns=<magicdns>(yalnızca mDNS full modu, Tailnet kullanılabilir olduğunda isteğe bağlı ipucu)sshPort=<port>(yalnızca full modu; minimal ve off modlarında atlanır)cliPath=<path>(yalnızca full modu; minimal ve off modlarında atlanır)
- Bonjour/mDNS TXT kayıtları kimliği doğrulanmamıştır. İstemciler TXT’yi yetkili yönlendirme olarak ele almamalıdır.
- İstemciler, çözümlenen hizmet uç noktasını (SRV + A/AAAA) kullanarak yönlendirme yapmalıdır.
lanHost,tailnetDns,gatewayPortvegatewayTlsSha256değerlerini yalnızca ipucu olarak ele alın. - SSH otomatik hedefleme de TXT’ye özel ipuçlarını değil, çözümlenen hizmet ana makinesini kullanmalıdır.
- TLS pinning, duyurulan bir
gatewayTlsSha256değerinin daha önce saklanmış bir pin’i geçersiz kılmasına asla izin vermemelidir. - iOS/Android node’ları keşif tabanlı doğrudan bağlantıları yalnızca TLS olarak ele almalı ve ilk kez görülen bir fingerprint’e güvenmeden önce açık kullanıcı onayı gerektirmelidir.
macOS üzerinde hata ayıklama
Yararlı yerleşik araçlar:-
Örnekleri tara:
-
Bir örneği çözümle (
<instance>değerini 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). bonjour: satırlarını, özellikle şunları arayın:
bonjour: advertise failed ...bonjour: suppressing ciao cancellation ...bonjour: ... name conflict resolved/hostname conflict resolvedbonjour: watchdog detected non-announced service ...bonjour: disabling advertiser after ... failed restarts ...
probing, announcing ve yeni conflict-rename durumlarını
devam eden durumlar olarak ele alır. Hizmet hiçbir zaman announced durumuna ulaşmazsa, OpenClaw sonunda
duyurucuyu yeniden oluşturur ve tekrarlanan hatalardan sonra sonsuza kadar yeniden duyurmak yerine
bu Gateway işlemi için Bonjour’u devre dışı bırakır.
Bonjour, geçerli bir DNS etiketi olduğunda duyurulan .local ana makinesi için sistem ana makine adını kullanır.
Sistem ana makine adı boşluk, alt çizgi veya başka bir geçersiz DNS etiketi karakteri içeriyorsa,
OpenClaw openclaw.local değerine geri döner. Açık bir ana makine etiketi gerektiğinde
Gateway’i başlatmadan önce OPENCLAW_MDNS_HOSTNAME=<name> ayarlayın.
iOS node üzerinde hata ayıklama
iOS node’u_openclaw-gw._tcp keşfetmek için NWBrowser kullanır.
Günlükleri yakalamak için:
- Settings → Gateway → Advanced → Discovery Debug Logs
- Settings → Gateway → Advanced → Discovery Logs → yeniden üret → Copy
Bonjour ne zaman etkinleştirilmeli
Bonjour, macOS ana makinelerinde boş yapılandırmalı Gateway başlangıcı için otomatik başlar çünkü yerel uygulama ve yakındaki iOS/Android node’ları genellikle aynı LAN keşfine dayanır. Aynı LAN otomatik keşfi Linux, Windows veya başka bir macOS dışı ana makinede yararlı olduğunda Bonjour’u açıkça etkinleştirin:discovery.mdns.mode kullanır. Aynı mod, geniş alan DNS-SD kayıtlarındaki isteğe bağlı TXT ipuçlarını da kontrol eder.
Varsayılan mod minimal değeridir; full değerini yalnızca istemciler cliPath veya
sshPort ipuçlarına ihtiyaç duyduğunda kullanın. Plugin etkinliğini değiştirmeden LAN çok noktaya yayınını
bastırmak için off kullanın; discovery.wideArea.enabled true olduğunda geniş alan DNS-SD yine de
minimal Gateway işaretini yayımlayabilir.
Bonjour ne zaman devre dışı bırakılmalı
LAN çok noktaya yayın duyurusu gereksiz, kullanılamaz veya zararlı olduğunda Bonjour’u devre dışı bırakılmış bırakın. Yaygın durumlar macOS dışı sunucular, Docker bridge ağı, WSL veya mDNS çok noktaya yayınını düşüren bir ağ ilkesidir. Bu ortamlarda Gateway yine de yayımlanmış URL’si, SSH, Tailnet veya geniş alan DNS-SD üzerinden erişilebilir, ancak LAN otomatik keşfi güvenilir değildir. Sorun dağıtım kapsamındaysa mevcut ortam geçersiz kılmasını tercih edin:Docker incelikleri
Paketle gelen Bonjour plugin’i,OPENCLAW_DISABLE_BONJOUR ayarlanmamışken algılanan
container’larda LAN çok noktaya yayın duyurusunu otomatik devre dışı bırakır. Docker bridge ağları
genellikle mDNS çok noktaya yayınını (224.0.0.251:5353) container ile LAN arasında
iletmez, bu nedenle container’dan duyuru yapmak keşfi nadiren çalıştırır.
Önemli incelikler:
- Bonjour macOS ana makinelerinde otomatik başlar ve diğer yerlerde isteğe bağlıdır. Devre dışı bırakılması Gateway’i durdurmaz; yalnızca LAN çok noktaya yayın duyurusunu atlar.
- Bonjour’u devre dışı bırakmak
gateway.binddeğerini değiştirmez; yayımlanan host portunun çalışabilmesi için Docker hâlâ varsayılan olarakOPENCLAW_GATEWAY_BIND=lankullanır. - Bonjour’u devre dışı bırakmak geniş alan DNS-SD’yi devre dışı bırakmaz. Gateway ve node aynı LAN üzerinde değilse geniş alan keşfi veya Tailnet kullanın.
- Aynı
OPENCLAW_CONFIG_DIRdeğerini Docker dışında yeniden kullanmak container otomatik devre dışı bırakma ilkesini kalıcı hale getirmez. OPENCLAW_DISABLE_BONJOUR=0değerini yalnızca host networking, macvlan veya mDNS çok noktaya yayınının geçtiği bilinen başka bir ağ için ayarlayın; zorla devre dışı bırakmak için1olarak ayarlayın.
Devre dışı Bonjour sorunlarını giderme
Docker kurulumundan sonra bir node Gateway’i artık otomatik keşfetmiyorsa:-
Gateway’in auto, forced-on veya forced-off modunda çalışıp çalışmadığını doğrulayın:
-
Gateway’in kendisinin yayımlanan port üzerinden erişilebilir olduğunu doğrulayın:
-
Bonjour devre dışı olduğunda doğrudan hedef kullanın:
- Control UI veya yerel araçlar:
http://127.0.0.1:18789 - LAN istemcileri:
http://<gateway-host>:18789 - Ağlar arası istemciler: Tailnet MagicDNS, Tailnet IP, SSH tüneli veya geniş alan DNS-SD
- Control UI veya yerel araçlar:
-
Docker içinde Bonjour plugin’ini kasıtlı olarak etkinleştirdiyseniz ve duyuruyu
OPENCLAW_DISABLE_BONJOUR=0ile zorladıysanız, host’tan çok noktaya yayını test edin:Tarama boşsa veya Gateway günlükleri tekrarlanan ciao watchdog iptalleri gösteriyorsa,OPENCLAW_DISABLE_BONJOUR=1değerini geri yükleyin ve doğrudan ya da Tailnet rotası kullanın.
Yaygın hata modları
- Bonjour ağlar arasında geçmez: Tailnet veya SSH kullanın.
- Çok noktaya yayın engellendi: bazı Wi-Fi ağları mDNS’i devre dışı bırakır.
- Duyurucu probing/announcing durumunda takıldı: çok noktaya yayını engellenmiş ana makineler, container bridge’leri, WSL veya arayüz değişimleri ciao duyurucusunu announced olmayan bir durumda bırakabilir. OpenClaw birkaç kez yeniden dener ve ardından duyurucuyu sonsuza kadar yeniden başlatmak yerine geçerli Gateway işlemi için Bonjour’u devre dışı bırakır.
- Docker bridge ağı: Bonjour algılanan container’larda otomatik devre dışı bırakılır.
OPENCLAW_DISABLE_BONJOUR=0değerini yalnızca host, macvlan veya başka bir mDNS uyumlu ağ için ayarlayın. - Uyku / arayüz değişimi: macOS mDNS sonuçlarını geçici olarak düşürebilir; yeniden deneyin.
- Tarama çalışıyor ancak çözümleme başarısız: makine adlarını basit tutun (emoji 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, bu nedenle aşırı karmaşık adlar bazı çözümleyicileri karıştırabilir.
Escape edilmiş örnek adları (\032)
Bonjour/DNS-SD, hizmet örneği adlarındaki byte’ları çoğu zaman decimal \DDD
dizileri olarak escape eder (ör. boşluklar \032 olur).
- Bu, protokol düzeyinde normaldir.
- Kullanıcı arayüzleri görüntüleme için decode etmelidir (iOS
BonjourEscapes.decodekullanır).
Etkinleştirme / devre dışı bırakma / yapılandırma
- macOS ana makineleri, paketle gelen LAN keşif Plugin’ini varsayılan olarak otomatik başlatır.
openclaw plugins enable bonjour, varsayılan olarak etkin olmadığı ana makinelerde paketle gelen LAN keşif Plugin’ini etkinleştirir.openclaw plugins disable bonjour, paketle gelen Plugin’i devre dışı bırakarak LAN çok noktaya yayın duyurusunu devre dışı bırakır.OPENCLAW_DISABLE_BONJOUR=1, Plugin yapılandırmasını değiştirmeden LAN çok noktaya yayın duyurusunu devre dışı bırakır; kabul edilen doğru değerler1,true,yesveondeğerleridir (eski:OPENCLAW_DISABLE_BONJOUR).OPENCLAW_DISABLE_BONJOUR=0, algılanan kapsayıcıların içinde bile LAN çok noktaya yayın duyurusunu açık olmaya zorlar; kabul edilen yanlış değerler0,false,noveoffdeğerleridir.- Bonjour Plugin’i etkin olduğunda ve
OPENCLAW_DISABLE_BONJOURayarlanmamışsa Bonjour normal ana makinelerde duyuru yapar ve algılanan kapsayıcıların içinde otomatik olarak devre dışı kalır. ~/.openclaw/openclaw.jsoniçindekigateway.bind, Gateway bağlama modunu denetler.sshPortduyurulduğundaOPENCLAW_SSH_PORTSSH bağlantı noktasını geçersiz kılar (eski:OPENCLAW_SSH_PORT).- mDNS tam modu etkinken
OPENCLAW_TAILNET_DNS, TXT içinde bir MagicDNS ipucu yayımlar (eski:OPENCLAW_TAILNET_DNS). OPENCLAW_CLI_PATH, duyurulan CLI yolunu geçersiz kılar (eski:OPENCLAW_CLI_PATH).
İlgili belgeler
- Keşif ilkesi ve taşıma seçimi: Keşif
- Node eşleştirme + onaylar: Gateway eşleştirme