Forum Discussion
Kevin_Jones_505
Oct 26, 2004Historic F5 Account
TCP::payload - How do I get data from the TCP data field?
I'm trying to write an iRule that reads the TCP data rather than HTTP data. I'm building it off an HTTP data iRule that works. The first one works as expected.
when HTTP_REQUEST {
...
William_Benett1
Nimbostratus
Jul 12, 2007So I changed my code to [LB::status node $::BSIFNODE1]eq "down" per the LB::status page, but it still seems to get the incorrect node status.
Something i've noticed is that anytime I mess with the health checks, it stands a chance of flopping the node state.
It's like LTM is detecting a dead node, but it's not always updating whatever the iRule polls with the LB::status check.
I'm not sure what you're asking for in terms of verification. The values seem to be incorrect when polled, but the logfiles show the correct node state. It seems like i can reproduce it with this procedure. Down node 2 (add a bad route, actually disable the box, etc). Wait for LTM to notice, run the test. Sometimes the rule notices that it's down and sends all traffic to node 1. Then bring node 2 up. Verify the logfile. The iRule will only send traffic to node 1 because the node 2 status is still listed as down or session_disable. If I go to the node section and do one of a number of tasks (modify the node health checks including changing from node default to node specific or enable/disable the node) the iRule's next invocation picks up the correct status and it processes traffic correctly.
On the topic of the "node" command, I have to say that I haven't experienced anything like that. Quite honestly, it seems to work great when my rule can determine the node's actual status.
- jaikumar_f5Jun 19, 2018
Noctilucent
Recent Discussions
Related Content
DevCentral Quicklinks
* 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
Discover DevCentral Connects