摘要
机构之间的信息系统对接,有多种成熟的技术方案。
例如交易级别的web service、vpn、专线等方式,文件级别通过ftp协议等。
但是,由于机构内部的安全网络,以及物理位置上的差异,实现信息系统的对接,实际上还需要网络结构上的设计。
1、网络结构
两个机构对接的网络链路为:
机构1<——>机构2
机构1:服务系统1 + 内部网络设备1 + 网关设备1
机构2:服务系统2 + 内部网络设备2 + 网关设备2
2、网关设备的连接
此时要实现对接,第一步是实现机构间的互联,即两个网关设备的连接。
- 实现两个网关设备的连接,对简单直接的方法就是两个设备间用网络线路物理上连接,很显然,如果两地相隔较远,其成本会很多高,是不太现实的。
- 还有呢就是租用三大运营商的网络线路,为两个机构之间实现互联搭建专有线路,只需要支付给运营商相应的费用即可。
- 再就是通过互联网,利用vpn技术搭建机构通信的隧道,也能实现两个机构间的安全通信,但是目前看vpn其实不是很稳定。
- 利用互联网对接的技术还有很多,例如webservice、socket等等,总之方案还是挺多的
3、数据传输链路
机构内部服务设备——防火墙——停火区设备——防火墙——网关设备——互联网络——网关设备——防火墙——停火区设备——防火墙——机构内部服务设备
基于vpn的通信中,一般有两种隧道技术。
通过vpn网关实现机构之间的互联
通过服务转发中间件实现请求的跨网转发
4、nginx
nginx可以通过开启监听端口来实现请求的接收
向nginx发送请求:
http://127.0.0.1:60
nginx转发该请求到127.0.0.2:
location / {
Proxy_pass http://127.0.0.2:61/api;
}
其中nginx可以部署在特定区域,以实现跨网无法直接请求的问题。
5、附网络调试命令
- 检查两台IP之间网络是否联通:
ping 127.0.0.1,用于检测是否具备通信的基础
- 检查端口是否开启监听(发布服务):
netstat -an | grep 20,用于检测当前端口是否发布了服务
- 检测是否可以与对方端口进行通信:
telnet 127.0.0.1 20
- 模拟开启端口监听:
nc -l 20
如果未发布服务,telnet是不通的,但此时并不能证明端口不通,因此可用此命令模拟开启监听
- windows环境查看端口监听:
netstat -ano | findstr :20