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