PAC pravilo za kratka imena može zaobići vaš proxy
Shvatite zašto naziv hosta bez točke i njegov potpuno kvalificirani oblik mogu odabrati različite rute u istoj PAC skripti.
PAC skripta prima naziv hosta iz URL-a. dashboard ne postaje automatski dashboard.example.internal prije uspoređivanja:
function FindProxyForURL(url, host) {
if (isPlainHostName(host)) {
return "DIRECT";
}
return "PROXY 203.0.113.10:8080";
}Upotrijebite stvarnu HTTP završnu točku umjesto dokumentacijske adrese; popis HTTP proxyja nudi kandidate za testove prema javnom odredištu gdje je ta ruta dopuštena. U ovoj skripti kratko ime namjerno vraća DIRECT; potpuno kvalificirano ime dolazi do proxy grane. “Plain hostname” znači zapis bez točke, a ne nalaz da je host na pouzdanoj lokalnoj mreži.
Ako je željena politika jedna interna domena, uspoređujte s tom domenom umjesto sa svakim kratkim imenom. dnsDomainIs i shExpMatch imaju različite ulaze i semantiku uzorka. Provjera sufiksa za .example.internal ne uključuje točan korijen example.internal; eksplicitno uključite taj slučaj kada je to namjera. Uzorak u stilu ljuske nije IP podmreža ni regularni izraz.
Usporedite rezultat skripte za kratko ime, potpuno kvalificirano ime, nepovezani javni host i svaki željeni korijen domene. Time se testira odabir pravila bez povezivanja s proxyjem. Pregledajte prvo pravilo koje vraća kada široka DIRECT grana sprječava pokušaj inače dostupne završne točke.
Upotrijebite usporedbu imena kada izražava politiku; DNS pomoćnici dodaju vlastita pretraživanja i odgodu. Implicitno lokalno zaobilaženje preglednika također držite odvojeno od skripte. Provjera localhosta ne može zamijeniti stvarni zapis javnog ili internog odredišta.