Pactester is een hulpprogramma voor Proxy Auto-Configuration (PAC) bestanden te testen.
PAC-bestanden worden gebruikt door browsers om de 'juiste' proxy voor een URL vast te stellen. Aangezien het PAC-bestand evaluatiemechanisme wordt gegenereerd in de browser en is niet toegankelijk van buiten, de enige manier om te vertellen welke proxy uw browser zal gebruiken voor een specifieke URL is handmatige inspectie van het bestand PAC. Maar handmatige inspectie niet echt schaal zeer goed. Pactester lost dit probleem op. Het maakt gebruik van JavaScript interpreter en Netscape / Mozilla API om de PAC bestanden evalueren en automatiseert het hele proces.
Pactester leest een PAC-bestand, evalueert het in een JavaScript context en gebruikt logica dit PAC-bestand naar de proxy voor een specifieke URL te bepalen.
Gebruik: ./pactester <-p pacfile> <-u url> [-h gastheer] [-c client_ip]
./pactester <-p pacfile> <-f urlslist> [-c client_ip]
Opties:
-p pacfile: PAC-bestand om te testen
-u url: URL te testen
-h host: Host deel van de URL
-c client_ip: client-IP-adres (standaard IP-adres van de computer waarop het script wordt uitgevoerd)
-f urlslist: een bestand met de lijst van de URL's worden getest.
Voorbeeld:
./pactester -p WPAD.DAT -u http://www.google.com
./pactester -p WPAD.DAT -u http://www.google.com -c 192.168.1.105
./pactester -p WPAD.DAT -f url_list
Hoe Het Werkt?
Het evalueert het bestand PAC in een Javascript context. Om dat te doen maakt gebruik van de JavaScript :: SpiderMonkey perl module, dat is een perl-interface naar Mozilla's C uitvoering van Javascript- Spidermonkey.
PAC-bestanden te gebruiken bepaalde JavaScript-functies. Deze functies zijn gedefinieerd in pac_utils.js bestand met deze tool (Dit bestand werd gegenereerd met behulp van een ander bestand van de Mozilla source code). Ook, omdat JavaScript heeft geen DNS oplossen vermogen dat wordt vereist door de "dnsResolve" en functies "myIpAddress" in het PAC-bestanden, deze functies zijn gedefinieerd in Perl en vervolgens geëxporteerd naar een JavaScript-context.
Hoe te gebruiken?
Pactester kan worden gebruikt om de proxy voor een URL of een lijst van URLs te bepalen.
Om de proxy voor een enkele URL te bepalen:
./pactester -p www.pac -u http://www.example.com
Voor een lijst van URL's:
./pactester -p www.pac -f urllist
waarbij urllist is een bestand met de lijst van URL's, gescheiden door newline.
Uitbreiding van command line web clients:
Pactester kan ook worden gebruikt om de command line web klanten uit te breiden, zoals krullen en perl-libwww bibliotheek.
Om het te gebruiken met krullen: Op dit moment, heeft krul niet de functionaliteit om PAC-bestanden te evalueren om uit te vinden proxy voor een bepaalde URL. Echter, op basis van pactester, kunt u een wrapper perl-script rond krul schrijven. Dit perl script zal eerst vinden van de proxy voor de URL, de manier waarop pactester ontdekt, en dan zal het krullen met de optie noemen '-x "proxy server zoals geretourneerd door pactester methode' '.
. Op dezelfde manier, kan deze methode worden gebruikt binnen perl-libwww web clients te
Eisen
- Perl
Reacties niet gevonden