For more information regarding the security incident at F5, the actions we are taking to address it, and our ongoing efforts to protect our customers, click here.

Forum Discussion

rmd1023's avatar
rmd1023
Icon for Nimbostratus rankNimbostratus
Aug 31, 2012

split brain GTM

I have a pair of GTMs that operate as a sync group, two HA pairs of LTMs, and four virtual servers - two on each set of LTMs so LTM-A has a virtual server for service MyWebSrv and one for MyOtherWebSrv, and LTM-B has a backup virtual server for service MyWebSrv and one for MyOtherWebSrv that can become active if LTM-A is unavaible.

 

 

I want to set up my Wide-IP so that internal users get the pool for MyWebSrv, but external users get the pool for MyOtherWebSrv. They're separate virtual servers, so I can't just use the translated vs external address on a single virtual server. Both MyWebSrv and MyOtherWebSrv are on the same LTM, so I can't do it by data center.

 

 

What's the best way to set this up? Have the two servers for each service in a pool and use an iRule to give out the correct pool based on the query source? (see below)

 

 

To add extra detail in case I'm not explaining it well above:

 

LTM-A has virtual servers MyWebSrv on 10.1.1.100, and MyOtherWebSrv on 10.1.1.200

 

LTM-B has virtual servers MyWebSrv on 10.2.2.100, and MyOtherWebSrv on 10.2.2.200

 

The GTMs are authoritative for lb.example.com.

 

I want internal DNS queries for thing.lb.example.com get [10.1.1.100 if LTM-A is active or 10.2.2.100 if LTM-A is offline].

 

External DNS queries for thing.lb.example.com will get [10.1.1.200 if LTM-A is active or 10.2.2.200 if LTM-A is offline]

 

 

The iRule would be something like this, if my internal queries came from NS 10.10.10.10:

 

when DNS_REQUEST {

 

if { [IP::addr [IP::remote_addr] equals 10.10.10.10] } {

 

pool MyWebSrv-pool

 

} else {

 

pool MyOtherWebSrv-pool

 

}

 

}

 

 

Thanks!

 

 

No RepliesBe the first to reply