Skript PAC dostáva názov hostiteľa z URL. dashboard sa pred porovnaním automaticky nestane dashboard.example.internal:

function FindProxyForURL(url, host) {
  if (isPlainHostName(host)) {
    return "DIRECT";
  }
  return "PROXY 203.0.113.10:8080";
}

Namiesto dokumentačnej adresy použite skutočný koncový bod HTTP; zoznam HTTP proxy poskytuje kandidátov na testy verejných cieľov tam, kde je táto trasa povolená. V tomto skripte krátky názov zámerne vracia DIRECT; plne kvalifikovaný názov sa dostane do vetvy proxy. „Obyčajný názov hostiteľa“ znamená zápis bez bodky, nie zistenie, že hostiteľ je v dôveryhodnej lokálnej sieti.

Ak je želanou politikou jedna interná doména, porovnávajte túto doménu namiesto každého krátkeho názvu. dnsDomainIs a shExpMatch majú odlišné vstupy a sémantiku vzorov. Kontrola prípony pre .example.internal nezahŕňa presný koreň example.internal; ak je to zamýšľané, zahrňte tento prípad výslovne. Vzor v štýle shellu nie je podsietí IP ani regulárny výraz.

Porovnajte výsledok skriptu pre krátky názov, plne kvalifikovaný názov, nesúvisiaceho verejného hostiteľa a akýkoľvek zamýšľaný koreň domény. Tým sa testuje výber pravidla bez pripojenia k proxy. Preskúmajte prvé pravidlo, ktoré vráti výsledok, keď široká vetva DIRECT bráni vyskúšaniu inak dostupného koncového bodu.

Použite porovnanie názvov, keď vyjadruje politiku; pomocníci DNS pridávajú vlastné vyhľadávania a oneskorenie. Implicitné lokálne obchádzanie prehliadača udržiavajte oddelene od skriptu. Kontrola localhost nemôže nahradiť skutočný zápis verejného alebo interného cieľa.

Súvisiace články