Строка GTK rekeying for WoWLAN в выводе dmesg или journalctl появляется, когда Wi-Fi-чип под управлением Linux получает команду обновить групповой временный ключ (GTK — Group Temporal Key) перед переходом в режим Wake-on-WLAN. Если после этой записи система не просыпается по сети или соединение обрывается во сне — причина почти всегда в том, что драйвер не смог корректно передать новый ключ прошивке адаптера.

Разберём, что скрывается за этой аббревиатурой, почему ротация ключа ломает пробуждение по беспроводной сети и какие безопасные шаги помогут диагностировать и устранить проблему без рискованных вмешательств.

Что такое GTK и зачем нужна его ротация

GTK (Group Temporal Key) — это групповой ключ шифрования в протоколах WPA2/WPA3, которым точка доступа защищает широковещательный (broadcast) и многоадресный (multicast) трафик. В отличие от pairwise-ключа, уникального для каждого клиента, GTK одинаков для всех устройств в сети.

Точка доступа периодически меняет GTK — это называется rekeying или ротация ключа. Интервал задаётся на стороне роутера (например, параметром wpa_group_rekey в hostapd). Когда ключ меняется, точка рассылает клиентам зашифрованное сообщение с новым значением, и каждый клиент обязан его применить, иначе перестанет понимать широковещательный трафик.

💡

GTK — общий ключ сети для broadcast/multicast-трафика; его периодическая смена — штатный механизм безопасности WPA2/WPA3, а не признак неисправности.

Как работает WoWLAN и при чём тут GTK

WoWLAN (Wake-on-Wireless-LAN) — аналог Wake-on-LAN для беспроводных адаптеров: система уходит в сон, а Wi-Fi-чип остаётся на связи и будит компьютер при получении «магического» пакета, разборки соединения или другого настроенного триггера. Проверить поддерживаемые триггеры можно командой:

iw phy | grep -A 10 "WoWLAN support"

Пока система спит, сетевым стеком фактически управляет прошивка адаптера. Перед засыпанием драйвер передаёт ей текущие ключи и параметры соединения. Проблема в том, что спящая система не может участвовать в рукопожатии смены GTK — обычный клиент отвечает на rekey-сообщение сам, а в WoWLAN это должна делать прошивка.

Именно здесь появляется запись GTK rekeying for WoWLAN: драйвер (чаще всего это видно у решений Intel через iwlmvm/iwlwifi, а также у некоторых чипов Qualcomm Atheros) сообщает, что включил или запросил у прошивки механизм автономной смены группового ключа во время сна.

Почему возникают проблемы: типичные сценарии

Сама по себе строка в журнале — информационная, а не ошибка. Тревожиться стоит, если наблюдается один из симптомов:

  • 🔌 Ноутбук не просыпается по WoWLAN, хотя до сна всё работало
  • 📉 После пробуждения Wi-Fi подключен, но сеть недоступна до переподключения
  • 🔄 В логах после строки про rekeying следуют сообщения о разрыве ассоциации или таймаутах прошивки
  • 🌐 Пропадает multicast-трафик (mDNS, обнаружение устройств) после выхода из сна

Возможная причина — несовершенство реализации rekeying в прошивке конкретного чипа: прошивка либо не успевает обработать смену ключа, либо применяет новый GTK с ошибкой, из-за чего точка доступа в итоге деаутентифицирует клиента. Другой вариант — слишком короткий интервал ротации на роутере, при котором смена ключа происходит именно во время сна системы.

⚠️ Внимание: отключение ротации GTK на роутере снижает криптографическую стойкость сети. Это допустимо только как временная диагностическая мера в домашней сети, а не постоянное решение.

Диагностика: что проверить в первую очередь

Прежде чем что-то менять, соберите фактуру. Посмотрите журнал вокруг момента засыпания и пробуждения:

journalctl -b | grep -iE "wowlan|gtk|rekey|iwlwifi"

Далее проверьте, какие триггеры WoWLAN реально активированы:

iw phy0 wowlan show

Полезно также выяснить интервал смены GTK на точке доступа. Если роутер под вашим контролем, найдите в его настройках параметр вида Group Key Update Interval — часто он выставлен в 3600 секунд или меньше. Временно увеличив его, можно проверить гипотезу: если проблемы с WoWLAN исчезнут, значит, дело именно в обработке ротации прошивкой.

☑️ Диагностика GTK rekeying и WoWLAN

Выполнено: 0 / 5

Способы решения проблемы

Начинайте с обратимых и безопасных шагов. Первый — обновить пакет linux-firmware и ядро: исправления в обработке GTK rekeying для WoWLAN регулярно появляются в драйверах iwlwifi и ath10k, и свежая прошивка нередко снимает проблему полностью.

  • ⬆️ Обновите ядро и пакет прошивок штатным пакетным менеджером дистрибутива
  • ⏱️ Увеличьте интервал ротации GTK на роутере до разумного значения вместо полного отключения
  • 🔧 Проверьте параметры модуля драйвера (например, у iwlwifi есть опции управления энергосбережением — их список покажет modinfo iwlwifi)
  • 💤 Если WoWLAN не критичен — отключите его (iw phy0 wowlan disable) и используйте обычный сон без сетевых триггеров

Радикальный вариант — полное отключение ротации GTK на точке доступа — используйте только для подтверждения диагноза. В корпоративной сети такой шаг вообще недопустим без согласования с администратором.

💡

Если после обновления linux-firmware проблема ушла, но вы не уверены, что именно помогло, — сохраните вывод journalctl до и после. Это пригодится при регрессии после очередного обновления.

Сравнение подходов к решению

ПодходСложностьВлияние на безопасностьКогда применять
Обновление ядра и linux-firmwareНизкаяНе влияетВсегда первым шагом
Увеличение интервала rekeyНизкаяМинимальноеДомашняя сеть под вашим контролем
Параметры модуля драйвераСредняяНе влияетЕсли обновление не помогло
Отключение WoWLANНизкаяНе влияетЕсли пробуждение по сети не нужно
Полное отключение rekeyНизкаяСнижает защитуТолько для диагностики
⚠️ Внимание: параметры модулей ядра различаются между версиями драйверов и чипами. Перед изменением сверяйтесь с выводом modinfo для вашей версии и не копируйте чужие конфиги из форумов без проверки.

Когда проблема не в GTK

Стоит помнить, что сбои WoWLAN имеют и другие причины, которые легко спутать с rekeying-проблемой. Нестабильное питание адаптера в глубоком сне, агрессивное энергосбережение PCIe (ASPM), ошибки ACPI-таблиц прошивки материнской платы — всё это даёт похожие симптомы.

Отличительный признак именно GTK-проблемы — регулярность: сбои привязаны к моментам смены ключа и коррелируют с интервалом ротации на роутере. Если сбои хаотичны и не зависят от настроек точки доступа, ищите причину в энергосбережении шины или прошивке платформы.

Техническая деталь для любопытных

В WPA2 смена GTK выполняется через Group Key Handshake — сообщения 1/2 и 2/2 из 4-стороннего рукопожатия. В режиме WoWLAN прошивка адаптера должна сама ответить на сообщение 1/2, пока хост спит. Если прошивка не поддерживает этот offload или делает это с ошибкой, точка доступа после нескольких ретраев деаутентифицирует клиента — и магический пакет до спящей системы уже не дойдёт.

Часто задаваемые вопросы

GTK rekeying for WoWLAN — это ошибка?

Нет, это информационное сообщение драйвера о включении механизма автономной смены группового ключа во время сна. Ошибкой оно становится только в сочетании с реальными симптомами: потерей соединения, отказом пробуждения, деаутентификацией.

Можно ли полностью отключить ротацию GTK?

Технически — да, задав нулевой или очень большой интервал на точке доступа. Но это снижает безопасность сети, поэтому применяйте такой шаг только для диагностики и только в сети, которую контролируете.

Почему проблема проявляется только на одном ноутбуке?

Обработка rekeying во сне выполняется прошивкой конкретного Wi-Fi-чипа. Разные адаптеры и версии прошивок реализуют этот offload с разным качеством, поэтому на одном устройстве всё работает, а на другом — нет.

Поможет ли смена роутера?

Возможно, если текущая точка доступа использует агрессивные настройки ротации или нестандартную реализацию. Но сначала дешевле и проще обновить прошивку адаптера и поэкспериментировать с интервалом rekey.

Как проверить, что WoWLAN вообще работает без учёта GTK?

Отключите WoWLAN, усыпите систему и разбудите вручную — если после пробуждения сеть восстанавливается нормально, базовый стек исправен. Затем включите WoWLAN с триггером magic packet и проверьте пробуждение при коротком сне (до истечения интервала rekey).

💡

Строка GTK rekeying for WoWLAN — нормальное сообщение драйвера. Реальную проблему подтверждают только симптомы: потеря связи во сне или отказ пробуждения. Начинайте с обновления linux-firmware и проверки интервала ротации на роутере.