Forum Discussion

clowe_16759's avatar
clowe_16759
Icon for Nimbostratus rankNimbostratus
Jul 14, 2009

iRule that worked in v.9 now doesn't work in v.10

I am in the process of converting some virutual servers from our existing 9.4.1 LTM to a Viprion running 10.0.1. We have used this iRule for quite some time on the existing LTMs without issue:

 

 

when CLIENT_ACCEPTED {

 

set sourceip [IP::client_addr]

 

set destip [IP::local_addr]

 

if { [IP::addr $sourceip equals 10.195.0.0/16]

 

and [IP::addr $destip equals 10.195.0.0/16] } {

 

set sourcesplit [split $sourceip "."]

 

set newip [lreplace $sourcesplit 2 2 12]

 

set newip [join $newip .]

 

snat $newip

 

}

 

}

 

 

Basically, what this did was if the source address was 10.195.0.0 it would SNAT the third octet from 10.195.x.x to 10.195.12.x this was to ease in trouble shooting this 10.195.12.x address space was only on the LTM. I have tried to repeat the functionality over to the Viprion with no success. TCPDUMP confirms that the address space is not getting changed so I have tried to find what changes are in place for the new code on iRules with no success. I am open to suggestions.

1 Reply

  • That looks straightforward enough. I'm not sure why it wouldn't work on a 10.x viprion. Do you see any errors in /var/log/ltm? If you add logging do you see the iRule logging expected values?

     

     

    If nothing comes from logging, you might try opening a case with F5.

     

     

    Aaron