ifdown
Denys Vlasenko
vda.linux at googlemail.com
Thu Jun 23 13:04:10 UTC 2011
On Wed, Jun 22, 2011 at 11:10 PM, David Henderson
<dhenderson at digital-pipe.com> wrote:
>>> I think I see where the problem lies - I
>>> don't have a /var/run/ifstate file! What binary creates this file?
>>
>> ifup and ifdown. (Although on some systmes they aren't binaries,
>> they are scripts).
>>
>
> I'm assuming that since I don't call ifup, that might be why the file isn't
> being created... Perhaps this could be created manually so ifdown can work?
>
>>> I'm
>>> not configuring the iface by hand, but with utilities such as ifplugd,
>>> udhcp, and if* binaries.
>>
>> If you dont use ifup to up the iface, why do you use ifdown
>> to deconfigure it?
>>
>
> Because the script takes into account disconnected interfaces and assigns a
> 169.254.x.x address, thus a call to ifdown. With the problems experienced
> with the ifdown binary, a temporary (or permanent) work around is to use the
> ifconfig binary (which has no problems).
>
>>> Also, the /etc/network/interfaces file does
>>> get created in a script, but matches all the naming conventions and
>>> works just fine. Thoughts?
>>
>> You seem to be confused. /etc/network/interfaces should be edited by
>> admin, not created by scripts.
>>
>
> Nope, no confusion. /etc/network/interfaces is created dynamically by
> scripts which has actually produced less headache if NIC's are switched or
> configuration changes need to occur. Sure beats the "by hand" way of doing
> it! :)
You are trying to use ifup/ifdown in a wrong way.
Every tool has some design idea behind it, "how it supposed to be used".
ifup/ifdown tools are built with the assumption that user expesses his network
configuration in /etc/network/interfaces (such as "this iface is
static, this iface
is DHCP, ...") and then uses exclusively ifup/ifdown to up/down interfaces.
And ifup and ifdown will call necessary other lower-level programs to do
the requested operation - not the user.
Not that I like this design idea (I don't - it's doesn't cover a lot
of real-world
situations), but that's how ifup/ifdown are designed. If you really want to use
these tools, you are better to conform to their design.
Trying to use ifdown without ifup totally undermines it.
--
vda
More information about the busybox
mailing list