Интернет-приложение не принимает во внимание файл Proxy PAC

Интернет-приложение не принимает во внимание файл Proxy PAC

У нас есть приложение (надстройка Excel), настроенное на получение настроек прокси из IE (WinInet). Именно так работают большинство современных приложений в наши дни, они просто подключаются к настройкам прокси вашей системы/IE и используют их. Настройки IE должны использовать скрипт файла PAC и отлично работают для всех других приложений без проблем.

Это приложение будет работать несколько часов, а затем просто сломается. Проблема очень непоследовательна. Мы использовали Wireshark для захвата сетевого трафика и обнаружили, что когда он ломается, это происходит из-за того, что он обходит прокси и пытается перейти на прямой. Я видел подобное раньше, но это либо работает на 100%, либо нет. В этом случае вы можете видеть в сети, что приложение использует прокси и работает нормально; затем по какой-то странной причине оно решило перейти на прямой.

Вот что я заметил и что я об этом думаю:

На основании вышеизложенного я делаю вывод, что проблема в приложении. Однако поставщик утверждает, что ни у одного другого клиента нет этой проблемы, поэтому они отказываются ее решать. Я склонен верить, что они честны, потому что это Oracle, и они сказали мне, что есть несколько крупных предприятий, использующих это.

За все годы работы в сфере ИТ я ни разу не видел подобного поведения — когда приложение пытается напрямую выйти в Интернет, хотя оно настроено на использование прокси-файла/PAC-файла (конечно, если он настроен правильно).

  • Когда он работает или не работает, URL-адрес, на который он переходит, абсолютно один и тот же — это исключает какие-либо конкретные правила в PAC, вызывающие проблему.
  • Когда происходит сбой, до и после этого я вижу успешные прокси-подключения к другим URL-адресам с использованием других приложений, таких как IE, — это исключает недоступность прокси-сервера во время возникновения проблемы.
  • Файл PAC очень прост, в нем нет правил отправки трафика «напрямую».
  • В какой-то момент я подумал, что, возможно, сервер, на котором размещен файл PAC, может быть недоступен в тот самый момент, когда приложение пытается получить доступ к Интернету. Однако я исключил это, поскольку другие приложения работали нормально во время этой ошибки. Я также создал скрипт PowerShell, который постоянно выполнял GET для получения статуса http 200, когда происходила ошибка. Все вернулось нормально, что говорит об отсутствии проблем с сервером файлов PAC.

Дальше я собираюсь исследовать процесс, который происходит при загрузке файла PAC. Кто-нибудь знает, как устранить неполадки или включить ведение журнала для WinInet? Я не могу найти ничего об этом в Интернете.

Связанный контент