У меня есть два клиента, общающихся через webrt c. (Клиент A записан в js, Клиент B в Python с aiort c). Теперь случается так, что Клиент A хочет подключиться из мобильной сети, поэтому ему требуется соединение с ретрансляцией.
Я уже настроил сервер поворотов, который, кажется, выполняет свою работу. Но только приблизительно 50% соединений теперь успешны. Я уже выяснил, когда они преуспевают и когда они терпят неудачу:
Информация ретрансляции SDP в случае успеха:
Предложение клиента A
a=candidate:3 2 UDP 92217086 172.31.16.8 59986 typ relay raddr 172.31.16.8 rport 59986
Ответ клиента B
a=candidate:11 1 UDP 92086015 172.31.16.8 49910 typ relay raddr 172.31.16.8 rport 49910
Информация ретрансляции SDP в случае сбоя:
Предложение клиенту A
a=candidate:7 1 UDP 92151551 172.31.16.8 49871 typ relay raddr 172.31.16.8 rport 49871
Клиент ответа B
a=candidate:5820bb1602563a80c76891a80be14933 1 udp 16777215 18.185.84.96 53279 typ relay raddr 172.31.1.103 rport 49244
Важным отличием является IP-адрес, показанный в ответе от клиента B, в успешном сценарии это IP-адрес net, в котором находится клиент B, в случае сбоя это IP-адрес сервера поворота (18.185. 84.96).
На самом деле я не понимаю, почему он иногда дает IP-адрес сервера, а другой - нет, и что это означает, что IP-адрес сервера не возможно использовать ...
У кого-нибудь есть идеи, с чего начать искать проблему?