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

Grants-MacBook-Pro:sbin grantseward$ sudo lsof -i -n -P | grep 4001
Password:
java        113    grantseward   52u  IPv6 0x3465d3725017ec8d      0t0  TCP *:4001 (LISTEN)

Но как только я запускаю второе приложение, оно, похоже, первоначально отправляет запросы на порт 4001, но затем они перенаправляются на 49509, и этот порт закрывается / не то, что слушает мое другое приложение (второй порт также меняется каждый раз, когда я останавливаюсь и запустите второе приложение, чтобы я не мог просто поменять место прослушивания).

Grants-MacBook-Pro:sbin grantseward$ sudo lsof -i -n -P | grep 4001
java        113    grantseward   52u  IPv6 0x3465d3725017ec8d      0t0  TCP *:4001 (LISTEN)
java        113    grantseward   59u  IPv6 0x3465d3725f0a988d      0t0  TCP 127.0.0.1:4001->127.0.0.1:49505 (CLOSE_WAIT)
java        121    grantseward   80u  IPv6 0x3465d3726032d38d      0t0  TCP 127.0.0.1:49506->127.0.0.1:4001 (ESTABLISHED)

Любые идеи, как я могу изменить правила, чтобы запросы, отправленные на 4001, в конечном итоге на 4001?

1 ответ1

0

То, что вы видите, нормально; дело не в том, что соединение перенаправляется на порт 49505, а в том, что клиентская программа, работающая на порте 49505, подключается к службе через порт 4001. Сеанс TCP определяется IP-адресом и номерами портов двух концов соединения; в этом случае у вас есть сеанс между 127.0.0.1:4001 (идентификатор процесса 113, программа сервера) и 127.0.0.1:49505 (идентификатор процесса 121, программа клиента).

Кстати, каждый раз, когда вы перезапускаете клиент (или клиент открывает новое соединение), ему обычно назначается новый порт источника (вместо 49505).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .