I am getting this error:
matching method 'found' cannot be used with fetch keyword 'req.payload'
In order to detect correct frame I do something like this do you think
it is enough?
acl px req.payload(0,4) -m bin FF00FF00
acl rib req.payload(5,4) -m bin 00000000
tcp-request content accept if px WAIT_END
tcp-request inspect-delay 1s
stick-table type binary len 4 size 50k expire 30m
stick on req.payload(5,4) table protokolX if px !rib
Presumably, I try to avoid stickiness on frames where ID is not set..
Dne 24.9.2015 v 10:46 Emeric Brun napsal(a):
On 09/24/2015 09:16 AM, Miloš Kozák wrote:
I did try even that..
Interesting thing happens when I set tcp-inspect delay to 10s, my stickiness
rule appears after 30s. The problem is it takes very much of time, and the
stickiness then actually does not work, i.e., I can see that every further
response goes from different server. Also, the stickiness rule does not appear
everytime, only exceptionally..
My stickiness rules goes from first packet hence only a few ms should be OK,
but it does not work with such a short time at all..
Milos
tcp-inspect is not enought, you must use also use a tcp-request content rule to
force haproxy to wait for data.
Something like that:
acl ID req.payload(4,5) -m found
tcp-request inspect-delay 5s
tcp-request content accept if ID
stick on req.payload(4,5) if ID
R,
Emeric