LiveKit: jeden port UDP dla wszystkich (mux) zamiast zakresu
Deploy PROD / deploy (push) Failing after 0s
Deploy PROD / deploy (push) Failing after 0s
Zakres port_range 50000-50100 rezerwowal osobny port na kazde polaczenie. Test z 200 botami wszedl dokladnie w 49, a log serwera pokazal kandydata UDP tylko przy 52 polaczeniach i TCP przy wszystkich 204: kolejni uczestnicy dostawali juz tylko TCP. Zmienna UDP_PORT z zakresem nie wlaczala muxa, bo przegrywala z zakresem z pliku. Teraz udp_port: 7882 (sprawdzone lokalnie: rtc.portUDP Start 7882, End 0), nowa zmienna LIVEKIT_UDP_PORT, zeby stara LIVEKIT_UDP_RANGE w .env nie mogla przywrocic zakresu. Automatyczne wdrozenie nie dotyka profilu livekit: kontener trzeba przeladowac recznie. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -690,10 +690,10 @@ serwer, w panelu sluza do podpisywania tokenow wejscia.
|
||||
| --- | --- | --- |
|
||||
| 7880 | TCP | sygnalizacja WebSocket i API serwera |
|
||||
| 7881 | TCP | media po TCP, droga zapasowa gdy UDP jest zablokowane |
|
||||
| 50000-50100 | **UDP** | **glowna droga audio i wideo** |
|
||||
| 7882 | **UDP** | **glowna droga audio i wideo**, jeden port dla wszystkich (mux) |
|
||||
| 49160-49200 | UDP | TURN, dla uczestnikow za restrykcyjnym NAT-em |
|
||||
|
||||
**Zakres UDP jest obowiazkowy.** Bez niego uczestnicy dolacza do pokoju i zobacza
|
||||
**Port UDP jest obowiazkowy.** Bez niego uczestnicy dolacza do pokoju i zobacza
|
||||
liste obecnych, ale nie beda sie slyszec ani widziec. To najczestsza przyczyna
|
||||
zgloszenia "wideo nie dziala" przy poprawnie skonfigurowanym serwerze.
|
||||
|
||||
@@ -705,13 +705,15 @@ IP: za NAT-em Dockera rozdawalby uczestnikom adresy wewnetrzne kontenera.
|
||||
Zebrane przy uruchomieniu profilu na zywo. **Kazda z nich blokuje pierwsze
|
||||
wdrozenie**, a zadna nie daje czytelnego komunikatu.
|
||||
|
||||
**1. Zakres portow UDP musi byc wolny w systemie.**
|
||||
**1. Port UDP musi byc wolny w systemie, a serwer ma pracowac w trybie mux.**
|
||||
Windows rezerwuje zakresy dla Hyper-V i WSL (sprawdzenie:
|
||||
`netsh interface ipv4 show excludedportrange protocol=udp`). Domyslne
|
||||
50000-50100 wpada w rezerwacje 50000-50059 i kontener nie wstaje z bledem
|
||||
"ports are not available". Zmiana `LIVEKIT_UDP_RANGE` w `.env` wystarcza:
|
||||
zakres idzie do serwera zmienna `UDP_PORT` i **musi byc taki sam po obu
|
||||
stronach mapowania portow**, inaczej Docker odrzuca konfiguracje.
|
||||
`netsh interface ipv4 show excludedportrange protocol=udp`); gdy 7882 jest
|
||||
zajety, kontener nie wstaje z bledem "ports are not available". Zmiana
|
||||
`LIVEKIT_UDP_PORT` w `.env` wystarcza: port idzie do serwera zmienna `UDP_PORT`
|
||||
i **musi byc taki sam po obu stronach mapowania portow**.
|
||||
**Nie wracac do zakresu portow** (`port_range_start/end`): serwer rezerwuje
|
||||
wtedy osobny port na kazde polaczenie i przy zakresie 50000-50100 konczyl pule
|
||||
po okolo 50 uczestnikach. Kolejni dostawali juz tylko TCP.
|
||||
|
||||
**2. `use_external_ip: true` nadpisuje `NODE_IP`.**
|
||||
Przy uruchomieniu lokalnym serwer wykrywa publiczny adres lacza i rozglasza go
|
||||
|
||||
Reference in New Issue
Block a user