Handsaming av DNS-feil inne i ein PAC-regel
Gje eit mislukka PAC-DNS-oppslag si eiga retningslinje-grein i staden for å handsame det som ei stadfesta adresse utanfor det lokale nettet.
Eit mislukka oppslag beviser ikkje at målet ligg utanfor ditt private nett. Det beviser at denne PAC-vurderinga ikkje fekk adressa ho trong.
Skilnaden tel når dnsResolve() fôrar ein isInNet()-regel. PAC-implementasjonen i Chromium returnerer null når oppslaget feilar. Ikkje bygg feilgreina på minnet om at resultatet alltid er ein tom streng.
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";
}
Dette dømet sender uoppslåtte namn til proxyen. Det er eit retningslinjeval, ikkje ein universelt trygg standard. Det kan vere nyttig når proxyen har ein resolver eller eit nettverksbilete klienten ikkje har. Eit nett som krev lokal oppslag treng eit anna eksplisitt utfall.
Løys opp éin gong og bruk resultatet på nytt. Det held avgjerda knytt til éin verdi og unngår å gjenta potensielt trege hjelpekall.
Sjekk også den faktiske PAC-brukaren. Eldre IPv4-hjelparar og utvida IPv6-hjelparar har ulike kontraktar. Ein regel som er testa med éin nettlesar sin implementasjon, beviser ikkje støtte i alle program som brukar same PAC-URL.
Viss kravet berre er å rute eit kjent føretakssuffiks, kan ein vertsnamnregel heilt unngå oppslaget. Bruk adressebasert klassifisering når adressa er informasjon som retningslinja verkeleg treng.