Что такое netbiosd на самом деле
netbiosd, это фоновый процесс, который входит в macOS и подписан Apple. Его задача, реализовывать NetBIOS, старый уровень сетевого именования, который машины Windows используют уже десятилетиями, чтобы объявлять о себе и находить друг друга в локальной сети.
NetBIOS старше почти всего, что вы считаете современной сетью. Он был создан для эпохи, когда компьютерам в одной офисной сети нужен был простой способ занять короткое, понятное человеку имя и разослать его по сети, чтобы другие могли найти нужную машину по адресу. Windows приняла его, тесно связала с общим доступом к файлам и принтерам, и он стал основой классического просмотра сети в Network Neighborhood.
Apple добавила поддержку этого механизма, потому что Mac давно приходится сосуществовать с сетями Windows. Когда ваш Mac видит ПК Windows в боковой панели Finder, или когда ПК Windows видит ваш Mac при включенном общем доступе к файлам, netbiosd может быть частью того, что обеспечило это знакомство. То же относится и к старым устройствам сетевого хранилища и сетевым принтерам, многие из которых построены вокруг SMB и просмотра в стиле Windows.
Важно точно обозначить границу. netbiosd отвечает за обнаружение и именование в вашей локальной сети: определяет, какая машина отвечает на какое короткое имя, и позволяет устройствам в одной подсети узнавать друг друга. А саму передачу файлов после подключения к общему ресурсу выполняют другие части системы.
Почему macOS брандмауэр спрашивает о нём
Брандмауэр приложений macOS работает по простому принципу: когда программе нужно принимать входящие соединения, macOS спрашивает вас один раз и запоминает ответ. Исходящий трафик не вызывает этот диалог. Его вызывает что-то, что слушает.
netbiosd слушает по замыслу. Объявление имени, это двусторонний разговор: ваш Mac рассылает свое имя и должен быть доступен, когда другая машина спрашивает, кто владеет тем или иным именем. Это значит, что нужен слушающий сокет в локальной сети, а именно такое поведение брандмауэр и призван показывать. Служба имен NetBIOS традиционно использует UDP порт 137, а служба датаграмм UDP порт 138; это стандартные номера, хотя реальное использование зависит от версии macOS и от того, какие службы общего доступа у вас включены.
Именно поэтому netbiosd появляется в этом диалоге гораздо чаще, чем большинство системных процессов. Он не ведет себя неправильно и не изменился. Это один из немногих демонов Apple, чья нормальная работа, быть доступным для других машин в той же сети, и брандмауэр относится ко всем таким процессам одинаково, независимо от того, кто их подписал.
Запрос также часто появляется снова после системных обновлений. Когда бинарный файл заменяют во время обновления, брандмауэр может не распознать его как ту же программу, что видел раньше, и спрашивает снова. Это ожидаемо, а не признак проблемы.
Это вредоносное ПО, и можешь ли ты проверить это сам
netbiosd, это не вредоносное ПО. Это собственный компонент Apple, распространяемый вместе с macOS, и в исправной системе у него есть подпись Apple. Сам факт того, что вы видите его в Activity Monitor или в запросе брандмауэра, не говорит о компрометации.
Верить на слово не нужно. В Activity Monitor выберите процесс и откройте его инспектор, чтобы увидеть полный путь к исполняемому файлу, с которого он запущен: настоящий системный демон находится в системных каталогах, а не в папке Downloads. Если вам удобно работать в Terminal, инструмент codesign с подробной проверкой, указанный на этот путь, покажет издателя подписи; у легитимной копии это Apple. Все, что выдает себя за него из неожиданного места или не проходит проверку, стоит изучить внимательнее.
Важна и вторая часть этого объяснения. netbiosd, это процесс локальной сети, а не интернета. Служба имен NetBIOS основана на широковещательной передаче и ограничена вашей локальной подсетью: она не маршрутизируется через интернет, и маршрутизаторы в обычной работе не выводят этот трафик наружу. Страх, который обычно стоит за таким поиском, что какой-то неизвестный демон тихо отправляет ваши данные куда-то, здесь не применим. Что бы netbiosd ни сообщал, он сообщает это устройствам в вашем доме или офисе.
Это различие важно помнить при любой проверке процессов в macOS: процесс, который слушает в вашей локальной сети, и процесс, который поддерживает постоянное соединение с удаленным сервером, делают совершенно разные вещи и требуют разного уровня внимания.
Стоит ли разрешать или запрещать его работу
Для большинства системных демонов честный совет такой, разрешить и двигаться дальше, потому что отказ ломает то, на что вы рассчитываете. netbiosd, как раз одно из редких исключений, и здесь стоит на минуту задуматься, а не кликать на автомате.
Задайте себе один вопрос: подключаетесь ли вы когда-нибудь к общей папке на Windows PC, к старому NAS или к сетевому принтеру, который полагается на просмотр в стиле Windows? Если ответ нет, а у многих с полностью Apple-домом он именно такой, то отказ netbiosd ничего заметного вам не сто́ит. NetBIOS, это устаревшая технология. Современное обнаружение SMB на платформах Apple опирается на другие механизмы, и в сети без устройств, зависящих от NetBIOS, netbiosd просто не с кем работать.
Если ответ да, будьте внимательнее. Запрет входящих соединений может сломать discovery, то есть тот этап, когда устройства автоматически появляются в боковой панели Finder, или когда Windows-компьютер находит ваш Mac. Часто к общей папке всё равно можно подключиться вручную, по имени или адресу, а не ждать, пока она появится в списке, так что сбой обычно оборачивается неудобством, а не жёсткой блокировкой. Если принтер или NAS внезапно перестал отображаться, это вполне вероятная причина, и отменить решение в настройках брандмауэра легко.
Есть и более чистый вариант, чем спорить с этим запросом. Многое из того, что делает netbiosd, связано с включённым файловым обменом, совместимым с Windows. Если вы включали его однажды ради одной передачи и больше не пользовались, просто выключить его в настройках общего доступа, значит решить проблему у источника.
Что бы вы ни выбрали, делайте это осознанно. Худший вариант, нажать Allow в диалоге, который вы не прочитали, именно так большинство и получает конфигурацию брандмауэра, в которой никто не разбирается.
Большая картина: ваш Mac говорит больше, чем вы можете видеть
netbiosd, это не что-то необычное. Обычный Mac запускает десятки фоновых процессов, которые работают с сетью: одни общаются с Apple, другие объявляют службы локально, третьи поддерживают соединения от имени приложений, которые вы установили и забыли. Запрос брандмауэра показывает только узкую часть, которая хочет принимать входящие соединения. Всё, что уходит наружу, остаётся невидимым, если специально не искать.
Вот эта асимметрия и есть настоящая проблема. Вас прерывают из-за устаревшего демона именования, ограниченного вашей собственной подсетью, а процесс, который тихо поддерживает соединение с удалённым сервером, вообще не вызывает диалог. Activity Monitor показывает, что процесс существует, и примерно сколько байт он передал, но не показывает, к каким доменам он обращался, и не даёт способа остановить его, кроме как завершить.
Именно этот пробел в видимости и должен закрывать NetMute. Он показывает сетевой трафик приложений и процессов в реальном времени с журналированием на уровне доменов, так что вместо имени процесса и счётчика байтов вы видите, куда именно подключается каждое приложение. Его брандмауэр для каждого приложения блокирует что угодно одним кликом, а временные правила сами истекают, чтобы короткая проверка не превращалась молча в постоянную. Профили сети применяют разные правила в зависимости от того, к какой сети Wi-Fi вы подключены, что полезно, когда доверенная домашняя сеть и хотспот в аэропорту требуют разного уровня осторожности.
Смысл не в том, чтобы блокировать больше. Смысл в том, чтобы ответить на вопрос, который привёл вас сюда, что это за процесс и с кем он говорит, без поиска ответа каждый раз, когда появляется новое имя.