Jython 2.5 / Java 8 SSL / SUDS Обратный поиск DNS - PullRequest
0 голосов
/ 09 марта 2019

У меня есть проект в Jython 2.5 (с JRE / JDK8), который подключается к защищенной веб-службе SOAP, размещенной на локальном сервере.Клиентская программа работает в Windows 10 и использует suds ( suds-jurko ) для вызова операций в веб-службе.Сертификат SSL для службы самоподписан и добавлен в локальный файл cacerts.Поскольку веб-служба находится на локальном сервере, доступ к службе осуществляется через IP-адрес сервера.

Проблема, с которой я сталкиваюсь, заключается в том, что связь с веб-службой очень медленная, поскольку она пытается выполнить обратный DNSпоиск по IP-адресу веб-службы.Каждый обратный поиск завершается неудачно (что ожидается), но между каждой попыткой он ожидает 1,5 секунды, что приводит к общей задержке около 5 секунд на вызов.

Эта проблема, по-видимому, достаточно хорошо задокументирована ( здесь, здесь , здесь , общий поиск в Google по запросу ' java ssl reverse dns lookup ' и т. Д.), Но общие решения, похоже, вращаются вокругизмените файл HOSTS на клиентском компьютере или передайте имя хоста InetAddress при создании соединения SSL, чтобы предотвратить обратный поиск DNS.Первый вариант в моем случае не практичен, так как есть несколько клиентов, и было бы менее чем идеально модифицировать файл HOSTS на каждом клиентском компьютере, и я не знаю, является ли второй вариант жизнеспособным при использовании suds.

Обратите внимание, что я не предоставил исходный код, так как считаю, что это излишне усложнит вопрос, но вызовы выполняются с использованием suds API, например:

client.service.method(params)

Могу ли я что-нибудь сделать, учитываячто я использую Jython 2.5 / suds для предотвращения обратного просмотра DNS, и я хочу обратиться к серверу через его IP-адрес, а не изменять файл HOSTS?

...