无公网 IP,如何通过外网访问内网?

2017-03-06 12:40:00 +08:00
 Lpl

描述:现有内网 ServerA ,没有公网 IP 。有一客户端 ClientA ,在外网中。

目的:ClientA 能够通过 ssh 链接 ServerA 里边的任意一台机器。

问题:如何使得 ClientA 能够访问 ServerA ?

设想的方案:

昨天借用搜索引擎查了下,有如下解决方案:

  1. 在公网租一台服务器作为 VPN ;
  2. 让 ServerA 的路由器连接 VPN ;
  3. 让 ClientA 连接 VPN
  4. 此时, ServerA 和 ClientA 就算是打通了,然后配置路由表

不知道上边的方案是否可行..如果可行的话,有没有稍微具体一点的细节?

我对计算机网络的知识欠缺的有点多,如果有能指教的,不胜感激

3976 次点击
所在节点    问与答
23 条回复
jacy
2017-03-06 12:44:46 +08:00
用一台 vps , ssh 反向隧道
DuckJK
2017-03-06 12:47:38 +08:00
serverA : ssh -R 8000:serverA:80 sshserver -CNfg

然后 clientA 访问 sshserver:8000
Lpl
2017-03-06 12:50:52 +08:00
@jacy ClientA 有很多个,并且一般情况下是在局域网中。我想着是, Client 通过连接 VPN ,然后打通内网 ServerA 。我查了下,貌似反向隧道不能实现这种情况吧?
tookbra
2017-03-06 13:08:22 +08:00
ngork
tookbra
2017-03-06 13:08:52 +08:00
额,是 ngrok
xiaoz
2017-03-06 13:09:58 +08:00
ngrok 是比较好的,若不想折腾可以用花生壳内网版。
Lpl
2017-03-06 13:25:04 +08:00
@DuckJK 没公网的情况下是没有 80 端口的吧..另外,想请问一下,我在 ServerA 的路由表配置下一跳的地址是 VPN Server ,然后 ClientA 链接 VPN Server ,那么 ClientA 的 ip 地址是不是就是 VPN 的局域网地址了?
Lpl
2017-03-06 13:25:38 +08:00
@tookbra
@xiaoz 花生壳估计是不行..我先了解下 ngrok 看看
changwei
2017-03-06 13:32:26 +08:00
@Lpl 为什么花生壳不行?花生壳内网版亲测有用,只是流量有限制。
chztv
2017-03-06 13:39:13 +08:00
ngrok 方案不错,花生壳内网版有流量及速度限制,这点钱自己租个 VPS ,日本 2.5 刀或者 5 刀的,速度基本上可以接受了。
当然阿里云是速度最好的方案。
benjaminliangcom
2017-03-06 13:39:26 +08:00
ngrok 感觉比花生壳好用
truecho
2017-03-06 13:42:58 +08:00
ngrok
acrisliu
2017-03-06 13:50:46 +08:00
ShylockGou
2017-03-06 14:07:48 +08:00
1.ssh -L
2.n2n
anubu
2017-03-06 14:25:57 +08:00
最近也在找此类工具,收集了几个关键词楼主可以参考, ssh 、 n2n 、 frp 、 ngrok
基本上应该都需要一个公网节点来交换信息
比较关注是否夸平台、是否方便部署、是否支持 udp 打洞(即是否所有流量都要经过中心节点,当然这个更受网络环境影响)
似乎没有此类工具的详细讨论,自己玩的话,一个一个试试看了
yuhaaitao
2017-03-06 15:52:02 +08:00
@anubu frp 好用不?啥时候做个评测?
Lpl
2017-03-06 17:05:03 +08:00
@acrisliu
@anubu
@truecho
@chztv 我先简单了解下 ngrok 和 frp ,看看怎么用
JiaFeiX
2017-03-06 17:26:05 +08:00
natapp 搜索这个
hanqi7012
2017-03-06 17:26:24 +08:00
昨天看了 frp 感觉挺强力的唉
ngork 新版不是不开源了么?
geeklian
2017-03-06 18:03:00 +08:00
买个 vps ,部署 openvpn
vps 做 vpn server
server 和 vps 之间做 openvpn site to site...
client 和 vps 之间就是普通的 vpn 连接。
client 和 server 各自所在内网的子网不一样,就 ok 啦。
client 可以访问 server 所在内网任何机器。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/345268

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX