Summary

  • В экспериментах Patrick Sattler для RIPE 92 испытанные версии Chrome и Firefox дожидались ответов DNS и для A, и для AAAA. Опоздавшая запись A задерживала страницу при уже доступном IPv6; Firefox в некоторых условиях завершался ошибкой.
  • Safari оказался единственным браузером исследованной группы, применявшим полный механизм Happy Eyeballs v2 с отдельным ожиданием разрешения имени. Для других проверенных клиентов тайм-аут резолвера мог стать временем ожидания пользователя.

Сервер умеет отвечать по IPv6. Браузер получил его адрес. Страница всё ещё висит, потому что не пришёл IPv4-адрес. Patrick Sattler показал на RIPE 92, что механизм выбора быстрого соединения может застрять на выдаче стартовых номеров.

Happy Eyeballs даёт IPv6 фору и добавляет IPv4, если первый путь медленный. Но до подключения нужны ответы DNS. Команда Sattler построила управляемый веб-тест и сервер имён, который по отдельности задерживал A и AAAA. Затем наблюдала браузеры как чёрные ящики. Официальное описание выступления фиксирует расхождения между реализациями.

В проверенных версиях и настройках мая 2026 года Chrome и Firefox отправляли оба запроса и ждали обоих ответов. Отдельный срок ожидания разрешения имени из v2 у них не применялся. Если ответ A задерживался, загрузка следовала за ним; Firefox иногда сообщал об ошибке, хотя AAAA уже был. Safari при быстром AAAA и запаздывающем A запускал IPv6. Если задерживался AAAA, в показанном опыте он ждал около 50 миллисекунд и переходил на IPv4.

Позже начинался ещё один отсчёт: Chrome переключал семейство примерно через 300 миллисекунд, Firefox — через 250. Safari менял задержку динамически. Sattler указал на влияние ОС, прокси и условий сети. Публичная испытательная площадка тогда размещалась только в Мюнхене. Нельзя перенести эти числа на любое последующее обновление без повторной проверки.

Вот почему «медленный IPv6-сайт» может оказаться спором между браузером и DNS. Браузер решает, ждать ли ненужного для успешного соединения ответа A. Резолвер определяет, как долго тот отсутствует. Sattler предложил операторам проверять тайм-ауты; разработчикам клиента принадлежит решение пропускать готовый AAAA к соединению без бесконечной очереди.

Полезная заявка на проблему должна содержать отдельные времена A и AAAA, версию браузера, резолвер, прокси и первую попытку подключения. Зелёная проверка доступности IPv6 не объясняет застывшую вкладку. Sattler нашёл участок, где работающий адрес теряет время.

Источники: официальная стенограмма RIPE 92 · страница доклада · профиль RACI.