Неуспешното търсене не доказва, че дестинацията е извън частната ви мрежа. То доказва, че тази оценка на 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.

Ако изискването е само да се насочва известен фирмен суфикс, правило по име на хост може да избегне търсенето напълно. Прибягвайте до класификация по адрес, когато адресът е информация, която политиката наистина изисква.

Подобни статии