The ServletServerHttpRequest#getRemoteAddress method may perform a DNS lookup in certain scenarios (and same goes for its reactive counterpart).
If the underlying jakarta.servlet.ServletRequest#getRemoteHost implementation does a DNS lookup (as it is allowed, but not required to do), then calling ServletServerHttpRequest#getRemoteAddress will also do a DNS lookup. ServletServerHttpRequest#getRemoteAddress is for example called by Spring's ForwardedHeaderFilter.
As the ServletServerHttpRequest#getRemoteAddress return type is InetSocketAddress it feels like doing DNS resolution is quite pointless in general.
I have been trying to extract a minimal reproducer but I'm having some trouble getting it reproduced in a minimal setting. It might involve WebSocket via JSR 356 using Atmosphere and Jetty as the servlet container.
Similar to #28280.
The
ServletServerHttpRequest#getRemoteAddressmethod may perform a DNS lookup in certain scenarios (and same goes for its reactive counterpart).If the underlying
jakarta.servlet.ServletRequest#getRemoteHostimplementation does a DNS lookup (as it is allowed, but not required to do), then callingServletServerHttpRequest#getRemoteAddresswill also do a DNS lookup.ServletServerHttpRequest#getRemoteAddressis for example called by Spring'sForwardedHeaderFilter.As the
ServletServerHttpRequest#getRemoteAddressreturn type isInetSocketAddressit feels like doing DNS resolution is quite pointless in general.I have been trying to extract a minimal reproducer but I'm having some trouble getting it reproduced in a minimal setting. It might involve WebSocket via JSR 356 using Atmosphere and Jetty as the servlet container.
Similar to #28280.