初步接触
F5
的网络管理员可能会被
F5
的源地址转换搞迷糊,因为
F5
有多种情况下需要使用源地址转换,而且源地址转换的方法也有几种,本文就简单叙述一下
F5
源地址转换。
需要做源地址转换的情况:
n
内部网络主动发起请求,要求访问外部网络的服务时;
n
单臂部署F5,外部网络主动发起请求,要求访问内部网络的服务时;
两种情况下,源地址转换的配置方法都是一样的。
配置源地址转换
方法一:转换为出口所属
VLAN
的
IP
或者出口所属
VLAN
的浮动
IP
。
配置:定义一个
SNAT
转换项,在转换地址部分选择
Automap
。
转换规则:单机部署,数据包到达
F5
后,
F5
将其源
IP
转换为出口
所属
VLAN
的
IP
。
双机部署,数据包到达
F5
后,
F5
将其源
IP
转换为出口所属
VLAN
的浮动
IP
。
适用情况:内部电脑不多(外出会话数不会超过
65535
),而且外出数据包源地址
转换没有特殊要求的情况。
方法二:转换为特定的
IP
地址或者
IP
地址池。
配置:定义一个
SNAT pool
,然后定义一个
SNAT
转换项,在转换地址部分选择
定义的
SNAT pool
。
转换规则:数据包到达
F5
后,
F5
会从
SNAT pool
里面依次取出一个
IP
,然后将
数据包的源
IP
转换为该
IP
。
适用情况:内部电脑很多(外出会话数会超过
65535
),而且外出数据包源地址转
换没有特殊要求的情况。
方法三:根据特定的源
IP
或者目标
IP
转换为相应的
IP
。
配置:定义一个
iRule
实现地址判断和源
IP
转换,定义一个匹配所有目标的
VS
,
然后引用定义的
iRule
。
转换规则:数据包到达
F5
后,
F5
会检查其源
IP
或
/
和目标
IP
,然后根据
iRule
的
逻辑决定将数据包的源
IP
转换为哪个
IP
。
适用情况:需要根据数据包的来源或
/
和目标
IP
转换数据包的源
IP
,比如多链路时。
rule irule_outbound {
when LB_SELECTED {
if {[IP::remote_addr equals 192.168.1.1] } {
snatpool snat_192.168.1.1
}
elseif {[IP::remote_addr equals 192.168.10.1] } {
snatpool snat_192.168.10.1
}
else {
snat automap
}
}
}
virtual vs_outbound {
destination any:any
persist dest_addr
rule irule_outbound
}
附件:http://down.51cto.com/data/2350251
本文转自zkjian517 51CTO博客,原文链接:http://blog.51cto.com/zoukejian/87712