X-Original-To: alpine-devel@lists.alpinelinux.org Delivered-To: alpine-devel@lists.alpinelinux.org Received: from mail-bw0-f54.google.com (mail-bw0-f54.google.com [209.85.214.54]) by lists.alpinelinux.org (Postfix) with ESMTP id 446FD3617A29 for ; Thu, 22 Jul 2010 14:45:39 +0000 (UTC) Received: by bwz12 with SMTP id 12so1088022bwz.13 for ; Thu, 22 Jul 2010 07:45:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:received:date:message-id :subject:from:to:content-type; bh=7Z9NNr5NvqeNLxaHLLTOqmWnYb6srOQuuwl1w6iUSSs=; b=um4mBnwfrVKpUCLjIOqDyFCMw4a0Etv9MvRDMEEE4A9PabuYeC6H+QGJi9ACbTe8EF Bg6g2vYTB5fXVTV8RTCTeijfFjfOe7mroBfqPPT4k0CZGQW6FI2VLn9LmwxLv0FVUDjs EzdQfBGrYrYnlb1WPn60HqHNc/tddWLXnfik4= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:date:message-id:subject:from:to:content-type; b=ofFREYmvpDyJbMYOEhzgc8MkuJ0hgvZixwKiXq3Zi6Ga0qTAQRjAB37dIUgezJpHYX 1xt9azoir2i55e4XKDGr2mkIFIV/8ZffErzzTePFkek8gK1YrQ53exd2S8m75NRG/Syc NkxMjT4FqpZ/DZseRPg9QF7FHNTJm+JDAnYsQ= X-Mailinglist: alpine-devel Precedence: list List-Id: Alpine Development List-Unsubscribe: List-Post: List-Help: List-Subscribe: MIME-Version: 1.0 Received: by 10.204.102.2 with SMTP id e2mr1476732bko.112.1279809937755; Thu, 22 Jul 2010 07:45:37 -0700 (PDT) Received: by 10.204.57.198 with HTTP; Thu, 22 Jul 2010 07:45:37 -0700 (PDT) Date: Thu, 22 Jul 2010 16:45:37 +0200 Message-ID: Subject: [alpine-devel] [RFC] replace network config with dhcpcd From: Natanael Copa To: Alpine Developers Content-Type: text/plain; charset=ISO-8859-1 Hi, Here is a crazy idea: let dhcpcd handle all network config. Yes. dhcpcd is more than just a dhcp client, its like a netinterface monitoring tool that can do link detection, set static ip address, monitor ppp interface (and run hooks) and more. Why? Basically, ifup/ifdown and /etc/network/interfaces is not good enough. Some of the problems: * ifup -a (called by network start) will exit with failure if a dhcp configured interface fails. this is not good as since the "net" serivices is not started, none of the serivces depending on it won't start. So you won't be able ssh to your box if ISP (via dhcp) is down. * ifup , change interfaces file to static , ifdown && ifup. whoops! dhcp was not killed. * only a wrapper to configure vlans, bonding and ppp interfaces. (you put your script in the interfaces file) * no link detection (do actions when link is detected) * other distros seems to move to NetworkManager and such. Some benefits with dhcpcd * you can do fork to background on boot so "net" service starts sucessful, even if ISP is down so all services depending on net starts (firewall, sshd etc) * link detection * support for monitoring 3rdparty interfaces like ppp0 and execute hooks on events. (useful for multi-isp with failover) * dbus management interface that can modify the config file for you (will probably make the ACF coding simpler) * IPv4LL support (rfc 3927) Some drawbacks: * This is a *big* change that will basically break every configuration out there. Way scary. However, most of it is there already. Configuring static ip address and dhcp is there and works very well (with link detection - plug out cable and static ip goes away from interface - unless 'nolink' is configured in dhcpcd.conf) * we need figure out how to configure ppp interfaces and how to set up vlans/bond interfaces. Basically, we need to move the scripts some place else (dhcp hooks?) * there is currently no easy/obvious way to 'disable' an interface temporarily. Well, there is: 'ip link set dev eth0' down will flush the address and 'ip link set dev0 up' will have dhcpcd to reconfigure it. * lots of documentation needs to be written Thoughts? Since alpine-2.0 is breaking alots of things already, this might be a good time to break even more things... -- Natanael Copa --- Unsubscribe: alpine-devel+unsubscribe@lists.alpinelinux.org Help: alpine-devel+help@lists.alpinelinux.org ---