Forum Discussion
Irule to bypass http profile on APM VS
I have encountered problems with SSL VPN users trying to use port 80 in local network apps other than a Browser. For example a web cam app that ran on port 80 failed to work on SSL VPN but works on Cisco IPsec user vpn connections. Other examples Sametime-chat over port 80 works over any other port but port 80 when connected to F5 SSL. My sales engineer suggested it may be my http profile.
He further suggested there may be an Irule to bypass the http profile for specific destination IPs that I could configure. Is there such an Irule?
8 Replies
- nathe
Cirrocumulus
Gabriel,
As far as i know you can't enable/disable a http profile in an iRule as such (although some individual http profile options you can).
Hopefully your SE can give you a pointer on what part of the profile might be causing your issue.
Hope this helps,
N
- Gabriel_Olar_10
Nimbostratus
Thanks for the quick reply, ya I don't know it feels like the http profile is built for web traffic/Apps, so when you try to run port 80 on a different app I would guess the app makes requests in a different way as opposed to a browser. Not really looking to disable the profile just bypass it for certain addresses.
- Matt_Dierick
Employee
The solution could be to forward specific traffic to another VS without HTTP profile. I do it for a application non RFC compliant.
when HTTP_REQUEST { if {[HTTP::uri] starts_with "/company/Reports/"} { log local0. "Requete sur Report --> VS_nonHTTP" virtual /Common/VS_nonHTTP } }I don't know if it works in your use case, but that could help you out.
Matt
- Gabriel_Olar_10
Nimbostratus
Thanks so much, can I do this?
when HTTP_REQUEST { if {[HTTP::uri] starts_with "chat.phl.com"}
- Matt_Dierick
Employee
Yeah or :
when HTTP_REQUEST { if {[HTTP::uri] contains "chat.phl.com"} { Log local0. "HTTP URI contains chat.phl.com" virtual /Common/VS_CHAT }And add this log iRule on the second VS (once without HTTP profile)
when CLIENT_ACCEPTED { log local0. "Connection on NON_HTTP VS"}Don't forget to add ressources on the second VS (Pool and members). This VS can have any IP address. It doesn't matter because the connection comes from the first VS.
Hope this solution will works in your case. Else, enable logs on LTM and try to understand why HTTP profile meets an issue.
- Gabriel_Olar_10
Nimbostratus
Whats the purpose of the second VS or why do I need two VS's?
- Matt_Dierick
Employee
You need one VS with an HTTP profile (which seems to meet an issue for you) and one another without. Basically, you need HTTP profile on VS1, I suppose, in order to start an APM session (Landing URI ...). If for any reason, you have an issue with this HTTP profile, the workaround is to forward to another VS without HTTP profile specific flow.
- Duffman_107233
Nimbostratus
I had a similar issues and just disabled the http pofile in an irule for some non-compliant http. You could try the below. Would be interested in knowing if this works for others?
when HTTP_REQUEST { if {[HTTP::uri] starts_with "/company/Reports/"} { HTTP::disable } }
Help guide the future of your DevCentral Community!
What tools do you use to collaborate? (1min - anonymous)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