Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

Applications won't authenticate with Crowd after moving to Windows Server 2016.

Sebastian Brookfield November 7, 2018


We've been moving all our applications from a Windows 7 box to a Windows Server 2016 VM, and everything but Crowd has been easy.

Crowd boots just fine, and I can log in to it.

When I try to log into an application, the authentication fails.
The error I get is 

2018-11-07 13:00:17,538 https-openssl-nio-8096-exec-14 ERROR [[Catalina].[localhost].[/crowd].[default]] Servlet.service() for servlet [default] in context with path [/crowd] threw exception
java.lang.RuntimeException: invalid IPv6 address
at com.atlassian.crowd.manager.validation.XForwardedForUtil.getTrustedAddress(

This makes no sense. I have no idea why it's trying to parse an IPv4 address as IPv6.
I also have no idea what the port is.

To explain the set up, we have IIS running on a machine which reverse proxies to the Server 2016 box (

Crowd has an additional adaptor listening to port 8096, which has the SSL connection stuff in it, and the proxy pass. 

The original Windows 7 has both IPv4 and IPv6 enabled, which the Server 2016 box also has.

Does anyone know how to fix this?

I'm really struggling trying to find anyone with the same problem.


Kind regards,



1 answer

1 accepted

0 votes
Answer accepted
Sebastian Brookfield November 7, 2018

So I've worked out what my issue is.

In IIS, the Application Request Routing proxy settings have an option for including the TCP port from the client IP in the X-Forwarded-For header.

If I disable this, Crowd no longer views this as an IPv6 address, and works correctly.

My assumption is that the code is looking for the presence of the colon to determine if the IP address is IPv6. Because the port was included, this was tricking it into thinking it was.

Suggest an answer

Log in or Sign up to answer
AUG Leaders

Atlassian Community Events