https://bz.apache.org/bugzilla/show_bug.cgi?id=69126
Bug ID: 69126
Summary: addressttl strange behavior: checking address change
before timeout, and closing connections while no
change in name resolution
Product: Apache httpd-2
Version: 2.4.59
Hardware: PC
OS: Linux
Status: NEW
Severity: normal
Priority: P2
Component: mod_proxy
Assignee: [email protected]
Reporter: [email protected]
Target Milestone: ---
Created attachment 39768
--> https://bz.apache.org/bugzilla/attachment.cgi?id=39768&action=edit
pcap with addressttl parameter used.
Bonjour,
New parameter addressttl for mod_proxy behave strangely.
Check for name resolution change is done for each request ( seemingly ), not
waiting for given delay.
Check for name resolution finds a difference (there is none) and closes
previous tcp connection if there was one available.
Config is:
LogLevel warn proxy:debug proxy_http:debug proxy_balancer:debug
<Location />
ProxyPass http://tornado.test.com:1443/H enablereuse=on retry=0 timeout=50
addressttl=10
</Location>
When not using addressttl in the conf, regular behavior is observed: cnx pool
reused : see regular_tcpcnxpooling.pcapng
With "addressttl=10", resolution is done every request and different resolution
is found, thus resetting tcp connection.
Sample of associated log:
[Fri Jun 07 16:44:43.228162 2024] [proxy:debug] [pid 10:tid 140214970345152]
proxy_util.c(2684): AH00942: http: has acquired connection for
(tornado.test.com:1443)
[Fri Jun 07 16:44:43.228173 2024] [proxy:debug] [pid 10:tid 140214970345152]
proxy_util.c(3086): [client 127.0.0.1:33892] AH00944: connecting
http://tornado.test.com:1443/HH_3 to tornado.test.com:1443
[Fri Jun 07 16:44:43.228478 2024] [proxy:debug] [pid 10:tid 140214970345152]
proxy_util.c(2792): [client 127.0.0.1:33892] AH10479: http: tornado.test.com
resolved to 127.0.0.10:1443
[Fri Jun 07 16:44:43.228508 2024] [proxy:debug] [pid 10:tid 140214970345152]
proxy_util.c(3023): [client 127.0.0.1:33892] AH10481: http: closing connection
to tornado.test.com (127.0.0.1:32770<>127.0.0.10:1443) on address change
To reproduce:
Use docker image: https://hub.docker.com/_/httpd
Have configuration set for proxying
Have a simple Tornado server ( compliant with KA requests from httpd mod_proxy
to keep connections alive ) on local machine.
start the docker with :
docker run --network host --add-host tornado.test.com:127.0.0.10
my-apache2:latest
Simple curl client to send 3 requests:
http://127.0.0.1:8080/H_$i
--
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]