Тест серверів STUN / TURN

Перевірте з браузера, чи працюють ваші ICE-сервери і які кандидати вони повертають.

URL сервера

Результат

    ICE-кандидати

    ТипАдресаПротоколЧас

    Що роблять сервери STUN і TURN

    WebRTC забезпечує відеодзвінки, демонстрацію екрана й передавання файлів між браузерами. Перш ніж два пристрої зможуть зв’язатися напряму, кожен має знати, за якою адресою доступний інший. Однак більшість пристроїв перебувають за домашнім роутером або корпоративним брандмауером і використовують приватні адреси, які транслює NAT. Сервери STUN і TURN розв’язують цю проблему:

    • STUN повідомляє пристрою, яким він виглядає з інтернету: його публічну IP-адресу та порт. З цією інформацією два учасники часто можуть з’єднатися напряму.
    • TURN працює як ретранслятор, коли пряме з’єднання неможливе, наприклад за симетричним NAT, суворими брандмауерами або в мережах, що дозволяють лише TCP.

    Запуск тесту

    1. Введіть URL сервера з префіксом stun:, turn: або turns: (наприклад, stun:server.example.com:3478 або turn:server.example.com:3478?transport=tcp).
    2. Для TURN-серверів заповніть ім’я користувача й облікові дані. Якщо ви використовуєте облікові дані з обмеженим терміном дії, переконайтеся, що він не минув.
    3. За потреби додайте інші сервери й запустіть тест. Ваш браузер збирає ICE-кандидатів і показує кожного з типом, адресою, протоколом і часом надходження.

    Якщо у вас немає власного сервера, скористайтеся опцією перевірки наших серверів, щоб побачити, як виглядає робочий результат.

    Як читати типи кандидатів

    Кожен рядок у результаті — це ICE-кандидат. Його значення залежить від типу:

    • host: власна локальна адреса пристрою. Сучасні браузери з міркувань приватності приховують її за випадковим іменем .local.
    • srflx: публічна адреса, яку повідомив STUN-сервер. Якщо ви її бачите, STUN працює.
    • relay: адреса ретранслятора, виділена TURN-сервером. Якщо ви її бачите, TURN і автентифікація працюють.
    • prflx: адреса, виявлена під час перевірок з’єднання; в односторонньому тесті трапляється рідко.

    Стовпець часу показує, через скільки мілісекунд після початку надійшов кожен кандидат. Це дає уявлення про віддаленість і навантаження сервера; час у кілька сотень мілісекунд може помітно сповільнити встановлення дзвінка.

    Типові проблеми

    • Немає кандидата relay: неправильне ім’я користувача чи пароль, невідповідний static-auth-secret на сервері або порт TURN заблокований брандмауером.
    • Працює лише через UDP: для користувачів в обмежених мережах додайте ?transport=tcp або turns: (TLS) на порту 443.
    • turns: не працює, а turn: працює: TLS-сертифікат може бути недійсним, простроченим або не відповідати імені хоста.
    • Неочікувана адреса srflx: за CGNAT або VPN публічна адреса належить вашому провайдеру чи VPN-сервісу.

    Тест повністю виконується у вашому браузері; введені облікові дані використовуються лише браузером для підключення до вказаного вами сервера. Щоб побачити свій публічний IP і стан витоку через WebRTC, відвідайте сторінку Який мій IP. Щоб виміряти реальну втрату пакетів через канал даних WebRTC, спробуйте тест втрати пакетів, а базову затримку перевірте за допомогою пінг-тесту, перш ніж налаштовувати якість дзвінків у власному застосунку.

    Інструменти