四层节点配置proxy protocol传送真实ip教程

来自cdnbest帮助文档
跳转至: 导航搜索

配置4层节点传送真实ip

代理协议(Proxy protocol),是HAProxy的作者Willy Tarreau于2010年开发和设计的一个Internet协议,通过为tcp添加一个很小的头信息,来方便的传递客户端信息(协议栈、源IP、目的IP、源端口、目的端口等),在网络情况复杂又需要获取用户真实IP时非常有用

注:本示例cdn节点和源web都是以kangle架设为例

一. 4层cdn节点设置
1.在左下角的配置里,点新加侦听,设置端口,协议选tcp
Proxy1.png

2.查看右边是否成功侦听
Proxy2.png

3.点扩展添加配置,下图中的ip为源服务器ip,协议用proxy,端口写源服务器中设置好的
Proxy3.png

4.在请求控制--》右边点击插入--》在匹配模块中选择self_port模块,输入刚才在配置中添加的68端口,目前选择刚才添加的扩展服务器
Proxy4.png


以上cdn节点的配置也可以在cdnbest的自定义配置里添加
下面的代码有添加注释,加到区域自定义配置时把注释去掉,并修改相应的参数

<!--#start 200 -->
<config>
<listen ip='*' port='68' type='tcp' />          //此代码对应上图第一点在配置里添加侦听端口
<server name='68' proto='proxy' host='192.168.1.10' port='68' life_time='0' />        //此代码对应上图第3点的扩展添加
<request action='vhs' >
         <table name='BEGIN'>
                <chain  action='server:68' >                    
                      <acl_self_port >68</acl_self_port>           //对应第4点请求控制添加self_port模块
                 </chain>
         </table>
</request>
</config>

详细区域自定义配置参考:区域配置教程



二. 源服务器端配置(本例源以kangle web为例,其他web请搜索相关的文档)

1.在源服务器中添加68P端口,注:端口后面要加P,并且要大写,协议选择http, 网站的访问端口要对应好68
Proxy5.png

2.在请求控制--》标记模块中添加replace_ip模块,不要写任何内容
Proxy6.png

3.通过phpinfo访问测试,ip已经显示了用户访问真实ip
Proxy7.png