首页 新闻 会员 周边 捐助

外层网络中的服务器如何直接访问内层网络中的服务器

0
悬赏园豆:20 [已解决问题] 解决于 2015-04-02 14:21

如下图所示,在无法访问互联网以及无法对路由器A和路由器B进行配置的情况下。服务器A如何可以连接服务器B的SQL数据库?路由器B做了单向访问限制,只允内层网络访问外层网络。

 

问题补充:

我有一个思路,是否可以借助一款软件由服务器B向服务器A发起连接建立一条数据隧道。再由服务器A通过这条数据隧道访问服务器B的SQL数据库?

波→ONLINE的主页 波→ONLINE | 初学一级 | 园豆:38
提问于:2015-04-01 15:46
< >
分享
最佳答案
0

找到办法了,可以通过 SSH 进行反向连接,具体可以参考下面这篇文章:

http://tilt.lib.tsinghua.edu.cn/node/755

波→ONLINE | 初学一级 |园豆:38 | 2015-04-02 14:19
其他回答(4)
0

在服务器A上写一条路由规则试试:

route add 192.168.1.0 mask 255.255.255.0 192.168.0.3 metric 2 
收获园豆:8
dudu | 园豆:30948 (高人七级) | 2015-04-01 15:57

感谢 dudu 的回复。有一个很重要的东西我忘了说了。路由器B做了单向访问限制,只允内层网络访问外层网络。所以在服务器A上写一条路由规则可能行不通。

支持(0) 反对(0) 波→ONLINE | 园豆:38 (初学一级) | 2015-04-01 16:33

@波→ONLINE: 试试通过VPN隧道进行通讯,在服务器A上搭建VPN服务器,在服务器B上建立VPN连接到服务器A。

支持(0) 反对(0) dudu | 园豆:30948 (高人七级) | 2015-04-01 16:39
0

只能VPN了, 其它没办法

收获园豆:1
问天何必 | 园豆:3311 (老鸟四级) | 2015-04-01 16:59
0

你需要两个 SOCKET 服务,一个部署在 A 上,一个部署在 B 上。

在 Server A 上启动一个监听服务,Server B 启动后主动连接 Server A,然后 A 服务器上的应用通过进程内通信方式(比如命名管道)将 SQL 请求打包发送给 Server B,Server B 将请求解析后发送给 SQL Server ,然后将 SQL Server 处理的结果再打包发送给 Server A。

收获园豆:8
Launcher | 园豆:45050 (高人七级) | 2015-04-01 17:36
0

在路由器B上如果可以操作   加一条访问控制 只允许A访问B

收获园豆:3
雨水+ | 园豆:205 (菜鸟二级) | 2015-04-02 14:02
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册