Internet Explorer не автоматично виявляє http: //wpad/wpad.dat auto-config


9

Мене розчарує ця проблема.

Я створив файл під назвою wpad.dat (по суті, файл proxy.pac перейменований) і розмістив його на внутрішньому веб-сайті. Я налаштував записи DNS, щоб wpad імені хоста був CNAME для веб-сервера. Я встановлюю відповідний тип MIME для .dat файлів на веб-сайті. Я видалив wpad зі списку глобальних блоків запитів DNS.

Я знаю, що конфігураційний файл є синтаксично правильним, тому що якщо я вручну встановив Internet Explorer "використовувати скрипт автоматичної конфігурації" на http://wpad/wpad.datпроксі, явно використовується (тобто я бачу, що моє перегляд відображається у файлах журналів, а також на певних сайтах, які я заборонив придумати. моя заміна сторінки.)

Однак, наскільки я розумію, все, що мені потрібно зробити, - це позначити прапорець "Автоматично визначати налаштування", і Internet Explorer повинен сам шукати http://wpad/wpad.dat- або, правильніше, http://wpad.localdomain/wpad.dat- що також працює.

Чи може хтось допомогти мені діагностувати цю проблему? Я просто не бачу, що я пропустив чи що не так.

Дякую !!

(Зверніть увагу, також можна встановити файл автоконфігурації за допомогою DHCP, однак у нас є організація на багатьох сайтах з DHCP, що надається сумішшю серверів і маршрутизаторів залежно від місця розташування, а також віддалених офісів за допомогою 3G стільникових модемів, які мають дуже базові Крім того, це лише Internet Explorer, який нібито підтримує автоматичне відкриття веб-проксі через DHCP - ні Firefox, ні Safari. Ми фактично не використовуємо жоден із цих браузерів, але заради максимальної сумісності та простоти майбутнього адміністрування / змін Я думаю, що це, безумовно, краще, щоб це працювало через хороший один запис DNS.)


Чи потрапили ви десь із цим. У мене точно така ж проблема. Я сильно спокушаюсь звинувачувати IE в тому, що Firefox прекрасно автоматично виявляє, проте IE не вдається виявити і вибрати корінь за замовчуванням!
Кіп

Я цього не зробив. Мені довелося вказати значення "використовувати сценарій автоматичної конфігурації". Це дратує, тому що вся література говорить, що я зробив це правильно. Однак, використовуючи запропоновані тут пропозиції (наприклад, використовуйте WireShark, щоб побачити, що відбувається, перевірте журнали IIS тощо). Я впевнений, що IE просто не прагне відкривати wpad / wpad.dat, хоча вся документація говорить про це!
Девід М Вільямс

Для мене це було пов'язано з безліччю інтерфейсів, і IE вибирав адаптер VirtualBox hostonly при виклику WPAD myIpAddress (). Дивіться також serverfault.com/a/425966/11594
Кріс Дж.

Відповіді:


16

Девід,

У випадку, якщо ви все-таки вирішили вирішити цю проблему, виправити її насправді досить просто. Але це жодним чином не задокументоване, і мені знадобилося віки, щоб розібратися в моєму оточенні. Все, що ви зробили, добре, і це те, що я би назвав помилкою в тому, як IE отримує інформацію про WPAD та підключається до веб-сервера.

Перш за все, ви не можете використовувати запис CNAME для WPAD. Використовуйте запис A. Дурне, я знаю, і це не повинно мати ніяких змін, але це безумовно так. Тому видаліть свій CNAME у своєму DNS та зробіть запис для IP-адреси веб-сервера.

По-друге (і це може бути складніше для вас), вам потрібно мати файл WPAD.DAT, що знаходиться в корені веб-сайту за замовчуванням, який слухає IP-адресу, яку ви вказали вище. Це ключ. Він НЕ буде працювати з полем заголовка хоста або чим-небудь подібним.

Пояснення: Що IE - це вирішити ім'я WPAD на IP-адресу. Потрібно мати можливість вирішити це безпосередньо на IP-адресу. Якщо він вирішується так, як запит CNAME стосується іншого імені, він не працюватиме. Отже, як тільки IE отримає IP-адресу, на яку WPAD вирішує, те, що він насправді робить, це підключитись до http: // <> /WPAD.dat. Якщо у вас на одному веб-сервері створено інший веб-сайт, слухаючи порт 80, але використовуючи поле заголовка хоста, як у мене (IE, "веб-сайт за замовчуванням", а також "Веб-сайт WPAD"), тоді ви будете у вас все налаштовано правильно, але це не буде працювати саме з цієї причини. Помістіть копію файлу WPAD.DAT у корінь вашого веб-сайту за замовчуванням, і все має почати працювати.

Звичайно, якщо ви не можете отримати доступ до кореня цього веб-сайту (або ви не можете захистити корінь цього веб-сайту), можливо, вам доведеться подивитися на переміщення свого сайту WPAD на інший сервер, де він може бути корінь IP-адреси, призначеної цьому серверу.

Дайте, що все-таки постріл. Це процес, який працював на мене. Мені знадобилися віки, щоб він працював, але це надійно працює вже тривалий час. Все вище сказане - це просто моє розуміння того, як IE працює по відношенню до файлів WPAD.DAT, і може бути невірним - це просто засноване на спостереженні за тим, що він робить у моєму власному середовищі. Ваші можуть бути різними, але я хотів би покласти трохи грошей на вирішення вашої проблеми.

Дайте мені знати, як ви дістаєтесь! Матто :)


Я бачу цей самий випуск Матто. Ми розміщуємо wpad.dat на сервері, на якому розміщені інші веб-сайти, тому ми використовували прив'язку IIS із заголовками хостів wpad та wpad.our.domain для обслуговування файлу конфігураційного проксі. Коли наш DNS був CNAME wpad до справжнього fqdn.our.domain, то Firefox працюватиме, але Internet Explorer / WinHttp Client не зможе через запит HTTP проти FQDN - він занадто розумний, і побачити CNAME потім перенаправити запит на ім'я безпосередньо від Запис. Переключитися на прямий Запис для фіксованого WinHTTP / IE на "wpad"!
Mister_Tom

3

Інший спосіб вирішити це для IE8 (може працювати і для IE7) - це змінити параметри в груповій політиці.

  • Конфігурація комп’ютера> Адміністративні шаблони> Компоненти Windows> Internet Explorer> Зробити параметри проксі на машині (а не на користувача) = Увімкнено
  • Конфігурація користувача> Адміністративні шаблони> Компоненти Windows> Internet Explorer> Вимкнути кешування скриптів автоматичного проксі = Увімкнено

З модифікованими вище 2 параметрами я зміг отримати налаштування WPAD для роботи в IE8.

ПРИМІТКА. Щоб використовувати це, вам не потрібно перебувати в доменному середовищі. На ПК робочої групи просто використовуйте GPEDIT.MSC, щоб змінити локальну комп'ютерну політику.

Див.: Як відключити автоматичне кешування проксі в Internet Explorer

З повагою, Кім


3

Це серверне запитання за замовчуванням виявляється високо в пошуку Google, і саме тому я на нього відповідаю. Я сподіваюся, що інші вважають це корисним, оскільки ця проблема була справжнім болем для мене.

Майже кожен комп’ютер Windows 7 у нашому домені близько 50 користувачів постраждав - обхід і скидання IE не було прийнятним, наскільки я побоювався, тому я врешті вирішив це так:

По-перше, ось кілька корисних, але дуже важких для пошуку посилань, на які я натрапив:

http://blog.frankleonhardt.com/2011/wpad-and-windows-7-and-internet-explorer-8/

http://kb.k12usa.com/Knowledgebase/Proxy-Auto-Detect-WPAD-Issues-With-IE-Windows-7

http://infratalk.wordpress.com/2011/09/10/troubleshooting-windows-proxy-autodiscovery-wpad/

Я б запропонував вам спочатку прочитати кожне з посилань.

Наступна цитата з кулакового посилання особливо цікава:

"Виявляється, ті розумні хлопці в Microsoft впровадили функцію припинення перевірки сервера WPAD після кількох невдалих спроб. Він вважає, що він знає, на якій мережі працює роумінгова машина, залишає для себе записку в реєстрі, якщо це не так зайвий раз перегляньте. Товста велика користь, якщо ви тільки що це здійснили ".

Я знайшов ключ wpad reg, позначений у посиланнях, який насправді я знайшов посилання в google. Під час тестування я став нещадним і виявив, що працює наступне:

Закрийте всі сеанси IE, відкрийте Панель управління -> Параметри Інтернету -> Вкладка підключень -> Налаштування ланка та зніміть галочку "Автоматично виявити налаштування" (та всі інші параметри) - НЕ ВІДКРИТТЬ ІНЕ ПРОТИ.

Видаліть наступний ключ реєстрації:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Wpad

Відкрийте Панель керування -> Параметри Інтернету -> Вкладка Підключення -> Налаштування ланка та натисніть "Автоматично виявити налаштування".

Якщо ви оновите вікно regedit (F5), вам слід побачити повторно створений ключ wpad reg, але він буде порожнім.

Тепер відкрийте IE. Оновіть reg wpad ще раз, і вам слід побачити, що він заповнюється підрозділом, що містить різноманітну інформацію wpad.

Це виправлення не потребує скидання IE, але мені все одно потрібно було якось розгорнути його через 50 машин. Я зробив це так:

Я створив наступний регістр за допомогою комп’ютера, який я скинув, як зазначено вище (не копіюйте це дослівно, оскільки він був створений на основі нашого домену, і я відредагував ім'я домену), рядок wpadOverride було керовано додано:

Windows Registry Editor Version 5.00

[-HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Wpad]

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Wpad]
"WpadLastNetwork"="{F03DC3BF-50F6-4DB1-9570-CF84875F6EDC}"
"WpadOverride"=dword:00000001

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Wpad\a4-0c-c3-62-7b-2d]
"WpadDecisionReason"=dword:00000000
"WpadDecisionTime"=hex:10,50,19,cf,b1,73,cc,01
"WpadDecision"=dword:00000001

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Wpad\{F03DC3BF-50F6-4DB1-9570-CF84875F6EDC}]
"WpadDecisionReason"=dword:00000000
"WpadDecisionTime"=hex:10,50,19,cf,b1,73,cc,01
"WpadDecision"=dword:00000001
"WpadNetworkName"="example.local"

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Wpad\{F03DC3BF-50F6-4DB1-9570-CF84875F6EDC}\a4-0c-c3-62-7b-2d]

Це додано до скриптів для входу користувачів і, в основному, видаляє ключ reg та замінює його.

Потім я створив групову групу, щоб відключити "Налаштування автоматичного виявлення" і додав вручну wpad URL:

Конфігурація користувача -> Політика -> Налаштування Windows -> Технічне обслуговування Internet Explorer -> Підключення -> Автоматична конфігурація браузера | Зніміть прапорець "Автоматично виявити параметри конфігурації" та поставте галочку "Увімкнути автоматичну конфігурацію" та вставте " http: //wpad.example.local/wpad.dat " у "URL-адреса автоматичної конфігурації".

Я також увімкнув "IE WPAD Caching Override" (див. Друге посилання вище).

Потім я залишив це на кілька днів, щоб розгорнути на якомога більше комп'ютерів, після чого відключив "URL-адресу автоматичної конфігурації" і знову поставив галочку "Автоматично виявити налаштування конфігурації" та видалив ключ Reg із скрипту входу.

Я зробив це так, як, здається, не працював, просто знявши позначку, а потім поставив галочку "Автоматично виявити налаштування конфігурації" через GPO, тому додавання URL-адреси може не бути в кінцевому рахунку необхідним.

Я сподівався, що WpadOverride буде працювати без зайвих кроків, але, на жаль, у моєму випадку це не відбулося.

До речі, використання імені чудово працює в нашій мережі.

Будь-які комп’ютери, які вимкнено протягом виправлення, після цього просто оброблялися вручну.

Я сподіваюся, що це допомагає іншим, хто натрапив на це питання, як я зробив через Google. Ця "особливість" Microsoft просто дурна.



2

У мене був такий самий випуск, але лише для декількох комп'ютерів ...

Wireshark показав, що IE не робить нічого в мережі, перш ніж потрапити на цільовий веб-сервер. Веб-сервер, призначений для розміщення wpad, відповідає на будь-яке ім’я хоста з певної IP-адреси.

Я змусив непрацюючих клієнтів IE8 знову завантажити wpad.dat, зробивши це:

  1. Інструменти-> Параметри Інтернету-> Додатково-> Скидання
  2. Закрили IE і знову відкрили його

На жаль, після внесення змін у файл wpad.dat очевидно, що IE8 після першого завантаження wpad.dat не робить більше завантажень :-(



1

Спробуйте запустити wireshark на клієнтській машині ... подивіться, де дивиться IE? Чи веде ваш веб-сервер, що він обслуговував будь-які вкладки?


Дякуємо за пропозицію Wireshark. Це дало цікаві, але дивовижні результати. Хоча прапорець "Автоматично визначати налаштування" IE не посилався на wpad ні разу. Не було DNS-пошуку, щоб вирішити ім'я wpad з будь-яким суфіксом. Коли я вкладаю вручну запис для "використання сценарію автоматичної конфігурації", я можу побачити nslookups, що виконуються на wpad. Отже, здається, IE насправді взагалі не намагається знайти файл автоконфігурації!
Девід М Вільямс

1
Переконайтесь, що варіант 252 на вашому DHCP не встановлений на "" або подібному - це може спричинити плутанину. Також wpad може не працювати, якщо у вас немає локального домену.
Том Ньютон,

1

Internet Explorer спробує отримати доступ до " http: //wpad.your-machine 's-dns-suffix.com/wpad.dat". Переконайтеся, що веб-сервер, налаштований для обслуговування файлу wpad.dat, відповідає на повністю кваліфіковане ім’я хоста. (BTW, IE розкладе суфікс DNS, намагаючись також кожен батьківський домен. Подивіться на http://wpad.com . Хлопець, який володіє цим доменом, міг би бути справді, дуже злий, якби хотів. .)


1

Версія IE 6.0.2900.xxxx шукає ім'я файлу "wpad.da" замість "wpad.dat" Будьте уважні! ;) Просто використовуйте sniffer або перевіряйте свої журнали веб-сервера.

Сподіваюся, це допомагає!


0

Оскільки Том Ньютон пропонує запустити провідну книжку, щоб побачити, що робить IE (DNS-запит, HTTP GET, ...), також перегляньте ваші журнали веб-серверів.
Слідкуйте за тим, щоб IE надсилав IP замість імені хоста (wpad) як "Host" у GET-запиті, щоб ви не могли використовувати "wpad" virtualhost на веб-сервері.


Цей другий момент цікавий; якщо те, що ви говорите, вірно, то це, швидше за все, проблема. Я не хотів wpad.dat в корені головного веб-сайту, тому я створив новий каталог і віртуальний хост для "веб-сайту" wpad, так би мовити. Однак якщо IE автоматично шукає 10.1.1.1/wpad.dat замість wpad.domain.local / wpad.dat, тоді це буде проблема. Спробую спершу ...
Девід М Вільямс

Ні, це не спрацювало. Я думаю, що IE просто нічого не робить, незважаючи на те, що прапорець "Автоматично визначати налаштування" перевіряється.
Девід М Вільямс

Оскільки, за коментарем до відповіді Тома, ви нічого не бачили у wireshark, це може бути помилка у версії IE (яка версія?) Чи щось у конфігурації Windows (Політика безпеки? GPO?), Що це відключає. (але я не маю уявлення про те, якими налаштуваннями це можуть бути, це просто ідея)
радіус

0

Цей метод працює для мене

   1. Tools->Internet Options->Advanced->Reset
   2. Closed IE and re-opened it

Я думаю, що IE8 змушує мене бентежити багато, вони з MS, але чому це працює не надто. У той час як Firefox працює дуже добре.


0

Якщо ви використовуєте DHCP, тоді є налаштування (опція 252, IIRC) для оголошення місця розташування вашого файлу wpad. Я вважаю, що ви неправі щодо того, що Firefox не може цим скористатися.

Крім того, чи є у вас місцевийдомен у списку пошуку?

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.