En PAC-regel for korte navn kan omgå proxyen din
Forstå hvorfor et vertsnavn uten punktum og den fullt kvalifiserte formen kan velge ulike ruter i samme PAC-skript.
Et PAC-skript mottar vertsnavnet fra URL-en. dashboard blir ikke automatisk dashboard.example.internal før matchingen:
function FindProxyForURL(url, host) {
if (isPlainHostName(host)) {
return "DIRECT";
}
return "PROXY 203.0.113.10:8080";
}
Bruk et ekte HTTP-endepunkt i stedet for dokumentasjonsadressen; HTTP-proxylisten gir kandidater for tester mot offentlige destinasjoner der den ruten er tillatt. I dette skriptet returnerer det korte navnet med vilje DIRECT; det fullt kvalifiserte navnet når proxy-grenen. «Vanlig vertsnavn» betyr en stavemåte uten punktum, ikke en konklusjon om at verten er på et klarert lokalt nettverk.
Hvis ønsket policy er ett internt domene, match det domenet i stedet for hvert kortnavn. dnsDomainIs og shExpMatch har ulike innganger og mønstersemantikk. En suffikssjekk for .example.internal inkluderer ikke den nøyaktige roten example.internal; ta med det tilfellet eksplisitt når det er ment. Et skallignende mønster er ikke et IP-subnett eller et regulært uttrykk.
Sammenlign resultatet av skriptet for kortnavnet, det fullt kvalifiserte navnet, en urelatert offentlig vert og enhver tiltenkt domenerot. Dette tester regelvalget uten å koble til proxyen. Inspiser den første regelen som returnerer når en bred DIRECT-gren hindrer et ellers tilgjengelig endepunkt i å bli prøvd.
Bruk navnesammenligning når det uttrykker policyen; DNS-hjelpere legger til sine egne oppslag og forsinkelse. Hold nettleserens implisitte lokale omgåelse atskilt fra skriptet også. En localhost-sjekk kan ikke erstatte den faktiske stavemåten til den offentlige eller interne destinasjonen.