Баг macOS блокирует новые сетевые соединения после 49 дней работы

В macOS обнаружена ошибка на уровне ядра, из-за которой система перестает устанавливать новые сетевые соединения после примерно 49 дней непрерывной работы устройства.

Проблема связана с переполнением 32-битного целочисленного счетчика в ядре XNU. Этот счетчик используется в TCP/IP-стеке для отслеживания времени в миллисекундах с момента загрузки системы. Максимальное значение такого счетчика составляет 4 294 967 295, что соответствует примерно 49 дням, 17 часам, 2 минутам и 47 секундам.

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

Это приводит к тому, что закрытые соединения не удаляются. Они остаются в состоянии TIME_WAIT и продолжают занимать временные порты. Со временем все доступные порты исчерпываются, и стек TCP/IP перестает принимать новые подключения.

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

Исследователи из Photon воспроизвели проблему в контролируемых условиях. При достижении порога в 49,7 дня системы стабильно переставали инициировать новые подключения без каких-либо сообщений об ошибке.

На данный момент Apple не выпустила исправление. Единственный способ восстановить работоспособность сети это перезагрузить устройство. Однако это временное решение: после следующего непрерывного периода в 49 дней проблема повторяется.

Источник: TechSpot

Похожие статьи

Рекомендательные технологии Подробнее
Технологии и IT-новости 6 месяцев назад

Новая пленка из "супраболлов" улавливает почти весь спектр солнечного света

Новая разработка учёных (пленка из плазмонных супраболлов) способна поглощать до 90 % солнечного спектра, значительно повышая эффективность солнечных термоэлектрических систем. Эта технология обещает удвоить энергоотдачу по сравнению с традиционными покрытиями.

Технологии и IT-новости 8 месяцев назад

Бывшие инженеры ASML помогли Китаю создать прототип EUV-машины для ИИ-чипов

Китайские разработчики при участии бывших инженеров ASML создали экспериментальный прототип EUV-установки, ключевой машины для производства самых современных чипов. Проект, который сравнивают с "Манхэттенским", стал ответом на западные санкции и попыткой сократить технологический разрыв в области ИИ-чипов

Технологии и IT-новости 2 месяца назад

Релиз ядра Linux 7.1: что нового

Linux Kernel 7.1 стал очередным крупным обновлением ядра Linux. В релиз вошли новый драйвер NTFS с поддержкой записи, улучшения поддержки оборудования AMD и Intel, а также многочисленные оптимизации файловых систем и драйверов.