JavaScript Funktionen für Auto-Proxy-Konfiguration
Andreas M.
- javascript
Hallo,
um die automatische Browserkonfiguration nutzen zu können
habe ich folgende proxy.pac im Einsatz
*****
function FindProxyForURL(url, host)
{
var MyAddress=myIpAddress();
if (isPlainHostName(host) || dnsDomainIs(host, "localhost"))
return "DIRECT";
else if (shExpMatch(host, "127.0.0.1"))
return "DIRECT";
else if (MyAddress.substring(0,MyAddress.lastIndexOf(".")) == host.substring(0,host.lastIndexOf(".")))
return "DIRECT";
else
return "PROXY squid.local.domain:3128";
}
******
Diese funktioniert soweit sehr gut. Das Problem ist, dass ich im
zweiten "else if" das lokale Subnetz direkt erreichen will. Die o.a.
Lösung gilt nur, wenn die Rechner immer in einem Class C-Netz liegen.
Es existiert zwar die Funktion isInNet(host, pattern, mask), allerdings finde ich keine Möglichkeit die auf dem jeweiligen Rechner lokal eingestellte Subnetzmaske zu ermitteln.
Ich könnte zwar komplett DNS nutzen und die Ziel-Domain der URL auswerten, allerdings wird häufig die IP als Ziel angegeben.
Mit isInNet() kann ich dann beides erschlagen, da bei einem angegebenen HOST-Namen zuerst ein DNS-Lookup gemacht wird.
Hat jemand einen Rat?
Grüße
Andreas