TOA插件用于帮助经高防IP转发的源站服务器获取用户真实IP地址。用户数据经过高防IP转发至源站服务器时,用户IP会被高防IP代理IP池中的地址替换,导至源站服务器无法获取真实用户IP地址。在配置转发规则中开启TOA能力后,用户每个TCP会话的初始连接报文TCP选项区内会附加用户真实IP地址及端口,源站服务器收到用户初始连接报文后,若已加载TOA模块或源站服务器为阿里云CentOS/Redhat镜像生成的云主机,源站服务器可以通过解析TOA数据信息,获取到用户真实IP地址。TOA插件下载
TOA插件,支持Centos 6/7、Redhat 6/7,其它linux发行版本可单独定制。我们以TOA源码方式提供给用户。由户上传至源站服务器上自行编译安装。
TOA插件不支持windows源站取源;
TOA插件不支持非TCP业务取源。
TOA插件安装部署:
Ø 上传TOA程序包 20170714_dpdk_hp.zip到源站服务器root目录。
Ø 执行如下命令
yum -y install gcc kernel-headers kernel-devel unzip
cd /root
unzip adtoa_20171124.zip
make
编译成功root下会生成toa.ko文件
如make 过程产生如下错误
make: *** /lib/modules/x.x.x-x.elx.x86_64/build: No such file or directory. Stop.
是因为编译环境缺少linux头文件所至,按下述方法解决
cd /lib/modules/`uname -r`
rm build –rf
ln -s /usr/src/kernels/3.10.0-693.11.1.el7.x86_64 ./build *3.10.0-693.11.1.el7.x86_64为示例中linux系统最新linux源码,实际部署过程建议在输入/usr/src/kernels/ 后按tab键自动补全
cd /root;make 再次编译 编译成功root下会生成toa.ko文件
insmod ./toa.ko
lsmod | grep toa.ko //检测TOA挂载是否成功。
echo “insmod /root/toa.ko” >>/etc/rc.local //开机自动加载 toa插件
TOA插件功能测试:
TOA模块编译成功,并加载后。在源站服务器上执行
python /root/toatest.py
通过高防IP配置页面,为源站服务器8010端口配置一条不负载的TCP转发规则。在外网找台测试机(用户本地也可以),执行命令telnet 高防IP地址 8010
命令执行后,在源站服务器toatest.py运行页面中,将显示出测试用户公网地址,如果显示的地址高防IP设备代理地址,则TOA工作不正常。