Это классическая проблема при доступе к веб-сервисам через внешние прокси.
Чтобы это работало правильно, вам нужно сделать следующее
1) Добавьте еще один коннектор HTTP в server.xml вашего Tomcat. Скажем, на порту 8071, просто скопируйте 8080 Connector Dfn. и установите порт на 8071.
2) И в определении этого Соединителя. Вы должны добавить внешний IP и порт как proxyHost и proxyPort.
т.е. ваш server.xml должен содержать еще одну запись Connector, примерно такую, как эта
<Connector port="8071" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"
proxyHost="external.domain.de" proxyPort="8070" />
И убедитесь, что Соединения с external.domain.de через порт 8070 перенаправляются на 192.168.1.20 и порт 8071 вместо 8070.
Я сказал вам настроить новый соединитель, предполагая, что вы захотите получить доступ к WS как внутри, так и снаружи. Таким образом, соединитель внутреннего порта на 8070 не использует proxyhost и не меняет имя хоста для внутренних запросов, но любые запросы, поступающие из внешних источников через external.domain.de через порт 8071, получат external.domain.de в качестве имени хоста и 8070 как порт.
Если ваш WS будет доступен только с внешних клиентов, то вам не нужны 2 соединителя, просто добавьте директивы proxyHost и proxyPort к соединителю 8070, и все готово.
Но имейте в виду, что даже внутренние запросы теперь будут видеть имя хоста как external.domain.de.
Подробнее @ https://tomcat.apache.org/tomcat-5.5-doc/config/http.html#Proxy_Support