Meshtastic UDP to mechanizm rozszerzający sieć LoRa o połączenie przez sieć IP (LAN). W trybie tym każdy węzeł Meshtastic z włączonym Wi-Fi i flagą UDP_BROADCAST dołącza do stałego multicastu UDP (domyślnie 224.0.0.69:4403) i nasłuchuje pakietów od innych węzłów oraz wysyła do nich własne pakiety. Po włączeniu Wi-Fi i UDP meshing (np. komendą –set network.enabled_protocols 1), urządzenie dołącza do sieci Wi-Fi (tylko jako klient, tryb AP nie jest obsługiwany) i po zestawieniu połączenia uruchamia obsługę UDP. Węzły automatycznie odkrywają się nawzajem w LAN bez dodatkowej konfiguracji – wystarczy, że są w tej samej podsieci .
Inicjalizacja komunikacji: Przy starcie moduł UDP tworzy gniazdo multicast i ustawia TTL=64, co pozwala odbierać i rozsyłać pakiety w sieci lokalnej. Pierwsze uruchomienie Wi-Fi może trwać dłużej (generowanie kluczy SSL – ok. 20–30s ), po czym węzeł loguje adres IP i port nasłuchu. Każdy pakiet Meshtastic (protobuf MeshPacket) odebrany przez UDP jest dekodowany i traktowany tak samo, jakby przyszedł drogą radiową – zostaje dodany do kolejki routera mesh do dalszej obróbki. W strukturze pakietu ustawiane jest pole transport_mechanism = TRANSPORT_MULTICAST_UDP informujące, że pochodzi z UDP. Analogicznie, przy wysyłaniu, każdy pakiet generowany lokalnie lub przekazywanyprzez węzeł jest równolegle wysyłany przez Wi-Fi (multicast UDP) – oczywiście o ile opcja UDP jest aktywna i węzeł ma połączenie IP. Pakiet jest wtedy serializowany do bajtów i wysyłany do grupy 224.0.0.69:4403, skąd odbiorą go pozostałe węzły w LAN.
Podsumowując, tryb UDP tworzy w LAN „tunel” dla ramek mesh, przekazując wszystkie pakiety radiowe przez Wi-Fi do pozostałych węzłów (i odwrotnie). Dzięki temu węzły w sieci lokalnej działają jak dodatkowy hop bez użycia radia, co zwiększa zasięg i przepustowość sieci . Warto zauważyć, że multicast działa tylko w obrębie jednej podsieci – routery sieciowe zwykle nie przepuszczają adresów 224.0.0.x (adres 224.0.0.69 jest zarezerwowany dla protokołów routingu ). Zatem UDP meshing służy głównie do łączenia węzłów w lokalnej infrastrukturze (np. w budynku), a nie przez internet (chyba że użyje się VPN/Tailscale itp. do mostkowania UDP).
Obsługa pakietów i zasady: Meshtastic dba, by pakiety krążące jednocześnie po radiu i UDP nie powodowały nieskończonych pętli. Przykładowo, w implementacji unika się ponownego wysyłania przez UDP pakietu, który już przyszedł z UDP (zaznacza to logika if (transport_mechanism == UDP) … podczas przekazywania pakietu). Ponadto inne mechanizmy protokołu – np. unikalne ID pakietu i historia widzianych pakietów – zapobiegają dublowaniu wiadomości w kółko. W efekcie każdy pakiet dociera do każdego węzła w LAN tylko raz (nawet jeśli przyszedł i drogą radiową, i przez Wi-Fi). Co więcej, węzeł z aktywnym UDP zwykle ogranicza nadawanie RF dla pakietów „mesh” (broadcast) – ponieważ wie, że przekaże je po IP. W logach zauważono, że węzeł z włączonym UDP wysyła pakiety kanałowe przez radio tylko w ~5–10% przypadków, przenosząc ruch na Wi-Fi . Dzięki temu zmniejsza się zagęszczenie transmisji radiowych, a węzły Wi-Fi odbierają wiadomości głównie po UDP (DM-y i inne specjalne pakiety mogą nadal iść po RF normalnie ). Podsumowując, tryb UDP pozwala węzłom w pobliżu zachowywać się jak jeden rozszerzony węzeł mesh po sieci LAN, odciążając łącze LoRa.
