Ethereal-dev: Re: [Ethereal-dev] Request for Change

Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.

From: Guy Harris <gharris@xxxxxxxxx>
Date: Mon, 7 Oct 2002 15:27:58 -0700
On Mon, Sep 23, 2002 at 10:31:46AM -0600, Greg Morris wrote:
> Enough said, I am coming from a support role and analyze hundreds of
> traces per month for many different customers. I have ran into this
> issue several times and thought I would ask for opinions. Perhaps the
> issue is not as bad in Unix environments as it is in Win32.

It isn't.

On UNIX systems, address-to-name resolution is typically done by one or
more of

	checking the "/etc/hosts" file;

	checking the appropriate NIS or NIS+ database by querying an NIS
	or NIS+ server;

	doing a DNS lookup.

If the servers queried by those operations are all available and
reachable over the network, a lookup should be reasonably quick,
regardless of whether it succeeds or fails.

On Windows systems, address-to-name resolution is typically done by

	checking whatever the Windows equivalent to the "/etc/hosts"
	file is (I forget where it's located);

	doing a DNS lookup;

	possibly checking the LMHOSTS file;

	doing a NetBIOS-name-service lookup.

The first three of those are similar to UNIX; however, the latter isn't.
An NBNS lookup of the name corresponding to an IP address involves
sending a NetBIOS Name Service packet (I forget which one) to the IP
address in question and waiting for a response, which should contain the
NetBIOS name of the host).

Unfortunately, if the machine with the IP address in question isn't
running the NetBIOS Name Service code - for example, most UNIX boxes
don't - *NO* response will come back, and the only way the host can tell
that the lookup failed is to time out.

So a failed IP-address-to-name lookup may be slow if the name isn't in
DNS *even if the machine is up and running and the appropriate DNS
servers are up and running*.