Обработка на DNS грешка в PAC правило
Отделете неуспешното PAC DNS търсене в собствен клон на политиката, вместо да го смятате за потвърден адрес извън локалната мрежа.
Неуспешното търсене не доказва, че дестинацията е извън частната ви мрежа. То доказва, че тази оценка на PAC не е получила нужния адрес.
Разликата е важна, когато dnsResolve() захранва правило от тип isInNet(). PAC реализацията на Chromium връща null при неуспешно разрешаване. Не изграждайте клона за грешка върху спомен, че резултатът винаги е празен низ.
function FindProxyForURL(url, host) {
var address = dnsResolve(host);
if (!address) {
return "PROXY proxy.example:8080";
}
if (isInNet(address, "10.40.0.0", "255.255.0.0")) {
return "DIRECT";
}
return "PROXY proxy.example:8080";
}
Този пример изпраща неразрешени имена към прокси. Това е избор на политика, а не универсална безопасна настройка. Може да е полезно, когато проксито има резолвер или мрежова видимост, недостъпни за клиента. Мрежа, която изисква локално разрешаване, се нуждае от различен явен резултат.
Разрешете веднъж и използвайте резултата повторно. Така решението остава вързано към една стойност и се избягва повторение на потенциално бавни помощни извиквания.
Проверете и действителния потребител на PAC. Старите IPv4 помощници и разширените IPv6 помощници имат различни договори. Правило, тествано с реализацията на един браузър, не доказва поддръжка във всяко приложение, което използва същия PAC URL.
Ако изискването е само да се насочва известен фирмен суфикс, правило по име на хост може да избегне търсенето напълно. Прибягвайте до класификация по адрес, когато адресът е информация, която политиката наистина изисква.