Create a TCP/IP boot disk for installing Win2K/XP over the network

 When you study for the Windows 2000 MCSE exams, you will find that Microsoft places strong emphasis on the importance of knowing how to install operating systems over the network. One of the most common ways to accomplish this is by booting a system with a network boot disk that uses the TCP/IP protocol to connect to your network. Once you have connected to the network, you can access a network share that has the Windows 2000/XP installation files and install Win2K or XP on the computer. But even though Microsoft emphasizes this method on the MCSE exams—and despite its obvious advantages—very little information is actually available on how to create such a disk.

To help you capitalize on this useful technique, I'm going to explain how to create a TCP/IP network boot disk. I will discuss what is normally found on a floppy disk that will boot to the network, how to use the Windows NT Network Client Administrator to create the disk, and how to modify the disk with information specific to your network.


Basic features
The basic components of a TCP/IP network boot disk include the following:


Using the Windows NT Network Client Administrator
You could, of course, assemble all the necessary files and copy them to a floppy disk. However, you will find it far easier to use the Network Client Administrator utility. This utility will create a network boot disk based on your answers in some simple dialog boxes.

Unfortunately, the utility is old and hasn't been updated by Microsoft, so it does not contain current NIC drivers. As a result, you will have to manually modify the disk after running the utility. In addition, you will need to make other modifications to the configuration files, such as the location and name of the share point, to accommodate the specifics of the network you want to attach to.

Finally, you will find that even when perfectly configured, the disk probably won't work correctly because of insufficient memory. To get around this, you will have to add DOS memory management capabilities. In spite of all this tweaking, using the Network Client Administrator utility is still more efficient than starting from scratch.

The Network Client Administrator utility is not available on the Win2K or XP CD, but you can get it from a Windows NT 4.0 Server CD. Microsoft document Q252448 (http://support.microsoft.com/default.aspx?scid=kb;EN-US;q252448 ) provides instructions for using the utility with Windows 2000, which involves the following steps:

  1. Create a folder called C:\Ncadmin.
  2. Copy the following files from the I386 folder on the Windows NT Server 4.0 CD to the folder you created:
    Ncadmin.cn_
    Ncadmin.ex_
    Ncadmin.hl_
  3. At a command prompt, change to the C:\Ncadmin folder and then type the following command:
    expand -r ncadmin.*
  4. After all the files are expanded, double-click Ncadmin.exe and then follow the instructions for creating a Network Installation Startup Disk. The utility will present a list and ask you to choose the type of NIC you are using. As I mentioned, this list is old, so you will have to choose a NIC from the list and plan on modifying the disk later.


For the purposes of this example, I will use the Intel 10/100 Pro NIC, which uses a real mode driver named e100b.dos. Since the Intel 10/100 Pro NIC is not one of the choices in the Network Client Administrator, I chose the Intel 10mbps 16-bit NIC. That NIC uses a driver named exp16.dos.

You'll also be asked to choose whether the startup disk will use DHCP or a static address and to specify the client you want to use. Select Network Client v3.0 for DOS and Windows. In addition, you'll be asked to enter a computer name for the client to use, a user ID, and a domain.

An inspection of the contents of the newly created disk will show that the root of the disk contains the normal startup files, with Autoexec.bat and a Config.sys, along with a subdirectory called NET. The NET subdirectory contains the NIC driver, TCP/IP driver, Net.exe, Netbind.exe, various other files, and two important configuration files—Protocol.ini and System.ini.

The root directory of the newly created disk will contain the files shown in Listing A, in addition to the hidden files Io.sys and Msdos.sys.

Listing A

Directory of A:\
04/23/1999  10:22p              93,890 COMMAND.COM
03/21/2001  08:19a                  49 config.sys
03/21/2001  08:19a                 254 autoexec.bat
03/21/2001  08:19a      <DIR>          NET
               3 File(s)         94,193 bytes
               1 Dir(s)          47,104 bytes free



The NET subdirectory of the disk will contain the files shown in Listing B.

Listing B

Directory of A:\NET
 
03/21/2001  08:19a      <DIR>          .
03/21/2001  08:19a      <DIR>          ..
03/21/2001  08:19a                 372 system.ini
03/21/2001  08:19a                 410 protocol.ini
10/13/1996  05:38p               4,644 ifshlp.sys
10/13/1996  05:38p               4,468 ndishlp.sys
10/13/1996  05:38p             450,342 net.exe
10/13/1996  05:38p              76,234 net.msg
10/13/1996  05:38p             123,066 neth.msg
10/13/1996  05:38p               1,531 setup.inf
10/13/1996  05:38p               1,477 wcsetup.inf
10/13/1996  05:38p                 840 wfwsys.cfg
10/13/1996  05:38p                 622 shares.pwl
10/13/1996  05:38p              29,136 himem.sys
10/13/1996  05:38p             120,926 emm386.exe
10/13/1996  05:38p               4,294 emsbfr.exe
10/13/1996  05:38p                 817 lmhosts
10/13/1996  05:38p               2,619 nemm.dos
10/13/1996  05:38p               8,513 netbind.com
10/13/1996  05:38p                 395 networks
10/13/1996  05:38p              22,826 nmtsr.exe
10/13/1996  05:38p                795 protocol
10/13/1996  05:38p               4,174 tcpdrv.dos
10/13/1996  05:38p              71,040 tcptsr.exe
10/13/1996  05:38p                 233 tcputils.ini
10/13/1996  05:38p              37,024 tinyrfc.exe
10/13/1996  05:38p               3,325 umb.com
10/13/1996  05:38p              10,478 exp16.dos
10/13/1996  05:38p              21,940 protman.dos
10/13/1996  05:38p              13,782 protman.exe
              28 File(s)      1,016,323 bytes
               2 Dir(s)          47,104 bytes free

 

 

Page 2 of 2

Modifying the boot disk
Now that you have created the basic disk, you will need to make several modifications.

The Intel Ethernet 10/100 Pro and 10/100 Management NICs both use a different DOS driver from the one installed by the Network Client Administrator. The Network Client Administrator installed the driver exp16.dos. To correct this, I obtained the file e100b.dos from the Intel driver disk. I removed the exp16.dos file in the NET directory and replaced it with the e100b.dos file. If you are using a different NIC, you will need to obtain the correct driver from the manufacturer or one of several Web sites that have drivers available for download, such as DriverGuide.com.

In addition to the driver file in the NET directory, there are references to the exp16 driver in several locations in the configuration files Protocol.ini and System.ini. You'll need to replace these with the correct references. You should modify Protocol.ini as shown in Listing C and

Listing C

[Network.setup]
version=0x3110
Netcard=ms$ee16,1,MS$EE16,1 (Note: Replace with ms$e100b,1,MS$E100B,1)
transport=tcpip,TCPIP
lana0=ms$ee16,1,tcpip (Note: Replace with ms$e100b)
 
[ms$ee16] (Note: Replace with ms$e100b)
drivername=EXP16$ (Note: Replace with e100b$)
; IRQ=3
; IOADDRESS=0x310
; IOCHRDY=Late
; TRANSCEIVER=Thin Net (BNC/COAX)
 
[protman]
drivername=PROTMAN$
PRIORITY=MS$NDISHLP
 
[tcpip]
NBSessions=6
DefaultGateway0=
SubNetMask0=
IPAddress0=
DisableDHCP=0
DriverName=TCPIP$
BINDINGS=ms$16 (Note: Replace with ms$e100b)
LANABASE=0

 

System.ini as shown in Listing D.

Listing D

[network]
filesharing=no
printsharing=no
autologon=yes
computername=ST1
lanroot=A:\NET
username=Administrator
workgroup=LAB
reconnect=no
dospophotkey=N
lmlogon=0
logondomain=LAB
preferredredir=full
autostart=full
maxconnections=8
 
[network drivers]
netcard=exp16.dos (Note: Change to e100b.dos)
transport=tcpdrv.dos,nemm.dos
devdir=A:\NET
LoadRMDrivers=yes
 
[Password Lists]



 

Autoexec.bat file
The default Autoexec.bat created by the Network Client Administrator looks like this:
path=a:\net
a:\net\net initialize
a:\net\netbind.com
a:\net\umb.com
a:\net\tcptsr.exe
a:\net\tinyrfc.exe
a:\net\nmtsr.exe
a:\net\emsbfr.exe
a:\net\net start
net use z: \\SERVER1\Clients
echo Running Setup...
z:\msclient\netsetup\setup.exe /$

You will need to modify the last few lines to suit your own purposes. The net use command should map a drive to the share where setup files are located (e.g., a drive containing the Windows 2000 Professional setup files). The last two lines are not useful and should be deleted. You can add any additional lines you want, such as the winnt command with appropriate parameters.

Adding memory management
Finally, with all the modifications, you will probably find that when you get to the net start command in the Autoexec.bat, an “Insufficient memory” error message will occur. To correct this, you will need to obtain a copy of the DOS memory driver HIMEM.SYS (from a Windows 98 disk, for example) and copy it to the root of the startup disk. Having done that, add the following two lines to the Config.sys file:
DEVICE=HIMEM.SYS
DOS=HIGH,UMB

Summary
After you create and modify your disk, you may have several false starts as you test it. Carefully scrutinize every line in the configuration files and Autoexec.bat. Make sure that you have the correct real mode driver for your NIC, the correct UNC path for the share you want to connect to, and so forth. Once you have a network boot disk that functions correctly, make copies of it so you don’t have to start all over again if something happens to your disk. I recommend copying the entire contents to a file share, where it can be backed up regularly.

If you find yourself in a mass deployment of Windows, the effort you've put in here will be well worth it. This boot disk allows you to boot a system, connect to a network share, and install Windows over the network. And it saves you the hassle of having to carry around a bunch of CDs every time you install a system.