WVC CTS PXE Server Project

News

Windows RE (2/7/12)

Windows Recovery Environment can now be booted from the "Windows Install" section

Server Running (1/31/12)

PXE boot server up and providing Windows Server 2008 R2 installs. Configure BIOS to boot off NIC to access. Dell machines in the lab require PXE booting to be enabled as well. Currently only two IP addresses are available. If server is unavailable ask for DHCP leases to be cleared. (Moved everything to separate subnet off 2nd NIC)

Use stc.expecafllort|rotartsinimdA#stc.expecafllort|rotartsinimdA and b@nhamm3r when prompted for username/password.

Service for Virtual Box

Cancel out of 'First Time Run Wizard' and push F12 during virtual boot.

(Tutorial)

Welcome

About

This project is intended to provide PXE boot services for the WVC CTS lab. Ideally this server will provide some or all of the following services upon network boot:

  • Windows Installation
  • Linux Installation
  • 'Default' images for Dell PC's & servers from Yahoo
  • Imaging
  • Bootable rescue/system utilities
  • A basic 'Internet Only' Linux distro for live network booting

Subjects

This project will cover a wide range of topics including:

  • Boot process
  • DHCP
  • TFTP
  • HTTP
  • File Services Role
  • NFS
  • FTP
  • Windows Deployment Services
  • SYSLINUX/PXELINUX/WDSLINUX
  • Linux installation process
  • DNS
  • Active Directory
  • Various imaging software

Design

The project will likely consist of two servers: Win 2k8 and a Linux distro. The primary purpose of the Windows 2k8 server is to provide full installations (vs imaging) of Windows OS through Windows Deployment Services, DHCP and DNS services, and file share services (and NFS for UNIX based OS). The primary purpose of the Linux server is to provide simplicity of HTML services, open source imaging software, and simplicity of apt-mirror program (why download repositories when we can mirror them locally?). DHCP is a primary concern if this server is to be available outside the server room and inside the lab. Effects of running unrestricted DHCP to all workstations is unknown (havoc?). Boot menu designed with vesamenu.c32 for basic (customizable) GUI and user friendly experience.

PXE Boot Requirements

PXE booting requires DHCP services, TFTP services, and a network interface card capable of PXE booting. DHCP is required to provide network configuration upon boot, and TFTP is required to provide files for boot.

Windows Installation Requirements

To install Windows off a network boot (as opposed to imaging) Windows Deployment Services are required. Boot and installation images (.wim) can easily be imported off of Windows installation .iso files and DVD's. The WDS role in Windows Server 2008 also provides TFTP services.

Linux Installation Requirements

There are many methods for installing Linux and requirements will vary not only between distros but also versions and chosen protocols. Primarily a kernel and an image of some sort are required to boot Linux installations (and live boots).

Initial Setup (I):

Win 2k8 server with AD DS, DNS, DHCP, and WDS roles installed. Configure DHCP scope for private addressing, 10 addresses. Authenticate DHCP with AD. Authenticate WDS. Configure (and/or trick) WDS in to booting pxelinux. Prepare boot menu with WDS install, Linux install, and Parted Magic Boot options. Prepare boot.wim and install.wim files from Win 7 Install DVD and Win 2k8 Install DVD. Download Ubuntu NetBoot files and place in appropriate directory. Download Parted Magic PXE files and place in appropriate directory.
Server will now be able to provide PXE boot services to clients, provide installation services for Windows and Ubuntu, and provide a live boot of Parted Magic.

phase1.png

Integration (II):

Migrate from isolated network. (?) Install File Services role with NFS sharing. Setup NFS share accessible by PXELINUX clients. Add new distro installs and utilities capable of receiving images over NFS (Ubuntu .isos may be possible. This step is crucial as TFTP protocols are extremely slow.) Perform testing of Windows based imaging services.

phase2.png

Linux (III):

Set up Linux based server. Install and configure Apache to serve files through HTTP to PXELINUX clients. Perform testing of Linux based Imaging software. Mirror desired Linux distros and repositories. Potentially migrate TFTP and NFS services to Linux.

phase%203.png

Current


2/7/12
http://www.windows-noob.com/forums/index.php?/topic/261-how-can-i-capture-an-image-using-wds/
http://www.windows-noob.com/forums/index.php?/topic/264-how-can-i-deploy-an-image-captured-using-wds/
http://www.windows-noob.com/forums/index.php?/topic/195-how-can-i-sysprep-windows-vista/

1/31/12

(http://www.windowsnetworking.com/articles_tutorials/Deploying-Windows-7-Part24.html
http://social.technet.microsoft.com/Forums/en-US/mdt/thread/206fca59-3676-44e0-898c-e09f3f0bb06b/
http://technet.microsoft.com/en-us/library/dd348456%28WS.10%29.aspx
these will be useful later)

Connected 2nd NIC to network and things worked without a hitch. DHCP now assigning addressing between 192.168.151.10 and 192.168.151.100 with a day and a half lease time (to allow for students to leave an install running overnight and still have a DHCP lease with time to work the next day.)

http://technet.microsoft.com/en-us/library/cc728205%28WS.10%29.aspx
http://technet.microsoft.com/en-us/library/cc758865%28WS.10%29.aspx

Looks like it needs a VLAN (which sounds like a project on its own) or to connect the other NIC in the server to get the server to respond to DHCP under the 192.x.x.x subnet. Server room is currently locked. Moving on from that problem for now…

Attempted PXE only filter. Turns out BOOTP != PXE boot request. Attempted to pull DHCP clients to a private network. No DHCP response. Most likely has to do with the server being at 134.x.x.x and address scope being at 192.x.x.x

Successfully booted in to WinPE with Dell Workstation. Drivers injected using second method linked below (through Server Manager under a WDS Wizard). Worked easily.

Netbook boots and installs. Definitely need to inject drivers in to boot.wim. :(
http://communities.intel.com/message/139027
http://tristanwatkins.com/index.php/adding-drivers-wds-boot-images/

Two ways to do it. Trying the one without WAIK first as I can't get it to download.

1/30/12
Might have to inject drivers. Not sure if it's coincidental that there's no vbox drivers either or if the problem lies elsewhere. May have to bring in netbook (known good pxe booter) for testing.
http://apcmag.com/how_to_inject_drivers_into_microsofts_free_os_windows_pe_20.htm

VirtualBox needs an extension to PEXE boot. That explains a lot. No network card driver for VBox either.

Successfully PXE booted workstation. BIOS options must be set to allow PXE boot. (this was set earlier and reset later? may be flaky) No install image for NIC, must be using MAC addresses instead of serving all. No driver for NIC card. That sucks.

changed advanced settings in scope to respond to both dhcp and bootp. restarted service (haven't been doing that…) and server now responds to virtual box with dhcp but no tftp (this is expected behavior.).


DHCP listening on port 67 caused the error. Ran cmd: WDSUTIL /set-server /UseDHCPPorts:No /DHCPOption60:yes WDS now starts. This doesn't explain port scan results. Still no IP from PXE boot. 0
http://social.technet.microsoft.com/forums/en-US/winserversetup/thread/f4111142-58eb-4ad7-ae01-0e00c5d809bf/ .


Enabled logging in windows firewall. No packets dropped.
this looks handy:
http://serverfault.com/questions/26564/how-to-check-if-a-port-is-blocked-on-windows


Found something that might work for only boot request response. DHCP was not working because WDS was not installed and Win2k8 will not respond unless configured to by WDS. Now have WDS installed but still not responding to DHCP requests. nmap shows port not open. WDS event shows it cannot open the port because it's in use. Same error with firewall disabled.
10am
Looks like Win 2k8 doesn't include an option in DHCP to respond only to boot requests. Linux does. Might have to build Linux server immediately. Keep seeing references to being able to solve this with vlans.
9am
DHCP requests can be differentiated. possible to route only boot requests? Need DHCP packets routed through fishbowl and Wireshark remote traffic.
+++ Problem
1/26/12
Need to configure two NICs. Need internet access (for team viewer) and a private network on other.
http://windows.microsoft.com/en-US/windows-vista/Configuring-multiple-gateways-on-a-network
(http://www.howtogeek.com/howto/windows/adding-a-tcpip-route-to-the-windows-routing-table/) <
- something else that could come in handy


configured according to windows guide (linked above). cmd: "route -p ADD 134.39.158.0 MASK 255.255.255.0 192.168.1.0" .0 in mask may cause error. needs testing.

[RESOLVED](ish) unable to capture packets off wireshark outside fishbowl room. Need tester box inside fishbowl room for both wireshark (as it appears yahoo servers don't want to run it smoothly) and PXE boot

Server not wanting to run wireshark. receiving no packets and not displaying properly.

server not responding to dhcp requests (according to wireshark) rogue dhcp running at .116? [resolved]

Trying to figure out DHCP settings. Need to keep pxe boot clients on 192.x.x.x addresses while keeping internet connection for team viewer.
http://www.windowsreference.com/windows-2000/how-to-addassign-multiple-ip-address-in-vistaxp20002003/http://technet.microsoft.com/en-us/library/dd183602%28WS.10%29.aspx
http://www.windows-server-answers.com/microsoft/Windows-Server-Networking/29760362/how-to-limit-dhcp-server-address-assignment-to-a-single-network-card.aspx
Bridge two adapters? Use single adapter?


Login

1/25/12
Server (should be) in fishbowl room. Team Viewer installed with username under 'trollfacepxe'. Default 'usernames'/'passwords' should = trollfacepxe/banhammer or variations thereof depending on password requirements (B@nhamm3r). If something is inaccessible just ask for pass. Feel free to log in to the server with Team Viewer and look around.

Current to do:

(If anything interests you feel free to try it)

Remote Desktop

  • Install and set up

AD DS

  • Install role
  • Run dcpromo.exe (use trollfacepxe.cts for domain)
  • Users added
    • Add a user account for Windows installation clients (prompted for during install)
    • Add less privileged accounts to manage different roles
  • Permissions/Authentication configured
  • Ensure all other server roles are authenticated and necessary permissions are set

DNS

  • Install role

DHCP

  • Install role

WDS

  • Install role
  • Import Windows 7 images
    • Import images from Windows 7 install DVD or .iso
  • Import Windows Server 2008 R2 images
    • Import images from Windows Server 2008 R2 DVD or .iso

WDSLINUX

  • Download SYSLINUX
    • Google it. Download the whole thing.
  • Install files to appropriate directories
    • Extract files for WDSLINUX, follow wiki, adapt as necessary

Upcoming to do:

DHCP

  • Configure DHCP settings
  • Assign address pool
  • Authorize with AD

AD DS

  • Manage permissions of other 'administrators'
  • Assign different accounts authority over roles
  • Ensure all necessary files are properly accessible by clients

File Server

  • Install role
  • Install NFS
  • NFS is used to allow UNIX/Windows file sharing
  • Establish file sharing directories containing .iso images
  • Ensure Linux compatibility through NFS

Questions:

Linux Server

  • Is it necessary?
  • Distro to use?

Linux Installation

  • What distros to support?
  • Install methods supported by distros?
  • PXE Install available? Live Boot? NetBoot?
  • Supported PXE boot methods?
  • Protocol to get install image? HTTP? NFS? TFTP?

WDS

  • How necessary is this?
  • Is this the only option for Windows installation? (Install, not image)
  • Use for imaging?

TFTP

  • Run on Linux or 2k8 through WDS?

DHCP

  • Isolated subnet?
  • Send PXE boot clients to a private network (192.x.x.x) or…?
  • Run DHCP for entire lab or isolated network?
  • Strictly AD-HOC/separate hub connection to server or anywhere in lab?
  • Can DHCP be run for only PXE boot?
  • Address range to use
  • Pool size
  • How many addresses to use?
  • What to configure on boot?
  • DNS? Default gateway? Does DHCP need to automatically set up Internet access?
  • Would DHCP configured Internet access be havoc in the lab?

HTTP Server

  • To mirror or not to mirror?
  • Run on which server?

AD DS

  • Can the log on box during Windows installation be disabled?

Ongoing Maintenance:

  • Update 'manual'/wiki
  • Manage users on servers/security
  • Manage images, .isos, and necessary file download and placement
  • Update comments, change logs, readme's and help files
Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License