Running localProxy

Simplest view:

Download. Unpack. Run localProxy.pl. Click an appropriate configuration . Click 'start services'.
To implement web browsing, configure the web browser to use localhost:10080 as it's proxy.
To implement Usenet News access, create an account in your news client which has it's news server at localhost:10119.
Done.

Simpler view:

  1. Extract all of the component files into the same directory.
  2. Double-click localProxy.pl. The GUI should now start up, and a command window (the GUI log) will open. This log window does not interact with the localProxy back-end, or engine, when it's running. Errors from the GUI will appear here.
  3. If this is the first time you have run localProxy, several modules will be installed automatically from the Internet. Wait for these to finish and restart localProxy as instructed.
  4. Select a configuration (last, saved, auto, UAE-dialup, UAE-adsl, KSA-<your ISP> , user0, user1, user2, etc.). 'Last' is the last configuration you used (with speeds etc. saved). 'Saved' is similar but was saved, at the user's request, as a snapshot while LP was running. The ones labelled UAE and KSA should be working in those places. The other non-country configs are there as examples only. I recommend you copy a config-*.xml file to make your own config file with your own services, and redirectors/proxies. See config-wayne.xml to see how I set mine up, and help-configExample.txt for further examples.
  5. Click 'Go advanced' to see the advanced window.
  6. Click 'run setup script' if you have written one. This will execute a file called 'script-<configName>.bat to allow you to set up things before running the localProxy back-end. The script may log into shell accounts, start ssh port-forwarding tunnels, start proxies etc. These services may then be used by localProxy at start up.
  7. Click 'Start services' You should notice a perl window start on the task bar (on older versions of Windows, it will pop up in your face). This is the localProxy back-end; that log window will show speeds, errors, data etc.
  8. Wait for the 'Start services' button to turn green.
  9. Configure your web browser to use it's http proxy on localhost, port 10080 and surf. In your news client (ex: Outlook Express) set up a news account at localhost:10119 and download usenet news. I've included a free news server in the distributed congiguration, but normally you would use your shell account's news server.
  10. At any time, you may save or view the running configuration, enable or disable individual commStrats or proxies, examine error statistics etc. from the GUI.
  11. When you've finished, you may stop localProxy by clicking the 'Stop services' or 'Exit' button.

Simple view:

2) Users without Tk (probably Unix users) may start the back end (localproxy2.pl) by itself.
3a) Selecting a commStrat will show a list of the configured proxies in each layer of the commStrat once a 'built' configuration is available to the GUI. For example, if you chose the 'last' configuration. A built configuration is also available to the GUI after the back end has been started. It is necessary to understand what this means only if you intend changing the default configuration files. The layer 0 and layer 1 windows you see below the communication strategy window, are not editable. They are the result of a substantial amount of processing by the localProxy back end. Individual proxies in these layers, commStrats and whole services may be enabled/disabled however.

3b) Click 'show running config'. Wait a few seconds and a window will open up with a data tree displayed. The '+' symbols may be clicked to expand that subtree. The interesting information is in the tree nodes which have numeric-only names. Look for 'friendly names' to see what service the subtree covers, and 'host' to see which address and port the statistics cover at the bottom of the tree (on the rightmost side of the window) when the tree is expanded fully.

3c) If this is the first time you have run localProxy and you don't see an obviously applicable configuration to choose in the configurations list, then you may wish to run 'AutoConfigure'. Place any proxies you would like to have included in the tests in the field near this button (in particular, include your local ISP's proxies) and press the button. Note that LP will find proxies in the registry, environment, user configuration files etc. automatically, so they don't need to be specified here. Wait for the firewall rules to be tested, the proxies to be tested and the results merged in to the 'auto' configuration. This can take many minutes (there are 19 tests done currently, so several minutes per proxy may be needed and things like 'proxy1.emirates.net.ae:8080' actually resolve to about 10 proxies). The 'auto' configuration will eventually appear in the configuration list, and you may then use it like other configurations below.

3d) You may also add special proxies to be tested and included in localProxy's build by selecting a configuration, adding the proxies to the field above the 'test and merge' button and click that buton. Again, wait... Note that such proxies will be selected for use by localProxy (and appear later in the 'hosts' lists in the GUI) only if the test results indicate they are fast and with suitable capabilities for a particular service,commStrat, layer.

5a) Do *not* type ctrl-break here to start debug mode unless you are sure. That will still work, but will shut down it's parent (the GUI) - that may be what you wanted, of course.

7a) Click the 'train me' button once the services have started. Unless you used a prebuilt configuration (last, saved) localProxy needs to be trained to recognize the speeds and reliability of the various communication strategies and paths available to it. This button enables that to happen in the background.

It will only take a couple of web pages if you have all good, fast proxies/redirectors in the paths, but sometimes will take longer. CommStrat 2 has many substrategies, and it will take quite a lot of browsing to fully explore all of these, but the result is usually very good. I expect people to often use localProxy to verify proxies, so there will be a substantial number of bad ones in the configuration. LocalProxy must try each one several times before it's convinced not to use it as much. The easiest way to train localProxy is to surf to a complicated, fast web page (or use the 'train me' button several times). Click 'stop', if necessary, after most of the activity has stopped (don't wait too long). Then reload the page(s) using (in Internet Explorer) ctrl-refresh (to ensure that full requests to the web server are made for the training phase speed measurements). After some refreshes, a good page should load quickly and without errors. You may decide to continue with your browsing at any time, refreshing as required (the 'go' button in IE will fill in any missed page components without requesting much at all).

8a) The log window will be showing very little information at this point. To see more information from the engine (ex: connection/commStrat/proxy speeds) , the debug level may be increased from the GUI.
8b) In addition, the localProxy engine log windows may be used as a logger by  clicking the 'log all' button in the GUI.

9a) This will automatically save the current, learned (running) parameters; they may be recalled next time you start localProxy2 by selecting the 'last' configuration.


Correct view:

Ahh ... you must read the rest of the documentation and then the Perl code itself for this much enlightenment :-)