Řešení selhání DNS uvnitř pravidla PAC
Dejte neúspěšnému vyhledání PAC DNS vlastní větev politiky, místo abyste ho považovali za ověřenou adresu mimo místní síť.
Neúspěšné vyhledání nedokazuje, že cíl je mimo vaši privátní síť. Dokazuje jen, že toto vyhodnocení PAC nezískalo adresu, kterou potřebovalo.
Tento rozdíl je důležitý, když dnsResolve() napájí pravidlo isInNet(). Implementace PAC v Chromiu vrací null, když překlad selže. Nevystavujte větev selhání na vzpomínce, že výsledek je vždy prázdný řetězec.
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";
}
Tento příklad posílá nepřeložená jména přes proxy. Je to volba politiky, nikoli univerzální bezpečný výchozí stav. Může být užitečné, když proxy má překladač nebo síťový pohled, který klient nemá. Síť vyžadující místní překlad potřebuje jiný explicitní výsledek.
Přeložte jednou a výsledek znovu použijte. Rozhodnutí tak zůstane vázané na jednu hodnotu a vyhnete se opakování potenciálně pomalých pomocných volání.
Zkontrolujte také skutečného spotřebitele PAC. Starší pomocné funkce IPv4 a rozšířené pomocné funkce IPv6 mají různé smlouvy. Pravidlo otestované s implementací jednoho prohlížeče neprokazuje podporu v každé aplikaci, která používá stejnou URL PAC.
Pokud je požadavkem pouze směrovat známou firemní příponu, pravidlo názvu hostitele se může vyhledání úplně vyhnout. K klasifikaci podle adresy se uchylte, když je adresa informace, kterou politika skutečně potřebuje.