WDS与Linux DHCP结合

 最近在琢磨Windows Deployment Service(WDS),按照微软的step by step文档安装测试了一下。效果还是不错的,唯一有点麻烦的是windows的DHCP总觉得不如Linux下的ISC DHCP好用,可能我习惯了那个配置方法吧。于是想把DHCP功能从WDS中分离出来,用Linux DHCP来代替,经过一番实验,达到了这个目的,下边把过程记录一下。

1.安装一台windows 2003 R2,安装以后将这台机器的角色变成Domain Controller(包括AD和D NS),不要 安装DHCP服务。
2.在上边安装好的Windows 2003服务器中添加Windows组件"Windows Deployment Service",这个可以参考 这篇文档,注意的是安装完以后配置的时候 不要钩选  "不侦听端口67"和" 将DHCP选项标记为 #60 配置为PXEClient"这两个选项,因为DHCP没有安装在这台主机上。
3.另外安装一台Linux服务器,我选的是CentOS 4.7,安装ISC DHCP服务,进行配置,我的示例文件如下:

authoritative;
allow booting;
allow bootp;
boot-unknown-clients false;
default-lease-time 600;
max-lease-time 7200;
option ip-forwarding true;
option mask-supplier false;
ddns-update-style none;
subnet 192.168.152.0 netmask 255.255.255.0 {
               range 192.168.152.1 192.168.152.99;
               option vendor-class-identifier "PXEClient";                                               
               option vendor-encapsulated-options 01:04:00:00:00:00:ff;                     
               option routers 192.168.152.254;
               option domain-name-servers 218.22.22.33,220.11.22.22;
}
#*********windows Server******Arch: i386
group {
next-server 192.168.152.200;                                           
option bootfile-name "boot/x86/wdsnbp.com";             
host TESTHOST { hardware ethernet   00:0C:29:17:23:23; fixed-address   192.168.152.22; }
}

#*********Linux Server******Arch: i386
group {
next-server 192.168.152.200;
filename "linux/pxelinux.0";
host linuxnode { hardware ethernet   00:0C:29:94:AA:BB; fixed-address   192.168.152.55; }
}
其中下边这几行是关键:
option vendor-class-identifier "PXEClient";                                                   # DHCP option 60 定义PXEClient
option vendor-encapsulated-options 01:04:00:00:00:00:ff;     # DHCP option 43 定义立即读取文件
next-server xx.xx.xx.xx;                                                                                                  # DHCP option 66 定义tftp server 地址
option bootfile-name "boot/x86/wdsnbp.com";                                        # DHCP option 67 定义bootfile的文件名
 
这样就可以了。

其中为什么这么定义,可以参考 这篇文档,我在测试过程中也使用了wireshark进行了抓包分析,具体就不贴了。

[参考文档]
http://nssadoc.blogspot.com/2008/06/differential-analysis-wds-dhcp.html
http://nssadoc.blogspot.com/2008/06/revisit-differential-analysis-wds-wds.html
http://technet.microsoft.com/en-us/library/cc766320.aspx
http://support.microsoft.com/kb/926172/zh-cn
http://article.pchome.net/content-513821.html

 

你可能感兴趣的:(linux,DHCP,休闲,wds,MDT)