我是网络新手。如有错误,请多包涵。
有没有方法可以在 NAT 下与私有 IP 地址通信?我不想通过访问路由器来使用端口转发。是否有任何代码或其他方法或协议可以做到这一点?私有 VPN 是一个相对术语吗?请详细说明。
答案1
如果您无法通过 NAT(端口转发)直接访问设备,那么您要么需要 VPN 到边界设备 - 某些路由器直接支持 VPN,要么您需要通过外部主机或服务访问。
VPN
VPN 有很多种形式,而您完全受限于边界路由器上可用的功能。商用路由器,即使是低端路由器,也会提供多种连接方式,包括 IPSec VPN 和基于 SSL 的 VPN。
外部服务
对于 Windows 计算机,您可以使用 Logmein 或 Chrome 远程桌面等服务。这些服务的工作原理是您的计算机通过出站连接向外部服务注册,并且该出站连接用于传入的远程访问会话。
外部主机
这可以很好地与 linux / unix 设备配合使用,因为所需的只是一个 shell(尽管一旦您有了 shell,您就可以同样轻松地通过隧道传输 X Windows)。
通过外部主机访问私有主机的一个示例是让私有设备创建到您能访问,然后创建远程端口转发。在客户端,您可以执行以下操作:
ssh -R2222:localhost:22 external.server.com
这会在 external.server.com 上创建端口 2222,当连接到该端口时,它会将所有数据包转发到私有计算机上的端口 22。因此,如果您在 external.server.com 上执行此操作:
ssh localhost:2222
您将连接到私人机器。