什么是iRules?
    iRules是F5基于TCL语言的定制脚本扩展模块(可在F5的官方网站上下载iRules Editor,方便阅读与编写),通过这个模块,您可以对F5公司的产品随心所欲地再定义,使得该产品更好地×××。笔者在写这篇文章的时候在网络上针对iRules的用法进行过相关的调查,发现了一个很有意思的例子,现在拿出来和大家分享一下,以便与您能够更好的理解iRules。
在F5的BIG-IP上,可以对每一个服务器的返回结果进行分析,找出其中错误的返回结果,通过BIG-IP将错误的返回结果“修改”为一个正确的结果。
 

比如,正常情况下,用户请求www.365master.com
> www.365master.com
> www.365master.com
Server: UnKnown
Address: 202.106.0.20
Non-authoritative answer:
Name: libra.365master.com
Address: 202.108.33.32
Aliases: www.365master.com,jupiter.365master.com
 

而在错误情况下,用户可能请求的为wwww.365master.com。对于通常的Cache DNS,应当返回一个错误结果:
> wwww.365master.com
Server: UnKnown
Address: 202.106.0.20
*** UnKnown can't find wwww.365master.com.cn.: Non-existent domain
 

通过BIG-IP上的iRules处理,我们可以把返回的结果改写成为:
> www.365master.com
Server: UnKnown
Address: 202.106.0.20
Name: www.365master.com
Server: UnKnown
Address: 202.106.0.20
Name: www.365master.com
Address: 211.111.111. 111
其中,211.111.111.111为运营商指定的Portal站点地址。这样一来,所有的错误请求均会导向到运营商的Portal站点上。如果用户使用浏览器访问网页,则直接将会弹出运营商的页面内容。不言而喻,这样的更改对于电子商务、网站等企业来说无疑可以提高他们的业务访问量。

iRules编程模块怎么用?
    这个问题其实很简单,F5向用户免费提供了iRules Editer,Windows界面,通过这个界面,用户可以调用iRules语言进行相关的编程操作。可能有的朋友会认为编程工作比较复杂,毕竟我们是网络管理者,不是专业的程序员。这方面F5公司已经有所考虑,在设计iRules的时候尽可能将这个可编程控制模块设计得尽量简单,同时,F5针对iRules有一支专门的技术团队,您在使用iRules的时候如果遇到了某些问题,可以通过电话或者网络与F5联系,iRules的相关技术人员会针对相关的问题进行处理,问题解决后,会把相关的脚本放在网上和众多的用户进行共享。

iRules能干什么?
我们首先来看一个案例。
    某电信公司发现某个电话厂商的软件中存在会影响*67匿名主叫服务的缺陷,它阻止了向拥有主叫ID的用户发送姓名和电话号码。当使用此品牌电话的主叫方结束*67通话时,在电话所连接的软交换机上,电话连接和端口仍然处于开启状态,因为它失去了主叫ID。电话交换机最终会将所有端口用于这些未中断的呼叫,从而使得没有可用端口支持新的呼叫。电话厂商估计这项修复工作需要九个月时间,需要花费一百万美元。
    但是,当该电信服务供应商求助于F5的BIG-IP本地流量管理器(LTM)和iRules功能时,F5现场服务工程师只用了一个周末便解决了这个问题。现在,当发起呼叫时,BIG-IP LTM会通过iRules在本地数据库内记录电话发出的ID报头。当主叫方结束呼叫时,BIG-IP再次将主叫ID插入报头,并将其转发至电话的软件交换机,使其知道应该关闭哪个连接。该电信公司还通过iRules以及F5的BIG-IP LTM和BIG-IP广域流量管理器 (GTM)对服务器进行负载均衡,根据地理位置为其SIP流量网关提供故障切换功能。此外,该公司还通过iRules功能提供深层内容检测和代理服务器,对SIP流量流进行管理。
    总的来说,您可以把iRules看作一个有效的编程工具,您可以利用这个编程工具随心所欲地优化您的网络。
 

总结
    实际上,iRules很好地解决了同质化的产品与用户的个性化需求之间的矛盾。在以往,当用户提出个性化需求的时候,往往需要再次花费大量的资金进行二次开发的工作,但是F5的iRules编程模块则很好地解决了这一问题。至于如何更好地利用iRules来满足您的需求,那就要看您如何发挥您的聪明才智了。
(转载:http://www.365master.com/manu/f5/4/2008/1121/38094.shtml 作者赵磊)