Исправление ошибок ICE 1107 и 1020 в BigBlueButton
Дата: 2026-01-10
Проблема: Ошибки ICE 1107 (сбой подключения) и 1020 (медиа не может достичь сервера)
Домен: school.cdto.life
Выявленная проблема
Переменные external_rtp_ip и external_sip_ip были закомментированы в файле /opt/freeswitch/etc/freeswitch/vars.xml, что приводило к тому, что FreeSWITCH не знал внешний IP адрес для RTP трафика. Это критично для работы WebRTC.
Выполненные исправления
1. Раскомментирование переменных FreeSWITCH
Файл: /opt/freeswitch/etc/freeswitch/vars.xml
Переменные external_rtp_ip и external_sip_ip были установлены в значение 89.179.242.240 (внешний IP сервера).
Результат проверки:
external_rtp_ip: 89.179.242.240
external_sip_ip: 89.179.242.240
ext-rtp-ip: $${external_rtp_ip}
ext-sip-ip: $${external_sip_ip}
2. Перезапуск сервисов
- ✅ FreeSWITCH перезапущен
- ✅ bbb-webrtc-sfu перезапущен
- ✅ Все сервисы работают
Текущая конфигурация
FreeSWITCH
external_rtp_ip: 89.179.242.240external_sip_ip: 89.179.242.240ext-rtp-ip: использует переменную$${external_rtp_ip}ext-sip-ip: использует переменную$${external_sip_ip}
mediasoup (bbb-webrtc-sfu)
webrtc.announcedIp: 89.179.242.240webrtc.listenIp: 0.0.0.0plainRtp.announcedIp: 89.179.242.240plainRtp.listenIp: 10.218.14.37 (внутренний IP контейнера)- TURN сервер настроен:
school.cdto.life:3478 - STUN сервер настроен:
stun:school.cdto.life:3478
TURN сервер (coturn)
external-ip: 89.179.242.240relay-ip: 10.218.14.37listening-port: 3478 (UDP/TCP)- Статус: ✅ активен
Порты mediasoup workers
- Диапазон портов WebRTC: 24577-32768 (UDP)
- Порты открываются динамически при создании медиа-транспортов
Важные замечания
Порты на роутере
Для работы WebRTC необходимо пробросить следующие порты на роутере:
- 3478 (UDP/TCP) - TURN/STUN сервер
- 24577-32768 (UDP) - WebRTC медиа-порты (mediasoup workers)
- 80, 443 (TCP) - HTTP/HTTPS
Проверка доступности портов:
- Порты должны быть проброшены на внешний IP 89.179.242.240
- Проверьте конфигурацию роутера/файрвола
Возможные причины ошибок ICE 1107 и 1020
- Порты WebRTC не проброшены на роутере - медиа не может достичь сервера
- NAT traversal проблемы - клиенты не могут установить прямое соединение
- TURN сервер недоступен извне - порт 3478 должен быть доступен из интернета
- Firewall блокирует трафик - проверьте настройки файрвола
Настройка проброса портов на хосте
✅ Выполнено: Настроен проброс UDP портов с хоста (192.168.1.112) в контейнер (10.218.14.37)
Настроенные правила iptables
- TURN/STUN порт (3478):
- UDP 3478 → 10.218.14.37:3478
-
TCP 3478 → 10.218.14.37:3478
-
WebRTC порты (16384-32768):
-
UDP 16384-32768 → 10.218.14.37
-
Forwarding правила:
- Разрешена пересылка трафика для всех настроенных портов
Скрипт для настройки: /home/cdto/DENKART/scripts/setup-bbb-udp-forwarding.sh
Следующие шаги
- ✅ Исправлена конфигурация FreeSWITCH
- ✅ Сервисы перезапущены
- ✅ Настроен проброс портов на хосте через iptables
- ✅ Порты проброшены на роутере (проверено пользователем):
- WebRTC: 16384-32768 UDP → 192.168.1.112
- HTTP: 80 TCP/UDP → 192.168.1.112
- HTTPS: 443 TCP/UDP → 192.168.1.112
- TURN-STUN: 3478 TCP/UDP → 192.168.1.112
- ⏳ Тестирование соединения - попробуйте подключиться к конференции и проверить работу видео/аудио
- ⏳ Проверка логов - следите за логами на наличие ошибок:
bash lxc exec BBB-CONT22-1 -- journalctl -u bbb-webrtc-sfu -f lxc exec BBB-CONT22-1 -- tail -f /var/log/turnserver/turnserver.log
Сохранение правил iptables
Для сохранения правил после перезагрузки:
sudo apt install iptables-persistent
sudo netfilter-persistent save
Диагностика
Проверка конфигурации
# Проверка переменных FreeSWITCH
lxc exec BBB-CONT22-1 -- bbb-conf --check | grep -E "external_rtp_ip|external_sip_ip"
# Проверка конфигурации mediasoup
lxc exec BBB-CONT22-1 -- cat /etc/bigbluebutton/bbb-webrtc-sfu/production.yml
# Проверка TURN сервера
lxc exec BBB-CONT22-1 -- cat /etc/turnserver.conf | grep -E "external-ip|relay-ip"
Проверка портов
# Проверка TURN сервера
lxc exec BBB-CONT22-1 -- ss -tuln | grep 3478
# Проверка медиа-портов (открываются динамически)
lxc exec BBB-CONT22-1 -- ss -tuln | grep -E "24577|32768"
Связанные документы
/home/cdto/DENKART/docs/operations/bbb-ice-1010-complete-fix.md- Полное исправление ICE 1010/home/cdto/DENKART/docs/troubleshooting/TURN-CONFIGURATION-COMPLETE.md- Конфигурация TURN сервера/home/cdto/DENKART/docs/setup/router-port-forwarding.md- Настройка проброса портов на роутере