Saturday, May 12, 2007

FuckProxy vs IIITLANBrowser

Just now got a scrap on orkut from Ankur Khare thanking me for FuckProxy. I am always delighted to hear such compliments. But I noticed he was using it from his home. I was surprised how could FP work from outside campus as I had specifically disabled it for requests from outside IIIT on Monga's request. Actually it has a bug and it works from everywhere. Need to fix that.

FP is not meant to be used from outside. If you are outside, use IIITLANBrowser. It provides a login mechanism so that only IIITians can use it. Also, FuckProxy url redirect mechanism is set for inside campus. I guess people manually change urls to view pages through FP. Why to take that pain when you have an option?

Sunday, April 29, 2007

Finding out available FTP servers on LAN

Its summer vacation now and I have again started doing bc work (as I call it), though I am not so free this vacation :) Shwetabh and I are trying to build a FTP Search which will allow you to find out movies, etc. available on FTP servers on our LAN. I know there is already a similar site built by Paresh Jain on 150/media. But (SEEMS TO ME that) it only scans a list of manually specified servers, which were specified long long back. [Update: The server list is PROGRAMATICALLY updated once in a while (around a month)]. Other thing is that, its interface does not allow a proper search (although you can of course use ctrl+f). Also, we wish to provide a DC++ like interface for browsing FTP servers. And not to forget, having something showable is a plus point during job interviews.

So in the process of searching about how to best do this, I came across nmap - the network security tool written by Fyodor. It has lots and lots of options and the corresponding uses... quite a good tool.. awesome. This is how I get a list of available FTP servers at any point of time:-

// basic command. can be optimized.
$ nmap -p 21 -iL IPs.txt -oG ftpLog.gnmap ; grep open ftpLog.gnmap | cut -d ' ' -f 2

where IPs.txt contains the range of IPs to look for. This is my IPs.txt :-
172.16.1-16.*
172.16.18-20.*
172.16.22.*
172.16.24-32.*
172.17.0.*
172.17.8-10.*
172.17.16.*
192.168.36.*
[ Do tell me if I have missed any IP ]


I adjusted the timings, etc. to find the best configuration for scanning our LAN. Actually, I am still tinkering with it and will post the exact command later. Any suggestions for improving the performance? At present it takes around 5 mins.
Part 2.