Разработчикам
Порт 5000 или 7000 занят на Mac: «Ресивер AirPlay»
Apple указывает TCP-порты 5000 и 7000 для AirPlay. Когда «Ресивер AirPlay» включён, сервер разработки не может использовать эти порты.
Симптомы
- Flask или другой сервер разработки на порту 5000 останавливается с ошибкой “address already in use”.
lsofпоказываетControlCenterна порту 5000 или 7000.curl localhost:5000возвращает ответ, который пришёл не от вашего приложения.
Вероятные причины
- «Ресивер AirPlay». «Ресивер AirPlay» позволяет другим устройствам Apple транслировать контент на Mac. Apple указывает порты 5000 и 7000 для AirPlay.
- Другой сервер. Если процесс — не ControlCenter, порт занимает другое приложение. См. Порт уже занят на Mac.
Как проверить
Найдите процесс на порту 5000.
lsof -nP -iTCP:5000 -sTCP:LISTENВывод Строка с
ControlCenterв столбце COMMAND означает «Ресивер AirPlay».Найдите процесс на порту 7000.
lsof -nP -iTCP:7000 -sTCP:LISTEN
Как исправить
Проще всего перенести сервер разработки на другой порт, например 5001 или 8000.
Чтобы освободить порты, выберите меню Apple > «Системные настройки» > «Основные» > «AirDrop и Handoff». В новых версиях раздел называется «AirDrop и Непрерывность».
Выключите «Ресивер AirPlay».
В macOS 12 настройка находится в «Системные настройки» > «Общий доступ» > «Ресивер AirPlay».
Снова запустите lsof и убедитесь, что порт свободен.
lsof -nP -iTCP:5000 -sTCP:LISTEN
Вопросы
Можно ли оставить «Ресивер AirPlay» включённым?
Да. Запустите сервер на другом порту. Выключать «Ресивер AirPlay» нужно, только если приложению обязательно нужен порт 5000 или 7000.
Почему на Linux сервер работает на порту 5000?
«Ресивер AirPlay» — функция macOS. Другие системы не используют этот порт для неё.
Источники
- Поддержка Apple: TCP- и UDP-порты, используемые программными продуктами Apple
- Поддержка Apple: изменение настроек AirDrop и Непрерывности на Mac
- lsof(8), man-страница из macOS 27.2
Источники проверены 29 октября 2026 г. Man-страницы — те, что установлены вместе с macOS; откройте любую командой man <name> в Терминале.