[Pkg-virtualbox-devel] Bug#582226: virtualbox-ose: PXE stack provides 0.0.0.0 as address for TFTP server for WDS' wdsnbp.com
paul.millar at desy.de
Wed May 19 08:57:04 UTC 2010
I'm trying to use Windows Deployment Service (WDS) to auto-deploy Windows to a
VirtualBox image via network PXE boot. As part of this installation process,
the central server will attempt to wipe the virtual machine's hard-disk and
install a Windows setup.
Here's what happens after the main BIOS initialisation has completed:
1. the (virtual) machine BIOS/network card issues a DHCP request.
2. the DHCP server replies with information, including the machine's IP
address, PXE image filename and TFTP server's IP address.
3. the machine successfully downloads (via TFTP) the PXE image: wdsnbp.com
4. the PXE image (wdsnbp.com) starts.
5. wdsnbp.com detects the VirtualBox image's architecture (x86)
6. wdsnbp.com attempts to acquire an architecture-specific installer via
The problem is with the last step: wdsbnp.com attempts to contact the TFTP
server with IP address 0.0.0.0. Not surprisingly, this attempt fails: the
attempt to TFTP the required file from this IP address solicits no replies and
the attempt eventually times-out.
Inspection of the network packets shows that the DHCP server-provided
information does not contain this incorrect IP address; therefore, it seems
that either the PXE stack has become corrupted or WDSNBP is expecting the TFTP
server's IP address to be stored by some means that the current VirtualBox
BIOS/PXE stack doesn't support.
The network driver is connected to a physical interface (eth0) via an internal
bridge, so the machine's network adapter is using the "bridge adapter" option.
The above behaviour happens with both the PCnet-FAST III and PCnet-PCI II
adapter emulation. None of the emulated Intel devices (Intel PRO/1000 MT
82540EM, Intel PRO/1000 T 82543GC, Intel PRO/1000 MT 82545EM) succeed with step
1. above: they all fail to issue a DHCP request.
I believe VirtualBox has built-in support for PXE-booting by including code
from the Etherboot project. This appears to be where the problem lies.
Unfortunately, the Etherboot project itself appears moribund; instead, activity
is focused towards the gPXE project, which is an off-shoot of Etherboot.
Following the instructions here:
I was able to get VirtualBox to boot from a gPXE boot ROM, built from current
trunk (well, origin/master since it's git).
Perhaps the solution to this bug is to switch to using a gPXE image in
VirtualBox. If direct integration within VirtualBox is awkward, this could be
achieved by building a suitable gPXE ROM image and including it with the
-- System Information:
Debian Release: squeeze/sid
APT prefers unstable
APT policy: (990, 'unstable'), (500, 'oldstable'), (500, 'stable'), (1, 'experimental')
Architecture: i386 (i686)
Kernel: Linux 2.6.32-20100317 (SMP w/2 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash
Versions of packages virtualbox-ose depends on:
ii adduser 3.112 add and remove users and groups
ii libc6 2.10.2-6 Embedded GNU C Library: Shared lib
ii libcurl3 7.20.1-1 Multi-protocol file transfer libra
ii libgcc1 1:4.4.3-9 GCC support library
ii libpng12-0 1.2.43-1 PNG library - runtime
ii libsdl1.2debian 1.2.14-5 Simple DirectMedia Layer
ii libssl0.9.8 0.9.8n-1 SSL shared libraries
ii libstdc++6 4.4.3-9 The GNU Standard C++ Library v3
ii libx11-6 2:1.3.3-3 X11 client-side library
ii libxcursor1 1:1.1.10-2 X cursor management library
ii libxext6 2:1.1.1-3 X11 miscellaneous extension librar
ii libxml2 2.7.7.dfsg-2 GNOME XML library
ii libxmu6 2:1.0.5-1 X11 miscellaneous utility library
ii libxt6 1:1.0.7-1 X11 toolkit intrinsics library
ii python 2.5.4-9 An interactive high-level object-o
ii python-central 0.6.16 register and build utility for Pyt
ii python2.5 2.5.5-6 An interactive high-level object-o
ii zlib1g 1:18.104.22.168.dfsg-3 compression library - runtime
Versions of packages virtualbox-ose recommends:
ii libgl1-mesa-glx [libgl1] 7.7.1-1 A free implementation of the OpenG
ii libqt4-opengl 4:4.6.2-4 Qt 4 OpenGL module
ii libqtcore4 4:4.6.2-4 Qt 4 core module
ii libqtgui4 4:4.6.2-4 Qt 4 GUI module
ii virtualbox-ose-dkms 3.1.6-dfsg-2 x86 virtualization solution - kern
ii virtualbox-ose-qt 3.1.6-dfsg-2 x86 virtualization solution - Qt b
ii virtualbox-ose-source 3.1.6-dfsg-2 x86 virtualization solution - kern
Versions of packages virtualbox-ose suggests:
ii libasound2 1.0.22-2 shared library for ALSA applicatio
ii libpulse0 0.9.21-1.2 PulseAudio client libraries
pn virtualbox-guest-additions <none> (no description available)
-- debconf information:
* virtualbox-ose/upstream_version_change: true
More information about the Pkg-virtualbox-devel