Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 7 Aug 2004 13:58:01 +0400
From:      Yar Tikhiy <yar@comp.chem.msu.su>
To:        cokane@cokane.org
Cc:        hackers@freebsd.org
Subject:   Re: Network interface RUNNING and UP flags
Message-ID:  <20040807095801.GC39835@comp.chem.msu.su>
In-Reply-To: <346a8022040806145018a5e18@mail.gmail.com>
References:  <346a8022040806145018a5e18@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Aug 06, 2004 at 05:50:04PM -0400, Coleman Kane wrote:
> Hi, I have been having some trouble working with getting tapN network
> interfaces into the 'RUNNING' state. I have been trying to figure out
> how to set the RUNNING flag on an interface, which is needed before
> the kernel will actually begin sending packets from said network
> interface. So far, the only way I have been able to figure out how to
> do this is to assign an IPv4 address to the interface, I am guessing
> that an un-addressed network interface is supposed to remain not
> RUNNING even if it is UP by design. The problem is that only an IPv4
> address assignment will bring it up and running. If I attempt to
> assign an IPv6 address to the interface, it will go UP, but not
> RUNNING. I have determined that I can assign an IPv4 address (such as
> 10.0.0.1) to it, and then subsequently remove it (via -alias) and this
> will leave the interface in the running state.
> 
> My questions are:
> 
> 1) Why doesn't assigning an IPv6 address produce the same side effects
> and
> 2) Is there a way to set this interface flag without assigning an IPv4
> address (or any address for that matter) first?
> 
> Mainly for number two, I would like to be able to run interfaces
> bridged together without having to also give all of them addresses.

As a matter of fact, the IFF_RUNNING flag, visible as ``RUNNING'' in
the output from ifconfig(8), is intended for interface's internal use
and should not influence the interaction of the interface with other
modules, except for affecting careful user's experience :-)

On the contrary, IFF_UP, a.k.a. ``UP'', is an administrative flag
to be toggled from outside an interface driver.  A user can flip
it to shutdown the interface, or a network stack module may touch
it if it needs to (e.g., IP will bring an interface up to send a
gratuitous ARP upon configuring an IP address on it.)

-- 
Yar



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040807095801.GC39835>