У меня есть ноутбук с macOS под управлением Catalina (10.15.7) со встроенным интерфейсом WiFi. У меня есть ноутбук Thinkpad с Ubuntu 20.04 и рабочий стол Windows 11. Я пытаюсь получить доступ к веб-серверу на своем ноутбуке с macOS, но браузер возвращает ERR_CONNECTION_REFUSED. Чтобы копнуть глубже, я открыл Wireshark и заметил, что TCP SYN отправляется на сервер macOS (и принимается там), но пакет SYN/ACK не отправляется обратно.
Чтобы упростить задачу, я запустил простой TCP-сервер с помощью команды на Thinkpad эхо ThinkPad | нк -l 9000
И я выполнил аналогичную команду на MacBook: эхо макбук | нк -l 9000
Затем я подключился к обоим, используя нк
на моем рабочем столе Windows (см. снимок экрана)
Thinkpad под управлением Linux отправляет пакет SYN/ACK, завершает рукопожатие TCP и возвращает строку «thinkpad». Mac никогда не отправляет пакет SYN/ACK. Это происходит для всего, что я могу запустить на нем. Брандмауэр на Mac отключен, VPN отключен, и я даже могу видеть входящие TCP-пакеты на Mac (там тоже работает Wireshark).
Что я могу изменить в MacOS Catalina, чтобы заставить его отправлять пакет SYN/ACK и решить эту проблему?