Gå til innhold

Anbefalte innlegg

Hei

 

Er i ferd med å sette opp en PAC tjeneste i et nettverk.

 

Ønskemålet er som følger:

Hvis man skriver inn en URL som tilhører domene X, så skal man gå utenom proxy

Hvis man skriver inn en IP adr. som tilhører nettverk X, så skal man gå utenom proxy

Hvis man sitter på LAN 1 skal man bruke Proxy 1

Hvis man sitter på LAN 2 skal man bruke Proxy 2

I alle andre tilfeller, gå utenom proxy

 

Jeg ser for meg noe slikt, og har behov for at noen sier om dette vil fungere greit - eller om det er alldeles feil...

 

function FindProxyForURL(url, host)

{

// Sjekk DNS navn

 

if(isPlainHostName(host) || dnsDomainIs(host,"proxy.bedrift.no")) return "DIRECT";

else if(isPlainHostName(host) || dnsDomainIs(host,".bedrift.no")) return "DIRECT";

else if(isPlainHostName(host) || dnsDomainIs(host,".intern.no")) return "DIRECT";

 

// Sjekk IP adress paa destinasjon

 

else if(isInNet(host, "199.199.199.0","255.255.255.0")) return "DIRECT";

else if(isInNet(host, "200.200.200.0","255.255.255.0")) return "DIRECT";

 

// Sjekk nettverk

 

else if(isInNet(host, "1.1.1.0", "255.255.255.0")) return "PROXY proxy.bedrift.no:8080";

else if(isInNet(host, "2.2.2.0", "255.255.255.0")) return "PROXY proxy.intern.no:8080";

 

else return "DIRECT";

}

 

 

Kommentarer mottas som vanlig med takk

 

Grant_Lee

Lenke til kommentar
Videoannonse
Annonse
// Sjekk nettverk

 

else if(isInNet(host, "1.1.1.0", "255.255.255.0")) return "PROXY proxy.bedrift.no:8080";

else if(isInNet(host, "2.2.2.0", "255.255.255.0")) return "PROXY proxy.intern.no:8080";

 

'host' vil her være hosten du prøver å surfe til, ikke klientens IP.

Bytt ut 'host' med 'myIpAddress()'.

 

Det kan også være lurt å angi flere proxy i et svar for redundans eller failsafe:

else if(isInNet(myIpAddress(), "2.2.2.0", "255.255.255.0")) return "PROXY proxy.intern.no:8080; proxy.bedrift.no:8080; DIRECT";

Her vil klienten først prøve intern.no, deretter bedrift.no og hvis den fortsatt ikke får kontakt med en proxy: gå direkte.

 

Edits: Staveleifer.

Endret av tyldum
Lenke til kommentar

Hei

 

Takk for tilbakemeldingene. Jeg fant ut av jeg måtte bruke myIpAddress() istendfor host, men takk for at du påpekte at myIpAddress() faktisk er rett ;-)

 

Men, jeg får ikke scriptet til å fungere. Jeg har forsøkt å kjøre deler av scriptet for seg selv, og den øverste delen som omhandler unntakene går fint. Jeg får det dog ikke til å fungere når jeg scriptet skal gi deg proxy server basert på hvilket nett man sitter på.

 

Grant_Lee

Endret av Grant_Lee
Lenke til kommentar

Ser ikke noe feil der. Her et utdrag fra en lignende konfigurasjon jeg har kjørende:

 

	else if (isInNet(myIpAddress(), "192.168.156.0", "255.255.255.0"))
	return "PROXY 192.168.156.9:3128; DIRECT";
else if (isInNet(myIpAddress(), "192.168.157.0", "255.255.255.0"))
	return "PROXY 192.168.157.9:3128; DIRECT";

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...