Summary.Net
The Next Step in Information Technology
DNSTran DNSTran for Macintosh, Linux x86, and Sun
Comments and questions: Jason@Summary.Net
DNSTran is a free utility to speed up the process of DNS lookups and to translate IP addresses into domain names in log files. In one step you can lookup IP addresses in your server log file, replace them with the correct domain names, and compress the log file for long term archiving. DNSTran will work with any log file format. When used with Analog it can be 50 times faster, or more, than Analog alone at doing DNS lookups. DNSTran for Macintosh requires OpenTransport.

Analog is fast, really fast, until you turn on the NUMLOOKUP option. DNSTran is a simple tool to speed that up. Using DNSTran I was able to process a 23.6Meg log file in 18 minutes (DNSTran and Analog) as compared to a time of about 15 hours using Analog alone. With NUMLOOKUP off, Analog takes less than a minute. Even if your log analyzer has better DNS lookup performance, DNSTran will replace the IP addresses right in the log file so you don't need to do the lookups every time you run the log analyzer.

On the Macintosh, DNSTran reads a log file named ´WebSTAR.log´ by default, and writes a compressed copy of the log file with DNS names replacing IP addresses named ´WebSTAR.log.gz´. The log file must be in the same folder as the program and must have that exact name. It is also possible to use Drag and Drop or AppleScript to translate any log file located anywhere on your machine.

DNSTran expires failed lookups 18 weeks after the lookup attempt and successful lookups 9 weeks after their last use. DNSTran is also capable of creating Analog format ´dnscache´ files for all versions of Analog.

* Download DNSTran 1.5.3 for Macintosh Classic (OS 8.1 or newer, runs in Classic mode under OS X) - 145K download (6/30/02)
* Download DNSTran 1.5.4a for OS X Command Line (Experts Only) - 119K download (4/13/2011)
* Download DNSTran 1.5.2 for Linux x86 - 234K download (6/21/02)
* Download DNSTran 1.5.2 for Sun - 94K download (6/21/02)
* Download DNSTran 1.2 for SGI IRIX - 44K download (12/7/98)
DNSTran Version History

April 4, 2011
DNSTran 1.5.4a for Mac OS X Command Line. Fixed a bus error crash some people were experiencing.
April 4, 2011
DNSTran 1.5.4 for Mac OS X Command Line. Updated the command line version with native x86 processor support.
June 30, 2002
DNSTran 1.5.3 for Mac Classic. The Macintosh version was setting the file type and creator codes incorrectly on translated output files, fixed.
June 21, 2002
DNSTran 1.5.2 for Linux and Sun. This is a major upgrade for the Sun version, making it far far faster and bringing it uptodate with the other platforms. There was a bug in 1.5 and 1.5.1 on Linux that caused occasional crashes when translating with compression, fixed.
May 21, 2002
DNSTran 1.5.2 for Macintosh. There was a bug in 1.5 and 1.5.1 that prevented correct operation under MacOS 8.x, fixed.
May 17, 2002
DNSTran 1.5.2 for OSX Command Line. There was a bug in 1.5 that caused occasional crashes when translating with compression under OS X.
May 15, 2002
DNSTran 1.5.1 for Mac Classic. There was a bug in 1.5 that caused unessessarily slow lookups under OS X.
May 10, 2002
DNSTran 1.5 for Mac Classic, Mac OSX Command Line and Linux x86. Added an option to slow down lookups in case your DNS server is getting overloaded. Removed all line length limitations, lines of any length will be correctly processed. The Mac Classic version does not use the ares library, but otherwise has been brought uptodate with the other versions.
March 12, 2002
DNSTran 1.5b1 for Linux x86. Updated DNSTran to use the ares library (Copyright 1998 by the Massachusetts Institute of Technology) to allow much faster lookups on high speed connections (up to 10 times faster in some cases). This release also add an option to replace the input file with a translated version and does all lookups first, and then all translations, to avoid the delay at the end of lookups from happening on each file. Added an option to compress the translated logs with BZip2. Updated to ZLib 1.0.4, which fixes a very rare crash on corrupt GZip archives. Updated to BZLib 1.0.2.
February 12, 2002
DNSTran 1.5b1 for Mac OS X Command Line (Experts Only). This is the first beta release for Mac OS X. It is a fully native command line application, and is only suitable for use by people who are already completely familiar with the command line interface. DNSTran for OS X uses the ares library (Copyright 1998 by the Massachusetts Institute of Technology) to allow very fast lookups. On a high speed connection lookups can exceed 300 per second. This release also add an option to replace the input file with a translated version and does all lookups first, and then all translations, to avoid the delay at the end of lookups from happening on each file.
August 8, 2001
DNSTran 1.4.1 for Linux. Brings the Linux version uptodate with the Macintosh version and features.
July 13, 2001
DNSTran 1.4.1 for Macintosh. Fixes two bugs in 1.4. No longer crashes when reading invalid dnscache files. Now correctly reads private format dnscache files. Both of these problems were unique to 1.4 and did not occur on previous versions.
June 26, 2001
DNSTran 1.4 for Macintosh. Now reads Zip and BZip2 compressed log files, in addition to GZip. The newline format for translated logs can be configured to Mac, DOS, or Linux. The input file can now be deleted after translation if desired.
May 19, 2001
DNSTran 1.3.3 for Linux x86. DNSTran now ignores directories specified on the command line. Formerly it would read, and translate, directories (opening them as raw files). This wasn't generally harmful, but it was distracting.
February 28, 2001
DNSTran 1.3.2 for Linux x86. DNSTran was not working, all DNS lookups always failed, on a few very new Linux distributions. Switched to newer versions of the libraries to avoid this. That means that this version of DNSTran will no longer run on RedHat 4, or other distributions from that era. Lookups are now timed out after thirty seconds, as they already were on Macintosh.
September 8, 2000
DNSTran 1.3.1 for Linux x86 and Sun. Fixes a bug on Linux and Sun where the "-settings" command line option didn't work.
September 2, 2000
DNSTran 1.3 for Macintosh and Linux x86. This is very similar to version 1.3b2, except for the version number. The Linux version is now linked statically, removing the dependence on libc version 5.
July 2, 2000
DNSTran 1.3b2 for Linux x86 and Sun SPARC. This is a beta version, but as far as I know everything works. DNSTran now does up to 35 lookups at the same time, previously it was up to 25. This change results in a speed improvement when used with very large log files and high performance DNS servers, it also increases the load on the DNS server. DNSTran now keeps a backup of the DNS cache file, so you can't lose all of your cached translations in a crash.
February 18, 2000
DNSTran 1.3b2 for Macintosh. This is a beta version, as far as I know everything works. DNSTran now does up to 35 lookups at the same time, previously it was up to 25. Lookups are now timed out after thirty seconds, previously it was two minutes. Both of these changes result in dramatic speed improvements when used with very large log files and high performance DNS servers. They also both increase the load on the DNS server. DNSTran now keeps a backup of the DNS cache file, so you can't lose all of your cached translations in a crash.
January 31, 2000
DNSTran 1.3b1 This is a beta version, as far as I know everything works but I have not done much testing. Drag and drop support now names the output file correctly and places it in the same folder as the input file. Long file names no longer prevent log translation from working. Log compression can now be turned off from AppleScript. Updated to the latest compiler, it should be slightly faster during the translation phase. DNSTran will now try failed lookups up to four times on different days to get through to name servers that are down. You can now quit during the translation phase, although no output file will be produced. Different time offsets are now used in the configuration file, check the dnstran.cfg file for more information if you are using a version of Analog older than 2.91.
June 29, 1999
DNSTran 1.2.1 fixes two bugs in the configuration file for Linux. The correct offset for Analog 3.x is 1440 and 'force-exit' should be deleted. The executable remains the same. These problems are still present in the SGI and Sun versions.
December 7, 1998
DNSTran 1.2 has now been ported to SGI IRIX.
September 25, 1998
The Sun version should actually contain a SPARC executable this time. This version is for SunOS 5.x and Solaris 2.x.
August 31, 1998
DNSTran 1.2 has now been ported to Sun.
July 7, 1998
DNSTran 1.2 has now been ported to Linux running on x86 hardware.
May 25, 1998
DNSTran 1.2, Added two new configuration parameters, expire-good and expire-failed which control how quickly entries are expired from the translation cache. Fixed a numeric overflow that was preventing Analog 2.90 dnscache files from being compatible with Analog. Fixed a problem which caused there to always be output errors on non-compressed translations. Added the ability to use single quotes in scripting options to put spaces in arguments (notably file names). Added the ability to do "synchronous" scripting, where the script does not continue until DNSTran is complete.
May 15, 1998
DNSTran 1.1, The name has been changed from DNSLookup to avoid conflicts with DNS Lookup 0.92, a version of nslookup for the Macintosh. Many, many new features. Now fully compatable with newer versions of Analog. There is now a configuration file that allows control of the "dnscache" file format for different versions of Analog, the level of compression used (including none) for the translated log files, forcing exiting at the end regardless of errors, disabling the translation pass (if all you want is the dnscache file), new smaller dnscache file format if you don't need it to be Analog compatible. Translated log files now have creator and file type 'Gzip'. Speed is slightly improved. Updated to the latest version of the ZLib library for improved speed and stability. Support for AppleScript "do script" message for passing configuration options. Preliminary drag and drop support.
January 16, 1998
DNSLookup 1.0.1, Fixed a bug that caused a "problem opening file webstar.log.gz" error message on larger log files.
December 29, 1997
DNSLookup 1.0, first official release. Now uses system temporary memory so you no longer need to set the application size manually for very large log files. This version should fix the occasional cache file erasing. Fixed a very occasional crash. Changed the expire times to six and 18 weeks for failed and successful lookups respectively, you will need to update your Analog.cfg file, see below. DNSLookup now pauses at the end when there is a serious error to allow you to read the error messages.
March 12, 1997
DNSLookup 1.0b1 Now processes the log file into a GZip compressed version with DNS names substituted for IP addresses so Analog can be run with NUMLOOKUP OFF. Also reads log files compressed with GZip.
February 10, 1997
DNSLookup 1.0a1 Now allows clicks on the menu bar and exits when completed unless there was an error.
February 4, 1997
DNSLookup 1.0dev1 First public release, development version.
Using DNSTran

There are two major ways to use DNSTran. You can have it translate and compress log files for later log analysis and archiving, or you can use it to create a "dnscache" file for use with Analog.

Web servers run more efficiently if they have DNS lookups turned off. DNSTran can then process the log files, replacing IP addresses with domain names and (optionally) compressing the log file. The resulting log file can be archived or used with any log analysis tool. DNSTran looks for a log file called "WebSTAR.log" in the same folder as the DNSTran application, and translates it to "WebSTAR.log.gz".

DNSTran can also be used to create a "dnscache" file compatible with Analog, Analog will then do the DNS translations internally. To use DNSTran in this way you should put it in the same folder with Analog, set "translate" to "off", "private" to "off", and set the correct "offset" and "divisor" values based on your Analog version number in the dnstran.cfg file. Then run DNSTran before running Analog. You then configure Analog to do DNS lookups and to have an expire time of more than 18 weeks. For versions of Analog prior to 2.9, change analog.cfg to have the following settings:
     NUMLOOKUP ON
     DNSFRESHHOURS 3030

For versions of Analog 2.9, 3.x, or 4.x change analog.cfg to have the following setting:
     DNS READ

To exit DNSTran while it is running type 'q' or quit from the file menu. All lookups completed so far will be saved automatically. DNSTran will automatically exit when it completes, unless there were errors.

DNSTran is freeware. It is Copyright (c) 1997-2011 by Jason T. Linhart. I give you permission to use it. You may also give copies to friends, so long as you include all of the files in the original package without modification. It may not be sold or commercially distributed without a written licence from me. It may be included in archives, and distributed on CD-ROM or on other formats so long as there are no charges for these services other than shipping, handling and the cost of media. Use or distribution of DNSTran indicates your agreement to these terms.

* Software for Webmasters
Copyright 1997-2011 by Summary.Net - Updated 4/4/2011