Рейтинг:0

Может кто-нибудь объяснить, что это за увеличивающиеся порты после 127.0.0.1:XXXXXX?

флаг bg

Я наткнулся на странно выглядящий увеличивающийся номер порта сразу после моего петлевого IP-адреса при использовании сервера разработки PHP, с которым я не знаком и не могу найти информацию об этом в Интернете.

$ php -S 127.0.0.1:3000 который регистрирует такие запросы:

[Вт, 17 августа, 16:18:19 2021] 127.0.0.1:65533 [200]: GET /
[Вт, 17 августа, 16:18:19 2021] 127.0.0.1:65533 Закрытие
[Вт, 17 августа, 16:18:19 2021] 127.0.0.1:49152 Принято
[Вт, 17 августа, 16:18:19 2021] 127.0.0.1:65534 [200]: GET /
[Вт, 17 августа, 16:18:19 2021] 127.0.0.1:65534 Закрытие
[Вт, 17 августа, 16:18:19 2021] 127.0.0.1:65535 Принято
[Вт, 17 августа, 16:18:19 2021] 127.0.0.1:49152 [200]: GET /
[Вт, 17 августа, 16:18:19 2021] 127.0.0.1:49152 Закрытие
[Вт, 17 августа, 16:18:19 2021] 127.0.0.1:49153 Принято

Сначала я подумал, что этот увеличивающийся порт представляет собой номер строки в скрытом файле журнала, который я безуспешно пытался найти — можете называть меня глупым;)

Затем, после попытки переполнить этот счетчик, отправив спам с помощью Привет я заметил, что он переполняется на 65535, что говорит мне, что это какое-то 16-битное целое число.

Можете ли вы объяснить мне, что означает этот номер порта / почему php показывает мне этот номер в первую очередь? - У меня есть опыт работы с JavaScript Frontend, поэтому я совершенно не знаком с тем, как работает эта магия TCP, и никогда не видел ее в журналах приложений Express/Fastify.

djdomi avatar
флаг za
есть ли у вас какие-либо проблемы или что вы действительно хотите знать?
wavedeck avatar
флаг bg
у меня нет проблем с этим - мне просто любопытно, к чему относится этот номер за IP-адресом ^^, так как я пришел из внешнего интерфейса и хочу сделать больше в бэкэнде, я хочу понять, как серверы взаимодействуют с клиентами и этот номер, например, "49153", кажется важным
djdomi avatar
флаг za
Клиентские порты могут быть разными, в этом нет ничего необычного.
tilleyc avatar
флаг us
Это номер порта. TCP-связь идет от порта к порту — исходящие соединения выходят из порта, К порту, в котором они должны взаимодействовать. То, что вы видите, — это исходящий порт. Это может быть случайным, поэтому оно варьируется. Это важно для отладки/устранения неполадок, чтобы вы могли точно видеть запросы и то, откуда они поступают.
Рейтинг:2
флаг bd

Можете ли вы объяснить мне, что означает этот номер порта?

Если вы немного знакомы с TCP/IP, вы знаете, что компьютеры называются по их IP-адресам. Теперь, когда приходит пакет, как компьютер узнает, какой программе следует переслать пакет? Тут на помощь приходят порты.

Порты варьируются от 1 до 65535 и делятся на три категории:

  • Хорошо известно 0-1023 (80 -> HTTP, 443 -> HTTPS, 53 -> DNS, и т.д...)
  • Зарегистрирован 1024-49151 (1194 -> OpenVPN, 2195 -> Apple push-уведомления, и т.д...)
  • Динамический/частный 49152–65535

Если вы используете службу, например веб-сервер, вы будете прослушивать хорошо известные порты 80 и/или 443. Таким образом, у всех пользователей будет стандартный способ доступа к вашей службе.

Если вы пользователь и переходите к google.com, ваша операционная система выберет порт из динамического/частного диапазона для использования в качестве исходного порта при обмене данными с веб-сервером Google. Этот порт не обязательно должен быть хорошо известен или зарегистрирован, так как клиент инициирует соединение и сообщает веб-серверу, через какой порт они должны взаимодействовать. Когда Google отправит свой ответ, они отправят свой TCP/IP-пакет на порт, используемый клиентом, таким образом, ОС клиента будет знать, что этот пакет нужно перенаправить на нужную вкладку браузера.

почему php показывает мне этот номер в первую очередь?

Просмотр номеров клиентских портов может быть полезным и информативным во многих случаях.

Допустим, есть еще одна служба, которая запрашивает ваш веб-сервер, и этот сервер работает на порту 5000. Вы можете найти в своих журналах клиентский порт 5000, чтобы увидеть журналы запросов только от этой службы.

Или, если кто-то сканирует ваш веб-сайт, обычно он использует инструмент, который запускает несколько потоков, причем каждый поток имеет уникальный порт. Когда вы посмотрите на свои журналы, вы увидите интенсивный трафик с одного и того же IP-адреса, но с нескольких портов, это очевидный показатель того, что вас сканируют с помощью какого-то инструмента.

Ответить или комментировать

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