首先我们应该建立这样的概念,不管是管理接口路由还是TMM路由,最终都表现在了系统底层中,因此F5最终路由查找是查找的linux系统路由表,即通过netstat –nr所看到的。
[root@myf5:Active] config # netstat -nr
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
127.1.1.0 0.0.0.0 255.255.255.248 U 0 0 0 tmm0
10.0.84.0 0.0.0.0 255.255.255.128 U 0 0 0 vlan_901
10.240.130.0 0.0.0.0 255.255.255.0 U 0 0 0 vlan_274
127.0.0.0 - 255.0.0.0 ! - - - -
0.0.0.0 10.0.100.129 0.0.0.0 UG 0 0 0 vlan_930
TMM缺省路由
0.0.0.0 192.168.1.1 0.0.0.0 UG 0 0 0 eth0
MGMT缺省路由
管理缺省路由和TMM缺省路由都可以在netstat –nr中看到,但是TMM缺省路由的metric是0,而管理缺省路由是1,因此TMM缺省路由优先。
[root@myf5:Active] config # ip route show table main
127.1.1.0/29 dev tmm0 proto kernel scope link src 127.1.1.1
10.0.84.0/25 dev vlan_901 proto kernel< span style="mso-spacerun: yes"> scope link src 10.0.84.21
10.240.130.0/24 dev vlan_274 proto kernel scope link src 10.240.130.251
unreachable 127.0.0.0/8 scope host
default via 10.0.100.129 dev vlan_930
default via 192.168.1.1 dev eth0 metric 1
对于F5设备,主要需要维护三类流量
1. 通过F5前交换面板接口的业务流量,不管是目的是F5的还是流经F5的。
2. 目的是F5上地址的管理流量,例如SNMP管理站对F5的query
3. 由F5主动发起的管理类流量,例如syslog或SNMP trap类流量
对于第一种流量,一般数据包均是去往F5TMM交换面板接口的,F5接到数据后查找自己的主路由表(main表,也就是由TMM维护的路由表,也就是我们在route图形界面配置的路由)
对于第二种流量,有两种情况:
a. 是发向F5 TMM交换面板接口的管理流量,F5对这种请求的返回包会从TMM交换面板口返回。
b.
是发向F5 管理口的管理流量,此时F5返包的时候查找缺省路由,由于TMM的缺省路由优先,会导致F5从TMM接口返包,为了避免这个情况,F5中配置了ip rule 245,保证从接口来的包再返包时能确保使用管理口的缺省路由。
对于第三种流量:
F5主动发起的管理类流量,如trap,syslog等,F5将优先使用TMM缺省路由,后使用管理口路由,因此当TMM 接口都无法工作时候,系统会自动转而使用管理接口。但是注意F5不会让monitor等主动发起的流量从管理接口出去(SOL6163)。对于明确需要限制此类流量只通过管理口的话,一个比较好的经验是在管理口配置相关明细路由(当然TMM接口不要有明细覆盖)
查看ip rule
[root@myf5:Active] config # ip rule show
0: from all lookup local
245: from 192.168.1.245 lookup 245
32766: from all lookup main
32767: from all lookup 253
查看主路由表
Ip route show table main
查看245路由表
Ip route show table 245
文章评论