【技术实现步骤摘要】
通用透明代理方法
本专利技术涉及网络通信
,尤其是涉及一种配置简单,部署便捷,便于二次开发的通用透明代理方法。
技术介绍
传统透明代理方法需要对防火墙进行规则配置如iptables,搭建网桥,用户程序控制,对网络环境十分依赖,后期网络环境变更,则需要重新部署,实施起来十分不便利,并且需要详细了解现场网络拓扑环境;需要根据现场网络拓扑环境,获取相关信息,如Vlanid等;需要配置Vlan号,做bond绑定;不支持多Vlan网络和负载均衡多条线路节点;后期维护成本大。
技术实现思路
本专利技术为了克服现有技术中存在的实施部署不便利,网络环境复杂的不足,提供了一种配置简单,部署便捷,便于二次开发的通用透明代理方法。为了实现上述目的,本专利技术采用了以下技术方案:一种通用透明代理方法,包括IGB网卡驱动模块、数据接收发送模块、Freebsd协议栈和异步网络框架模块;包括如下步骤:(1-1)通过Linux机器连接客户端和服务端,启动Linux系统,自动运行自动化脚本;(1-2) ...
【技术保护点】
1.一种通用透明代理方法,其特征在于,包括IGB网卡驱动模块(1)、数据接收发送模块、Freebsd协议栈(2)和异步网络框架模块(3);包括如下步骤:/n(1-1)通过Linux机器连接客户端(4)和服务端(5),启动Linux系统,自动运行自动化脚本;/n(1-2)配置用户脚本文件,运行用户程序,启动DPDK服务,启动透明代理服务;/n(1-3)数据接收发送模块接收数据包,修改数据包,然后上发Freebsd协议栈;/n(1-4)Freebsd协议栈对修改后的数据包进行处理,然后上发异步网络框架模块;/n(1-5)数据包上发异步网络框架模块后进入用户层(8),进行用户层数据处理。/n
【技术特征摘要】
1.一种通用透明代理方法,其特征在于,包括IGB网卡驱动模块(1)、数据接收发送模块、Freebsd协议栈(2)和异步网络框架模块(3);包括如下步骤:
(1-1)通过Linux机器连接客户端(4)和服务端(5),启动Linux系统,自动运行自动化脚本;
(1-2)配置用户脚本文件,运行用户程序,启动DPDK服务,启动透明代理服务;
(1-3)数据接收发送模块接收数据包,修改数据包,然后上发Freebsd协议栈;
(1-4)Freebsd协议栈对修改后的数据包进行处理,然后上发异步网络框架模块;
(1-5)数据包上发异步网络框架模块后进入用户层(8),进行用户层数据处理。
2.根据权利要求1所述的通用透明代理方法,其特征在于,步骤(1-2)的具体步骤如下:
(2-1)利用脚本config.ini配置网卡信息;
(2-2)利用脚本config.yaml配置透明代理支持的最大连接数,本机代理端口和网卡进出编号;
(2-3)利用serverip.yaml是配置要代理服务器的IP和Port;
(2-4)运行用户程序,启动DPDK服务,启动透明代理服务。
3.根据权利要求2所述的通用透明代理方法,其特征在于,步骤(1-3)的具体步骤如下:
(3-1)数据接收发送模块从IGB网卡驱动模块收到数据包,解析数据包,根据脚本config.yaml配置的网卡进出编号进行判断,
如果接收到的数据包为客户端方向数据,取出目的IP和目的Port字段,转入步骤(3-2);
如果接收到的数据包为服务端方向数据,取出源IP和源Port字段,转入步骤(3-2);
(3-2)将取出的IP和Port字段组成key,进行Hash查找,根据脚本serverip.yaml配置的代理服务器的IP和Port字段过滤数据包,如果key不符合配置的代理服务器的IP和Port字段,数据包进行二层转发,转入步骤(3-1);如果key符合配置的代理服务器的IP和Port字段,转入步骤(3-3);
(3-3)数据包依据SYN和ACK标签判断是否为初次请求,
如果数据包为客户端初次请求,将网卡编号,网卡MAC,源IP,源Port字段,目的IP,目的Port字段,Vlan标签字段存入hash表中,转入步骤(3-4);
如果数据包不是初次请求,转入步骤(3-4);
(...
【专利技术属性】
技术研发人员:贺桂友,柳遵梁,
申请(专利权)人:杭州美创科技有限公司,
类型:发明
国别省市:浙江;33
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。