Сценарий следующий. У меня две машины A и B: A: Клиент (за NAT) B: Сервер (за NAT)
Я хочу, чтобы B мог прослушивать любой порт, чтобы A мог отправлять пакеты B через этот конкретный TCP-порт и получать любой ответ. Если обе машины не поддерживают NAT, это довольно прямой процесс. Однако как я могу заставить его работать так, чтобы он работал, даже если B находится за маршрутизатором, без необходимости менять конфигурацию маршрутизатора, позволяя переадресацию портов и т.д....
Например, как работают одноранговые программы, такие как торрент-клиенты, без того, что у пользователя нет настроек?