About | Forum | Gallery | News | Order the XPT | Products | Rants | Security | Services | Workshop
Home » Workshop » Developer » Chris' IP Probe

Chris' IP Probe

Ten years on it's still getting thousands of downloads each month.


Get It

Try It

It's a 'freebie' app that's been getting over 1,000 downloads per month for the past ten years. And still does. It's called CIP - 'Chris' IP Probe'.

'Twas on Sunday 12 April 1998 that the barely started Radsoft site got a message from (for Radsoft) the totally unknown Lockergnome, advising that Radsoft's 'Extreme Power Tools' would be featured in the mid-month Lockergnome newsletter. Three days later the Radsoft server went down under the strain. People worked frenetically to change providers, Chris Pirillo of the Lockergnome forwarded people personally to the new URL, and on Friday 1 May the Radsoft software bundle was again featured as the lead-in story.

Several weeks later Chris contacted Radsoft again. He had an idea for a program.

This was back in the days of dial-up. Chris had a friend named Casey who'd written a program in Visual Basic to resolve website URLs and put them in the HOSTS file - a special database the system looks to when trying to resolve web addresses. The HOSTS file is a simple table of IPs and URLs. Browsers and other web applications are directed here first before they send a query to the DNS (Domain Name System).

The reason for resolving URLs in advance is clear when one understands that any attempt to access a URL involves two consecutive queries and that each of these takes time. The first query is to the Domain Name System (DNS) to get an Internet Protocol address (IP) for the URL. 'mycompany.com' is actually a unique 32-bit (or today possibly a 64-bit) number. The Domain Name System holds this information and the web browser, email client, FTP client, whatever has to query the DNS before it can proceed with its work.

Most of this is kept invisible for the user save for the time lag. Two web queries take roughly twice as long as one. And especially in the days of dial-up this can be a long time. By 'caching' pairs of IPs and URLs one could effectively halve the time needed to reach one's destination.

Casey's VB routine was OK but it had a few disadvantages as Chris pointed out. It was abysmally slow, it blocked all other functionality in the system while it worked, and it had a strange (but easily fixed) way of storing and restoring data for the HOSTS file. Chris asked Radsoft for help.

Rick at Radsoft took on the task. The program was initially written 75% to Chris' specifications. At the time Rick didn't have much more than the foggiest what Chris was going on about (see below) but he persisted anyway.

The basic design was straightforward: a table with columns for the URL, the resolved IP, and the time stamp when last validated. The program had the usual array of toolbar glyphs and menu items.

The program was also flexible enough to not necessarily edit the system HOSTS file exclusively but allow creation of other files for later export to the real one.

As this program - quickly dubbed 'CIP' - was written in C it was naturally going to be faster. But as things turned out that was only the beginning.

Things didn't really start to take off until a girl on the Lockergnome message boards posed a question about the program and everyone all of a sudden saw lights go on. Rick had been working years earlier on Unix HOSTS configuration and never connected the dots. When he finally realised he knew what he was writing after all the program took on an entirely new form.

As part of the Extreme Power Tools (XPT) CIP is unapproachable. It simply does more than any other comparable product and does it faster too. It studiously avoids URLs which resolve to multiple IPs and together with the XPT application GD can cull all the 'secondary URLs' embedded in web pages. Finally it can integrate with Silencer from the Bloatbusters to completely block ad traffic and malicious websites.

On a 28.8 modem CIP could resolve between 1,000 and 2,000 URLs per minute. That's 15 - 30 URLs per second. On a 28.8 modem. How is that possible?

The bottleneck with Casey's Visual Basic solution was that it could only query the DNS for one URL at a time. It takes time to get the query out there, it takes time for the DNS to figure out who has the answer, it takes time to send the answer back - and so for the greater part of this time the local machine is sitting there doing nothing. Visual Basic couldn't get into esoteric multithreading but CIP could.

What's ironic is that CIP was written in and for the 'slow days' predating broadband - and yet the same simple mathematics apply today as well. Although many systems can cache DNS results on a per-session basis they still have to get out there and get the IPs in the first place. For a nontrivial list of several thousand URLs (or several tens of thousands as has often been reported) the speed boost is still considerable - and welcome.

If all you want is the application (the free version) this might be a good time to stop reading. The URL is here. It's 241.4 KB to download according to CNET and it's a self-extracting ZIP file. There's nothing 'installed' - a common characteristic of all Radsoft software. There's no 'hanky panky' when the program is run either: there are no extraneous files left on disk. And your HOSTS file is ready to use as always even if you remove the application.

http://radsoft.net/gallery/cip/CIP500.exe

The companion app Silencer by the Bloatbusters is available here. It's a mere 43.4 KB and CIP and Silencer understand one another and can block all the sites you are not interested in giving any web time. The Silencer program file is a mere 20 KB; it uses the Bloatbusters B2.dll which is only 7 KB; and the rest of the package is a collection of 'unwanted' websites in 8 'SPY' files. All told there are 3,197 such websites listed. Today there are even more 'bad' sites that could be included and they're easy to integrate into the application system.

ftp://radsoft.net/pub/bloatbusters/silencer.zip

While you're at it you might want to pick up some of the other Bloatbuster 'freebies'.

But if you want to know more about how CIP works then by all means read on - even if you've already downloaded.

Next: Chris' IP Probe - Inside CIP ›

See Also
XPT Gallery: CIP

About | Buy | News | Products | Rants | Search | Security
Copyright © Radsoft. All rights reserved.