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.

Relaterte artikler