From mboxrd@z Thu Jan 1 00:00:00 1970 From: Avi Kivity Subject: Re: [PATCH] make kvm service script transfer dhclient settings correctly Date: Sun, 16 Sep 2007 11:52:56 +0200 Message-ID: <46ECFCF8.2020002@qumranet.com> References: <46EC11AE.9090408@hupie.com> <46ECF4E2.9000203@qumranet.com> <46ECF9DB.5020208@hupie.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Cc: kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org To: Ferry Huberts Return-path: In-Reply-To: <46ECF9DB.5020208-NbsvJix5b8QAvxtiuMwx3w@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: kvm-devel-bounces-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org Errors-To: kvm-devel-bounces-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org List-Id: kvm.vger.kernel.org Ferry Huberts wrote: > Avi Kivity wrote: >> Ferry Huberts wrote: >>> Hi list, >>> >>> I mailed about this earlier (may 7th, 2007) but the issue is still >>> there: the handling surrounding DHCP clients could be a bit improved... >>> >>> Currently every dhcp client gets killed after which a very basic >>> dhcp client is started for the dst interface, which is not really >>> inline with what the rest of the script does: the settings of the >>> src interface are transferred to the dst interface. >>> >>> I wrote a new patch to bring the handling of the dhcp client inline >>> with the reset of the script: >>> - only the dhclient that is running on the src interface gets killed, >>> - the commandline options of the killed dhcp client get reused for >>> the new dhcp client (running on dst) >>> - when no running dhcp client can be found on the src interface then >>> a basic dhcp client is started. >>> >>> There is only one assumption in this script: the interface on which >>> the dhcp client is running must be the last argument on the >>> commandline of the dhcp client. >>> >>> I checked this assumption for Fedora 6 and 7 and it is met. >>> >>> The patch is against kvm-snapshot-20070914 (since kvm-39 does not >>> allow insertion for me) >>> >>> Hope this patch is a bit more palatable for you than the previous >>> one :-) >>> >> >> >> I really recommend against using the kvm initscript... it is fragile >> is broken. On Fedora, you can use the standard initscripts (well, >> they are fragile and broken too, but they are more complete than the >> kvm initscript): >> >> [avi@blast ~]$ cat /etc/sysconfig/network-scripts/ifcfg-sw0 >> DEVICE=sw0 >> BOOTPROTO=dhcp >> HWADDR=00:0F:EA:6E:1E:F0 >> ONBOOT=yes >> TYPE=Bridge >> DHCP_HOSTNAME=blast >> >> [avi@blast ~]$ cat /etc/sysconfig/network-scripts/ifcfg-eth0 >> DEVICE=eth0 >> BRIDGE=sw0 >> HWADDR=00:0F:EA:6E:1E:F0 >> ONBOOT=yes >> TYPE=Ethernet >> >> >> This setup starts dhcp directly on the bridge, without the need to >> move things around. See especially the 'TYPE=Bridge' and >> 'BRIDGE=sw0' statements. >> >> Is there a reason to use the kvm initscript instead of this? >> > no, just thought that since it's included in the kvm distribution I'd > use it. Seemed a logical conclusion that this one would be the > recommended way to do it. I'll just as happy convert to the > distribution scripts now. But maybe it's a good idea then to remove > the script and replace it with a text file on how to setup the config > files. If you don't remove the script maybe the patch can go in? At > least it makes the script more robust than it is. > I'll remove the script unless anyone sees an objection? > You seem to use the same MAC address for both your interfaces Avi. Is > this on purpose? Not really. I just added lines until it worked. But I think it makes sense -- you need the mac address for eth0 so it can detect the card, and you need one for the switch, and since the real card won't use its address this is a good choice. -- error compiling committee.c: too many arguments to function ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/