Ethereal-users: Re: [ethereal-users] can't open an interface without IPv4 address assigned

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

From: Guy Harris <gharris@xxxxxxxxxxxx>
Date: Tue, 26 Sep 2000 00:20:31 -0700
On Mon, Sep 25, 2000 at 01:51:22PM -0600, Eichert, Diana wrote:
> 	I CVS's current today to an OpenBSD i386 system that I use as a
> filtering bridge.  The interface to the outside has no IPv4 address assigned
> to it.  In fact on most OpenBSD filtering bridges you usually don't have an
> IP address assigned to an interface that is part of the network you are
> filtering.
> 
> 	The bridge is operating properly.
> 
> I received the following error:
> 
> tethereal: Can't use filter:  Couldn't obtain netmask info (dc0: no IPv4
> address assigned).

What tcpdump (the LBL 3.4 version, at least) does in this situation is
to print the message in question ("dc0: no IPv4 address assigned", or
whatever) as a warning, and then set the IP address and netmask to 0. 
This means that filtering that cares about the netmask (checks for
IP broadcast addresses - as they check not only for 255.255.255.255 but
also for the broadcast address for the network) won't necessarily work,
and the tests done by tcpdump's "-f" flag won't work, but everything
else should, from a quick look at the code, work.

The Ethereal equivalent would be to put up a warning message box, and
set the netmask to 0.

Not putting up the warning message box might leave the user ignorant of
the reason why their filter checking for broadcast IP addresses doesn't
work.

Putting the warning message up

	1) would probably get pretty annoying after a while

and

	2) wouldn't necessarily alleviate the user's ignorance, as
	   it may not be obvious that one should infer from "couldn't
	   obtain netmask info" that the filter in question wouldn't
	   work.

Any votes in favor of putting up a warning dialog box, either the first
time you capture on the interface, or every time you capture on the
interface?