Я новичок в нетворкинге. Извините, если я сделаю какие-то ошибки.
Есть ли способ связаться с частным IP-адресом через NAT? Я не хочу использовать переадресацию портов, обращаясь к маршрутизатору. Есть ли какой-либо код или другой метод или протокол для этого? Является ли частный VPN относительным термином? Пожалуйста, объясните.
решение1
Если вы не можете получить доступ к устройству напрямую через NAT (переадресацию портов), то вам либо необходимо подключить VPN к граничному устройству (некоторые маршрутизаторы поддерживают VPN напрямую), либо вам необходимо получить доступ через внешний хост или службу.
VPN
Существует множество форм VPN, и вы полностью ограничены тем, что доступно на пограничном маршрутизаторе. Коммерческие маршрутизаторы, даже на низком уровне, будут предлагать различные способы подключения, включая IPSec VPN и VPN на основе SSL.
Внешняя служба
Для машин Windows у вас есть такие службы, как Logmein или Chrome Remote Desktop. Они работают, когда ваша машина регистрируется во внешней службе с исходящим соединением, и это исходящее соединение используется для входящего сеанса удаленного доступа.
Внешний Хост
Это может хорошо работать с устройствами Linux / Unix, где все, что требуется, — это оболочка (хотя, как только у вас есть оболочка, вы можете так же легко туннелировать X Windows).
Примером доступа к частному хосту через внешний хост может служить создание частным устройством исходящего SSH-подключения к серверу, который выможетдоступ, а затем создать удаленный переадресованный порт. На клиенте вы бы сделали что-то вроде:
ssh -R2222:localhost:22 external.server.com
Это создает порт 2222 на external.server.com, который при подключении будет пересылать любые пакеты на порт 22 на частной машине. Так что если вы затем сделаете это на external.server.com:
ssh localhost:2222
Вас подключат к частной машине.