WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-users

Re: [Xen-users] GPLPV and dhcp should it work?

To: Pasi Kärkkäinen <pasik@xxxxxx>
Subject: Re: [Xen-users] GPLPV and dhcp should it work?
From: Silviu Paragina <silviu@xxxxxxxxxxx>
Date: Mon, 14 Sep 2009 18:23:48 +0300
Cc: xen-users@xxxxxxxxxxxxxxxxxxx
Delivery-date: Mon, 14 Sep 2009 08:24:34 -0700
Dkim-signature: v=1; a=rsa-sha1; c=relaxed; d=paragina.ro; h=message-id :date:from:mime-version:to:cc:subject:references:in-reply-to :content-type; s=doradusmail; bh=dd2IW85+j83Tg2s2IuOx53HULEM=; b= HIo9pgmLFCNVJb2frXx9EshDIjfRJDBHIsuzgBH0jn0D5UzpOYHq2L/YPh7J0bR9 CvKUKY8ZcG80LL6eA6DqIarNHbygSn98HloQPFpKaSU6f96CeAEd4axwr34Ttuwp 60rSnlbM0ARoRzzJVwlLT2sA93E2Q0we/wkL1o4zEEY=
Domainkey-signature: a=rsa-sha1; c=nofws; d=paragina.ro; h=message-id :date:from:mime-version:to:cc:subject:references:in-reply-to :content-type; q=dns; s=doradusmail; b=ofaL2/tutu4/8ZTR4UXYTg72q MqPEcuHnKK80U6SbzWGVoVcDov1B6dPfCTppS/F+QCEKETM+Onndz4qfnTc6Vv25 LP/0QckZOkDI+89tavg3xeJE59sIxAeHlhq/urpXdXCZysN5vetjI4laawkC3scF Xv55h3JKWmDueua9vo=
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <20090914151630.GI31123@xxxxxxxxxxx>
List-help: <mailto:xen-users-request@lists.xensource.com?subject=help>
List-id: Xen user discussion <xen-users.lists.xensource.com>
List-post: <mailto:xen-users@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-users>, <mailto:xen-users-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-users>, <mailto:xen-users-request@lists.xensource.com?subject=unsubscribe>
References: <4AAE5C82.2000803@xxxxxxxxxxx> <20090914151630.GI31123@xxxxxxxxxxx>
Sender: xen-users-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Thunderbird 2.0.0.23 (Windows/20090812)
I was sure I forgot something :">

There is no physical interface, I use a stripped down network-bridge that doesn't add any physical interface to the bridge. I have attached it here. The vif script is the standard bridge one.

Also I have tried gplpv from this packages: "gplpv_chk_wlh_x86_0.10.0.83.msi" and "gplpv_chk_wlh_x86_0.10.0.86.msi"


Silviu


Pasi Kärkkäinen wrote:
On Mon, Sep 14, 2009 at 06:08:50PM +0300, Silviu Paragina wrote:
My problem:
I have
- a xen ubuntu 9.04 with xen from the repository (3.3.0 with some patches) and the debian kernel
- windows 2008 server guest with the attached config
- dhcp3 server with the attached config

If I leave everything as is (without gplpv) everything works great.
If I install gplpv and remove type=ioemu from the config the machine can not get the ip, but if I manually set the ip address it works fine.
On the dhcp server side I get "dhcpd: 5 bad udp checksums in 5 packets"


What's the physical NIC you have?
Please run "ethtool -i peth0" in dom0.

Also check the offloading settings in dom0 for the NIC:
"ethtool -k peth0"

-- Pasi

I have tried Checksum offloading from properties on the xen network device with no luck. I shall try again anyhow (I might have missed something, because I had other issues with xen at the time).

Also on another note the iso image, attached as a cdrom, vanishes after I install the drivers, but this doesn't matter much.

Searching with google I have found a few sites some that say this is solved, some that say to disable Checksum offloading, but all sites I have found refer to the 0.9.x version of the drivers, so I'm not sure of anything. Is this how they are supposed to act?



Silviu

ddns-update-style none;
default-lease-time 600;
max-lease-time 600;
log-facility daemon;


#dhcpd.conf part


subnet X.X.0.0 netmask 255.255.0.0 {
        range X.X.1.0 X.X.1.255;
        option domain-name-servers X.X.X.X, X.X.X.X;
        #option domain-name "internal.example.org";
        option routers X.X.0.1;
        #option broadcast-address X.X.255.255;
        #default-lease-time 600;
        #max-lease-time 7200;
host w2008 {
                hardware ethernet 00:16:3E:XX:XX:XX;
                fixed-address X.X.0.3;
        }
}



import os, re
arch = os.uname()[4]
if re.search('64', arch):
    arch_libdir = 'lib64'
else:
    arch_libdir = 'lib'

kernel = "/usr/lib/xen/boot/hvmloader"
builder='hvm'
memory = 1000

# Should be at least 2KB per MB of domain memory, plus a few MB per vcpu.
shadow_memory = 32
name = "w2008"
vif = [ 'mac=00:16:3E:XX:XX:XX,type=ioemu,bridge=xenbr,vifname=w2008' ]
localtime = 1
dhcp = 'dhcp'
acpi = 1
apic = 1
disk = [ 'file:/var/lib/images/xenwin2008.img,hda,w', 
'file:/var/lib/images/windows2008x86.iso,hdc:cdrom,r' ]
vcpus = 2
#cpu = 1
#cpus = 1
device_model = '/usr/' + arch_libdir + '/xen/bin/qemu-dm'

#-----------------------------------------------------------------------------
# boot on floppy (a), hard disk (c) or CD-ROM (d) # default: hard disk, cd-rom, floppy
boot="dc"
sdl=0
vnc=1
vncconsole=1
vncpasswd=''

serial='pty'
usbdevice='tablet'


_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-users

_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-users

#!/bin/bash
#============================================================================
# Default Xen network start/stop script.
# Xend calls a network script when it starts.
# The script name to use is defined in /etc/xen/xend-config.sxp
# in the network-script field.
#
# This script creates a bridge (default ${netdev}), adds a device
# (defaults to the device on the default gateway route) to it, copies
# the IP addresses from the device to the bridge and adjusts the routes
# accordingly.
#
# If all goes well, this should ensure that networking stays up.
# However, some configurations are upset by this, especially
# NFS roots. If the bridged setup does not meet your needs,
# configure a different script, for example using routing instead.
#
# Usage:
#
# network-bridge (start|stop|status) {VAR=VAL}*
#
# Vars:
#
# bridge     The bridge to use (default ${netdev}).
# netdev     The interface to add to the bridge (default gateway device).
# antispoof  Whether to use iptables to prevent spoofing (default no).
#
# Internal Vars:
# pdev="p${netdev}"
# tdev=tmpbridge
#
# start:
# Creates the bridge as tdev
# Copies the IP and MAC addresses from pdev to bridge
# Renames netdev to be pdev 
# Renames tdev to bridge
# Enslaves pdev to bridge
#
# stop:
# Removes pdev from the bridge
# Transfers addresses, routes from bridge to pdev
# Renames bridge to tdev
# Renames pdev to netdev 
# Deletes tdev
#
# status:
# Print addresses, interfaces, routes
#
#============================================================================


dir=$(dirname "$0")
. "$dir/xen-script-common.sh"
. "$dir/xen-network-common.sh"

findCommand "$@"
evalVariables "$@"

bridge=${bridge:-xenbr}
antispoof=${antispoof:-no}


   
do_ifup() {
    if ! ifup $1 ; then
        logger -t xen "Couldn't bring $1 up"
    fi
}

##
# link_exists interface
#
# Returns 0 if the interface named exists (whether up or down), 1 otherwise.
#
link_exists()
{
    if ip link show "$1" >/dev/null 2>/dev/null
    then
        return 0
    else
        return 1
    fi
}

# Set the default forwarding policy for $dev to drop.
# Allow forwarding to the bridge.
antispoofing () {
    iptables -P FORWARD DROP
    iptables -F FORWARD
    iptables -A FORWARD -m physdev --physdev-in ${pdev} -j ACCEPT
}

# Usage: show_status dev bridge
# Print ifconfig and routes.
show_status () {
    local bridge=$1
    
    echo '============================================================'
    ip addr show ${bridge}
    echo ' '
    brctl show ${bridge}
    echo ' '
    ip route list
    echo ' '
    route -n
    echo '============================================================'
}

op_start () {
    if [ "${bridge}" = "null" ] ; then
        return
    fi

    if link_exists "${bridge}"; then
        # The device is already up.
        return
    fi

    create_bridge ${bridge}

    do_ifup ${bridge}

    if [ ${antispoof} = 'yes' ] ; then
        antispoofing
    fi
}

op_stop () {
    if [ "${bridge}" = "null" ]; then
        return
    fi
    if ! link_exists "$bridge"; then
        return
    fi

    brctl delbr ${tdev}
}

case "$command" in
    start)
        op_start
        ;;
    
    stop)
        op_stop
        ;;

    status)
        show_status ${bridge}
        ;;

    *)
        echo "Unknown command: $command" >&2
        echo 'Valid commands are: start, stop, status' >&2
        exit 1
esac
_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-users