Как данные могут поступать в мою сеть, если входящие порты закрыты?

#tcp #port

Вопрос:

На моем маршрутизаторе домашней сети все входящие порты закрыты. Как возможно, чтобы данные поступали в мою домашнюю сеть? Например, когда я делаю HTTP-запрос, через какие входящие порты поступают пакеты HTTP — ответов?

Ответ №1:

«Входящие порты закрыты» означает, что попытки подключения извне не принимаются. Если соединения инициируются изнутри, то состояние соединения поддерживается, и если входящие пакеты соответствуют этому состоянию, они пропускаются.

Комментарии:

1. Я не могу понять, какие порты используют входящие пакеты.

2. @Никола: Соединение по HTTP использует случайный исходный порт в локальной системе (я беру 54321 в качестве примера здесь) и подключается к определенному порту на сервере (например, 443 для HTTPS). Будет создано состояние, которое позволит возвращать ответные пакеты, т. е. пакеты, исходящие из порта 443 на сервере и нацеленные на порт 54321 в локальной системе. По крайней мере, это основная идея. С TCP больше вещей, чем просто номер порта, являются частью состояния, в частности порядковые номера.

3. Спасибо, я все понял!