[noCensorship] Re: Testing proxies from Freerk's list / was Re: Proxytools censored - a thanks

  • From: wayne <wayne@xxxxxxxxxxxxx>
  • To: nocensorship@xxxxxxxxxxxxx, proxytools-users@xxxxxxxxxxxx
  • Date: 29 Dec 2003 15:34:27 -0000

> From: Denis Green <rainman@xxxxxxxxxxxx>
> To: nocensorship@xxxxxxxxxxxxx
> Subject: [noCensorship] Testing proxies from Freerk's list / was Re: 
> Proxytools censored - a thanks
> 
> Dear Wayne
> 
> Thanks for the quick replies
> 
> 1/ I've been careful with the cntrl +c, cntrl + double c etc. 
> 2/ I don't think I typed cntrl + triple C anytime

They could be a long time apart if the results display takes a 
long time (as it would for 700 proxies).
Remember, the count isn't reset until the display finishes.
Don't think of this like double-clicks in windows.

> 2.1./ Yes I am working from behind a firewall

A personal firewall?

> 2.2./ The firewall seems to be decent enought for me to get some results
> with test 13 !

Personal firewalls should ask you if Perl can be an internet server.

> 2.3./ Please read this entire post so that my thoughts are clear to you
> 
> 3/ I have created a file called newlist.txt with some 290 + proxies using
> perl extractHosts.pl newlist.txt isEnabled doesNotPassIPAddressThrough
> 
> 4/ Now I wish to use this list (from newlist.txt) on my browser and so 
> wish to check for
> a) working proxies
> b) sort them on speed

OK.

> 5/ To achieve 4 above, Let us say I run 
> 
> 5.1./
> perl statProxy.pl -t 0:13 -m -l newlist.txt
> (newlist.txt being the file with the earlier checked 290 + proxies)
> 
> or I run 
> 
> 5.2./ 
> perl statProxy.pl -t 0 -m -l newlist.txt
> (as test 13 seems superfluous there)

You need it to test for anon. The database query just gives you 
the ones that were anon at the time that test was done. 
These proxies change to non-anon at the drop of a hat.
They are really quite unreliable; you should probably test for 
that every time you use them.

> 6/ Test as in 5.1. seems to run ok on my machine and gives an
> output. Doesn't take much time either (total time it took on 190+
> proxies was less than 10 minutes)

That's slow, probably because test 13 needs to wait for each proxy 
to connect back to you. Or timeout.

> The output is like 
> 
> | statProxy v4.167 report from aaa.bbb.ccc.ddd (xyz.net)
> | 12.17.161.27    :8000  R            R         
> | 12.44.87.173    :8000  p                     19.0/? 
> | 128.252.76.18   :8000  R            R         
> | 128.32.99.184   :8000  T            T         
> | 129.22.182.136  :8000  p            T        21.0/? 
> | 141.150.62.201  :8002  T            T         
> | 141.151.130.130 :8000  p                     7.0/? 
> | 146.145.107.99  :81    T            T         
> | 148.223.5.101   :8000  p                     7.0/? 
> | 148.241.2.17    :81    T            T         
> | 162.33.156.163  :80    T            T         
> | 163.24.109.245  :80    T            T         
> | 163.24.132.117  :80    T            T         
> | 163.24.41.245   :80    T            T         
> | 163.24.98.245   :80    T            T         
> | 163.29.43.131   :80    T            T         
> ..........
> 
> 7/ Now which are the working ones and which are non working?

'Working' means test 0 passed. That's represented by a 'p' in 
the first column of the test results above.
The docs will tell you about this.

I see you got no 'P' or 'F' (pass or fail) for test 13.
That makes it look like your firewall is screwing with you.
In that test, 'R' and 'T' (connection refused or timed-out) tells 
you about the SP attempt to connect to the proxy prior to starting 
the test. Usually, that means test 0 should have the same result, 
but there's one exception above: 129.22.182.136  :8000
When that kind of thing happens, it's got to be a flaky network. 
Sometimes you get a connection, other times you don't. 

Other than those cases, you have 3 passes on test 0 (so they *are* 
proxies) but an empty response for test 13. Assuming you let the 
tests finish, this means SP was able to connect to those proxies 
for test 13, but then there was no response, or something which 
caused the test to *not* be performed. The test is, after all, to 
see if your IP address is in the proxies request headers ('F') 
or not ('P'). 
I would guess the headers weren't seen at all.
Sounds like very slow proxies (SP must timeout eventually), or 
a firewall interfering.

> 
> 7.1./ I hope none of them pass the IP address through ?

You have no 'F' results to prove that. The *only* case where you 
can assume that is when you get a 'P'.

> 8/ Could you please list what T, p, R etc. mean ?

See the docs.
I made some effort in a previous post to show you the ways to do 
that.

> 9/ Instead of using hosts.xml with the command in (3/) above
> how do I use freerk's list there ?

You can't. 
ExtractHosts only works on a file with an appropriate database 
format.
F's lists don't have the required tags for your query to work, 
for example.
You get those tags only after testing with statProxy and then 
using mergeHosts.

From your point of view, the most efficient way is probably to use 
statProxy -p -t 0:13 to test his lists ('-p' only lists the ones that 
passed test 0), and then to sort the results on the test 13 result 
column (column 37) and then on the speed (latency is a good guess: 
column 46).

I guess I should add another command line option so the user can 
specify the sort order for the result list. It's in the todo list 
for statProxy now.

I wouldn't suggest this, but:
To really use extractHosts (so you can select based on other 
properties, and the real speed rather than just latency, etc.) 
I'd suggest you use mergeHosts to merge the results to an existing  
database file (which will then have the right format), and then 
extract from there:
copy config-User1.xml temp0.xml
copy hosts.xml temp1.xml
perl statProxy.pl -p -t 0:13 -l Freerklist.txt
perl mergeHosts.pl statProxy.2003.12.29.?.out config-User1.xml
copy config-User1.xml hosts.xml
perl extractHosts.pl outputFile.txt isEnabled doesNotPassIPAddressThrough 
<speed term, etc...> 
copy temp1.xml hosts.xml
copy temp0.xml config-User1.xml

The result is in outputFile.txt.

Complicated, huh?
The problem is that extractHosts assumes it's querying hosts.xml, 
and there's no command line option to change that, so you need to 
put your results in place of hosts.xml, and restore everything 
at the end.

Another way is to just use mergeHosts as above to hosts.xml and 
extract from there:
copy hosts.xml temp1.xml
perl statProxy.pl -p -t 0:13 -l Freerklist.txt
perl mergeHosts.pl statProxy.2003.12.29.?.out
perl extractHosts.pl outputFile.txt isEnabled doesNotPassIPAddressThrough 
<speed term, etc...> 
copy temp1.xml hosts.xml

The problem then, is that you would end up with many results from 
the database, rather than the recently published list. That might 
not be a bad thing anyway.

> 10/ I tried perldoc statProxy.pl and perldoc statProxy.pl -h
> both give an output as follows 
> 
> C:\dir...>perldoc statProxy.pl
>  | Name statProxy
>  | Synopsis
>  |     perl statProxy.pl [-f file] -t l[:m:n:..] [-u] [-m] [-p] [-x n] [-a
>  |     [realm],[proxy:port],user,pwd]] [-q] [-v] [-h] [-C proxy:port] ((-l
>  |     <list file | )|<proxy addr | [:<proxy port | ]|transparent|
>  |     http://your.url.com/path)
>  | 
>  | Description
>  |     Documentation is seen at run time (to allow docs for Windows
>  |     executable). Use -h to see those details.
> 
> 11/ when I try perldoc statProxy.pl -h
> I get
> 
>  | C:\dir>perldoc statProxy.pl -h
>  | No documentation found for "-h".
>  | Name statProxy
>  | Synopsis
>  |     perl statProxy.pl [-f file] -t l[:m:n:..] [-u] [-m] [-p] [-x n] [-a
>  |     [realm],[proxy:port],user,pwd]] [-q] [-v] [-h] [-C proxy:port] ((-l
>  |     <list file | )|<proxy addr | [:<proxy port | ]|transparent|
>  |     http://your.url.com/path)
>  | 
>  | Description
>  |     Documentation is seen at run time (to allow docs for Windows
>  |     executable). Use -h to see those details.
> 
> None of these make sense to me to find out what 'R', 'p' next to the
> proxy numbers mean. So I'm asking you here 
> 
> Sorry if this info is already in the documentation

Either I posted it wrong, or you didn't read properly.
Certainly you've missed the readme.html I mentioned.
Also the -h option is not invoked by perldoc, but by perl:
perl statProxy.pl -h

> 12/ By the way is the documentation available in one long HTML or Text
> file. If so where ? I'd have it handy and do a text search if the
> whole docs is in one file 

Told ya already.

> 13/ I understand your feelings on creating a windoes executable
> 
> 14/ As you know already I've been dodging CVS (dodging learning CVS)
> for a long time. If I am only guy asking for an executable and a win
> executable has so many disadvantages.. just forget it

Many people want it. 
I just don't understand why.
The Perl installation is quite straightforward, and the rest of the 
'installation' (unzipping) is the same in both cases.

> Spend your time better by advising us, building new exploits etc. 
> and I'll learn CVS !!

Deal! :-)

> Thanks in adv
> & Regards
> 
> DG

--
Turing email: wayne at nym.alias.nest
(remove the obvious extra 's')
http://proxytools.sourceforge.net/
===8>============== noCensorship community ===============
List's webpage: //www.freelists.org/webpage/nocensorship
List's archive: //www.freelists.org/archives/nocensorship
To unsubscribe: nocensorship-request@xxxxxxxxxxxxx with 'unsubscribe' in the 
SUBJECT field.
Moderator's email: nocensorship-moderators@xxxxxxxxxxxxx
===8>============== noCensorship community ===============


Other related posts: