讲解关于Radware七层负载功能,基于浏览器类型的负载均衡。
常用的浏览器类型有Firefox\Chrome\IE\Edge\360\UC\QQ\搜狗等等
浏览器内核主要有:
1、Gecko--使用者:Firefox;
2、Trident--使用者:IE,360,QQ;
3、WebKit--使用者:Chrome和safari
很难用关键字来定位是什么浏览器,因为有很多浏览器有相同的关键字,所以一般不会做user-agent SLB,但Alteon是可以做的
下面通过实例演示
需求如下:
server 1处理User-Agent字段包含“Firefox”
Server2处理User-Agent字段包含“Chrome”
实验拓扑:
配置如下:
命令行配置
/c/slb/virt test/service 80 http/cntrules 1/ena/cntclss "1"/group firefox
/c/slb/virt test/service 80 http/cntrules 2/ena/cntclss "2"/group chrome
/c/slb/layer7/slb
/c/slb/layer7/slb/cntclss 1 http
/c/slb/layer7/slb/cntclss 1 http/header 1
header NAME=User-Agent "VALUE=Firefox"
/c/slb/layer7/slb/cntclss 2 http
/c/slb/layer7/slb/cntclss 2 http/header 1
header NAME=User-Agent "VALUE=Chrome"
WebUI配置
1、创建Content Classes
1)进入Configuration>Application Delivery>Traffic Match Crteria>Content Classes;
2)点击“+”进行创建。
2、创建Header的内容类
1)填写Content Class ID;
2)选择Header;
3)点击“+”号创建。
1)填写ID;
2)Header Name Match Type:Include;
3)Header Name:User-Agent;
4)Header Value Match Type:Include;
5)Header Value:Firefox或Chrome。
3、在service下创建rule
1)选择Content Based Rules;
2)点击“+”号创建。
1)启用Content Based Rule
2)填写Rule ID;
3)选择Content Class;
4)Action选择Group;
5)选择Group ID。
测试结果:
在Firefox浏览器上访问10.3.1.120显示界面。
在Chrome浏览器上访问10.3.1.120显示界面。
Alteon会话表在Chrome访问的会话给到了172.10.103.200,在Firefox访问的会话给到了172.10.103.201
Alteon抓包显示
172.10.103.201 HTTP数据包内核Gecko,字段Firefox
172.10.103.200 HTTP数据包内核safari,字段Chrome