Desired behaviour of "ifconfig -alias"

Jeremy Chadwick koitsu at
Fri Feb 9 21:49:09 UTC 2007

On Fri, Feb 09, 2007 at 04:06:56PM -0500, Kevin Way wrote:
> I recently ran into a bug in the jail startup scripts that caused this
> command to be executed:
>     ifconfig bce0 -alias
> It turns out that this command eliminated the primary IP for the device.
> man ifconfig defines the behavior of -alias to be:
>      -alias  Remove the network address specified.  This would be used
> if you
>              incorrectly specified an alias, or it was no longer needed.  If
>              you have incorrectly set an NS address having the side
> effect of
>              specifying the host portion, removing all NS addresses will
> allow
>              you to respecify the host portion.
> I can't help but wonder if it would be better behavior to throw an error
> when no
> argument is supplied.
> The only discussion I found of this in a quick search of the archives
> was a post in
> 2004 which noted that the fxp driver actually deletes all IP addresses,
> but there was
> no significant follow-up.
> Should ifconfig throw an error if no address is supplied?

My vote is for either 1) an error, or 2) delete all of the aliases
associated with that interface.  If I had a preference, I'd choose #1.

I'd argue that -alias doing what you described (removing the non-aliased
IP bound to the iface) when no inet/inet6 arguments are suppied is
indeed a bug.

| Jeremy Chadwick                                 jdc at |
| Parodius Networking               |
| UNIX Systems Administrator                   Mountain View, CA, USA |
| Making life hard for others since 1977.               PGP: 4BD6C0CB |

More information about the freebsd-stable mailing list