Forum Discussion
irule for specific pools
Team, would like to configure an irule to redirect based on client ip's.
when HTTP_REQUEST { if { [matchclass [IP::client_addr] equals 1.1.1.0/24] } { do nothing. } elseif {([class match [IP::client_addr] equals 2.2.2.0/24]) }{ HTTP::redirect "; } }
It doesn't work, is there a modification required.
13 Replies
- youssef1
Cumulonimbus
Hi,
First of create your DataGroup then use this irule:
when CLIENT_ACCEPTED { if { not ( [class match [IP::client_addr] equals my_ip_dg] ) } { do nothing } elseif {([class match [IP::client_addr] equals my_ip_dg]) }{ HTTP::redirect "https://www.test.com" } }
Regards
- oguzy
Cirrostratus
Hi,
If you do not want to create a data group, you can try the below one:
when HTTP_REQUEST { if { [IP::addr [IP::client_addr] equals 1.1.1.0/24] } { do nothing } elseif { [IP::addr [IP::client_addr] equals 2.2.2.0/24] } { HTTP::redirect "https://www.test.com"; } }
- bsb
Nimbostratus
Missed one part, LTM is behind proxy which hides the incoming client ip, tried below option, still didn't work.
i am trying to access the site from 2.2.2.x network and instead of redirect, posting a custom message
when HTTP_REQUEST { HTTP::header insert X-Forwarded-For [IP::remote_addr] if { [IP::addr [IP::client_addr] equals 1.1.1.0/24] } { do nothing } elseif { [IP::addr [IP::remote_addr] equals 2.2.2.0/24] } { HTTP::respond 503 content {
} } }
- bsb
Nimbostratus
below content were removed.
< html> < head>< title> regret message < /title>< /head> < /html>
- oguzy
Cirrostratus
Hi,
when HTTP_REQUEST { HTTP::header insert X-Forwarded-For [IP::client_addr] if { [IP::addr [HTTP::header X-Forwarded-For] equals 1.1.1.0/24] } { do nothing } elseif { [IP::addr [HTTP::header X-Forwarded-For] equals 2.2.2.0/24] } { HTTP::respond 503 content "Page is currently unavailable." event disable TCP::close } }
If it does not work again, please share any errors if exist in the /var/log/ltm or try to logging for debug.
- oguzy_191375
Nimbostratus
Hi,
If you do not want to create a data group, you can try the below one:
when HTTP_REQUEST { if { [IP::addr [IP::client_addr] equals 1.1.1.0/24] } { do nothing } elseif { [IP::addr [IP::client_addr] equals 2.2.2.0/24] } { HTTP::redirect "https://www.test.com"; } }
- bsb
Nimbostratus
Missed one part, LTM is behind proxy which hides the incoming client ip, tried below option, still didn't work.
i am trying to access the site from 2.2.2.x network and instead of redirect, posting a custom message
when HTTP_REQUEST { HTTP::header insert X-Forwarded-For [IP::remote_addr] if { [IP::addr [IP::client_addr] equals 1.1.1.0/24] } { do nothing } elseif { [IP::addr [IP::remote_addr] equals 2.2.2.0/24] } { HTTP::respond 503 content {
} } }
- bsb
Nimbostratus
below content were removed.
< html> < head>< title> regret message < /title>< /head> < /html>
- oguzy_191375
Nimbostratus
Hi,
when HTTP_REQUEST { HTTP::header insert X-Forwarded-For [IP::client_addr] if { [IP::addr [HTTP::header X-Forwarded-For] equals 1.1.1.0/24] } { do nothing } elseif { [IP::addr [HTTP::header X-Forwarded-For] equals 2.2.2.0/24] } { HTTP::respond 503 content "Page is currently unavailable." event disable TCP::close } }
If it does not work again, please share any errors if exist in the /var/log/ltm or try to logging for debug.
Recent Discussions
Related Content
* Getting Started on DevCentral
* Community Guidelines
* Community Terms of Use / EULA
* Community Ranking Explained
* Community Resources
* Contact the DevCentral Team
* Update MFA on account.f5.com