Proxy-PAC
Version vom 14. Juni 2018, 07:24 Uhr von Jan.vogel (Diskussion | Beiträge)
Was ist eine Proxy-PAC
- Die Konfigurationsdateien meist von verschiedenen Web-Browsern für die Auswahl eines geeigneten Proxy-Server verwendet werden, so PAC-Dateien bekannt, weshalb PAC-Dateien werden auch als Proxy Auto-Config-Dateien. PAC-Dateien werden als Web-Dateien kategorisiert, weil sie JavaScript-Funktionen, die bei der Festlegung der Regeln notwendig, um einen Proxy-Server auf der Basis der gegebenen URL wählen verwendet werden, enthalten
Beispiel
- Eine einfache Konfiguration, bei der alle Clients über den Proxy gehen und alles erlaubt wird.
function FindProxyForURL(url, host) {
return "PROXY nagus.xinux.lan:3128";
}
- Bei dieser Konfiguration, werden alle interne Anfragen direkt zum Zielort geschickt, dass heißt, alles was aus dem Bereich 192.168.0.0/16 10.0.0.0/8 und 172.16.0.0/12 kommt, wird nicht über den Proxy geleitet.
function FindProxyForURL(url, host) {
if (isInNet(host, "10.0.0.0", "255.0.0.0.0")) {
return "DIRECT";
}
if (isInNet(host, "192.168.0.0", "255.255.0.0")) {
return "DIRECT";
}
if (isInNet(host, "172.16.0.0", "255.240.0.0")) {
return "DIRECT";
}
return "PROXY nagus.xinux.lan:3128";
}
- In dieser Konfiguration werden wieder alle interne Anfragen direkt zum Zielort geschickt, dazu werden noch alle Anfragen auf einen Hostname direkt zum Host geschickt. Befindet sich aber eine Domain hinten dran, wird der Weg wieder über den Proxy geleitet. In diesem Beispiel wird noch jede Anfrage auf die Domain "xinux.lan" direkt zum Ziel geschickt, ohne den Umweg über den Proxy.
function FindProxyForURL(url, host) {
if (isPlainHostName(host) || dnsDomainIs(host, ".xinux.lan")) {
return "DIRECT";
}
if (isInNet(host, "10.0.0.0", "255.0.0.0.0")) {
return "DIRECT";
}
if (isInNet(host, "192.168.0.0", "255.255.0.0")) {
return "DIRECT";
}
if (isInNet(host, "172.16.0.0", "255.240.0.0")) {
return "DIRECT";
}
return "PROXY nagus.xinux.lan:3128";
}