怎样把外网转成内网?
Serv-U是现今Windows下最流行、功能最强大、使用最简单的FTP服务器软件之一,同时也是目前国内应用最多的FTP服务器软件。Serv-U除了拥有其他同类软件所具备的几乎全部功能外,还支持断点续传、支持带宽限制、支持远程管理、支持虚拟主机等。
大概有三种方式:
1、使用网闸的映射功能:即在网闸中配置指定ip段的外网机器,只能访问内网指定ip、端口的机器所提供的指定服务。
评价:此种方式较为方便,但不是最安全的。
2、文件同步功能:此种方式需要一台外网服务器和一台内网服务器,在内外网服务器上分别部署webservice服务程序,并在内外网机器上分别建立共享文件夹,供网闸进行文件的同步(从内网到外网,从外网到内网)。
实现思路大致是:
(1)、外网服务器部署的webservice程序供外网用户访问,一旦接受请求,则将请求生成xml或者其他格式文件,放到外网服务器的共享请求目录。
(2)、通过在网闸中配置内外网的共享请求目录与共享响应目录,网闸会定时(最低一分钟)扫描内外网服务器的指定的若干目录,看有无新增文件,有则同步过去。
(3)、内网服务器webservice程序内部定时扫描指定请求目录,网闸将外网服务器的请求文件同步到内网服务器的请求目录后,内网程序检测到请求文件则立即触发调用本地或者内网其他机器的webservice服务,并将结果生成响应文件放到响应目录。 (4)、网闸检测响应目录的新增文件,将文件同步到外网服务器的响应目录,外网服务器程序线程接受到请求后, 一直等待指定时间,扫描响应目录下有无响应文件产生(请求文件与响应文件采取同名方式,以便区分),读取到响应文件后,返回给外网用户调用者。
评价:此种方式虽然较上种方式安全,但网闸扫描频率最快一分钟扫描一次的限制便将该种方式kill了(让客户等待至少2分钟是完全不可行的)。
然而对于新的网闸内外网数据交换平台可以支持1s扫描一次,因此对于需要交换图片、视频等应用,则可考虑升级旧网闸数据交换系统;此时采取文件同步是比较理想的。
3、数据库同步方式:
实现思路:
(1)、需要两台服务器,内网服务器与外网服务器,两台机器同时部署两个程序(程序不完全相同),两台服务器都要安装数据库,并建立相同的表结构(指需要通过网闸同步的表的结构相同,本例中需要响应表和请求表)
(2)、在网闸中配置数据库同步,需要两个库的连接方式,及需要同步那些表;注意,同步的表字段不可有clob或者blob等类型(网闸不能同步,猜测是大字段类型不能导出的原因),基本类型最好。 (3)、外网webservice程序接收请求,将请求插入到请求表中,然后线程休眠指定时间后读取响应表中的响应结果。
(4)、网闸将外网数据库的请求表中的插入的数据,即时(可能采用触发器,具体不知,相当于即时)同步到内网数据库的请求表中。 (5)、对内网请求表预先建立行级触发器,当请求表每插入一条数据时,即执行触发器,在触发器中调用内网的webservice程序。
(6)、可在触发器中插入结果到响应表中,若是业务逻辑复杂,则可在webservice程序内部将结果插入到响应表中。
(7)、网闸将响应表中数据即时同步到外网服务器的响应表中。
(8)、(3) 中等待的线程在限定时间内每隔100ms(自己指定)查询响应表,查询到等待的结果则返回给客户。
4、总结:映射方式与数据库同步方式最为靠谱,但若是对安全性要求非常高,则建议使用数据库同步方式,否则使用映射方式最为便捷。
Copyright © 广州京杭网络科技有限公司 2005-2024 版权所有 粤ICP备16019765号
广州京杭网络科技有限公司 版权所有