Назад | Перейти на главную страницу

Доступ к сетевому серверу без переадресации портов

У меня сеть со следующей структурой.

Сервер в ПК2 - это простой сервер сокетов TCP в порту 8080.

Мне нужно получить доступ к ПК2 из другой внешней сети через сокет-клиент. Этот клиент сокета знает общедоступный IP-адрес (85.xxx.xxx.x), частный IP-адрес (192.168.0.21) и порт.

Как я могу получить доступ к ПК2 без переадресации портов на маршрутизаторе?

Если возможно, я хотел бы иметь ссылку на любой язык программирования в этом случае.

Дополнительная информация

Как я могу получить доступ к ПК2 без переадресации портов на маршрутизаторе?

Предполагая, что маршрутизатор NAT (что почти наверняка, учитывая внутреннюю сеть 192.168.0.0/24), вы не можете сделать это без перенаправления портов на маршрутизаторе. Или что-то очень похожее.

Например, если вы можете подключиться к маршрутизатору по SSH, а затем к серверу, вы можете использовать SSH-туннелирование (которое является формой перенаправления портов).

Вы также можете подключить PC2 SSH к общедоступному серверу и сделать доступным туннелируемую конечную точку. (вам может понадобиться что-то вроде netcat или socat, чтобы помочь с этим)

В общем, переадресация портов на маршрутизаторе - это лучший вариант.


Протоколы прохождения NAT

Есть способы включить такой вид связи без ручной настройки переадресации портов, но они обычно полагаются на поддержку маршрутизатора и / или внешнего брокера соединений.

Общее

Конкретный


Я хотел бы иметь ссылку на любой язык программирования в этом случае

Если вы пишете программное обеспечение на обоих концах, вероятно, есть много примеров, которым вы можете следовать.

Например, см.