LB Issue with swarm publish mode=host


I recently have configured a docker service that publish 80/tcp and 443/tcp with mode=host (because my application need to know from which IP address the client is connecting, and it seems not possible using the routing mesh).

Doing that I discovered that the routing mesh does not works publishing ports with mode=host, so the swarm cluster is not balanced.

Is there a way to make docker balance tasks between docker nodes without routing mesh? Probably the easy way to solve this problem is to use nginx proxy_pass, but I’d like to know if is there a work around without inspect http requests or decrypt https requests.

thank you,
Best Regards.