1.dhcp原理
dhcp是动态主机配置协议简称。对客户机动态分配TCP/IP信息如:IP地址 ,子网掩码 ,默认网关 ,首选DNS服务器等。使用dhcp可以减小管理员的工作量 ,减小输入错误的可能 ,避免IP冲突 ,当网络更改IP地址段时,不需要重新配置每台计算机的IP ,计算机移动不必重新配置IP。
DHCP租约过程:
1)客户机启动后发送DHCPDiscover广播,来发现dhcp服务器。
2)接受到DHCPDiscover消息后dhcp服务器回应客户机DHCPOffer消息其中包括将要分配给客户机的ip地址。
3)客户机已经知道了自己想要租借的地址,向所有DHCP服务器广播一个DHCPRequest。
4) 当DHCP客户机收到DHCPack消息时,它完成TCP/IP栈的初始化。
5)当租约时间过去50%时,客户机向提供该租约的DHCP服务器发送一个DHCPRequest,请求更新租约,如果更新成功重置租约时间,如果不成功则执行第6步。
6)客户机不能同提供租约的DHCP服务器通信,并且租约时间过去了87.5% 。进入重新申请状态,客户机发送DHCPDiscover包。
另外一种情况是:
曾经租借到IP地址的客户机重新启动时,广播一个DHCP Request消息 ,服务器应答一个DHCPack或DHCPNak消息 ,如果客户机在更新过程中未能定位一台DHCP服务器,它就试图ping当前租约中列出的缺省网关。
2.linux下dhcp的应用配置。
单区域配置
1)给作为dhcp服务器的主机分配一个静态ip地址。
[root@localhost ~]# setup
2)安装dhcp服务。
[root@localhost cdrom]# cd /mnt/cdrom/Server
[root@localhost Server]# rpm -ivh dhcp-3.0.5-21.el5.i386.rpm
3)配置作用域。网段为192.168.1.0/24, 网关为192.168.1.1,dns为222.88.88.88,主机名xht1.com
[root@localhost ~]# vim /etc/dhcpd.conf
配置地址池排除192.168.1.100-192.168.1.119
4)重启dhcp服务
[root@localhost ~]# service dhcpd restart
5)用一台xp主机测试
超级作用域配置
1)前面dhcp服务器的ip地址,dhcp服务已经配置过现在只需要配置作用域即可。
[root@localhost ~]# vim /etc/dhcpd.conf
配置超级作用域xht其中包括192.168.1.0/24,192.168.2.0/24
配置192.168.1.0/24 地址池
配置192.168.2.0/24地址池
2)重启dhcp服务
[root@localhost ~]# service dhcpd restart
3)用一台xp主机和一台linux主机作为客户机测试
xp主机网卡地址获取。
linux主机eth0配置
linux主机地址获取
dhcp中继配置
1)dhcp中继原理。
在一个企业网中也许只有一台dhcp服务器,这时其它网段的主机需要动态获取ip地址配置就需要dhcp中继。上面提到dhcpdiscover,dhcprequest等消息都是用广播的方式,而广播是不能穿越路由器的。dhcp中继有这样的作用,当dhcp广播来到中继端口时数据包的广播地址换为dhcp服务器地址,而源地址被换为主机的网关地址。这样dhcp广播信息就能穿越路由器了。
配置拓扑图如下:
2)配置dhcp服务器,由于dhcp服务已经安装现在就不需要安装了
dhcp服务器ip地址配置
dhcpd地址池的配置
192.168.1.0/24 为服务器所在网段配置如下
192.168.2.0/24网段为xht2.com网段此网段主机自动获取地址。
192.168.3.0/24网段为xht3.com网段此网段主机自动获取地址
3)重启dhcp服务
[root@localhost ~]# service dhcpd restart
4)用一台linux主机模拟成一台路由器(需要安装三块网卡)同时在这台主机上作dhcp中继服务。
5)配置三块网卡的ip地址
eth0配置
eth1配置
eth2配置
6)重启网络服务。开启这台linux主机路由转发功能
[root@station120 ~]# service network restart
[root@station120 ~]# vim /etc/sysctl.conf
第七行改为1
启动转发服务
[root@station120 ~]# sysctl –p
7) 为192.168.2.0/24,192.168.3.0/24.作中继
安装dhcp软件包
[root@station120 ~]# rpm –ivh dhcp-3.0.5-21.e15.i386.rpm
配置中继配置文件
[root@station120 ~]# vim /etc/sysconfig/dhcrelay
启动中继服务
[root@station120 ~]# service dhcprelay start
8)把vm2和vm3网卡地址配置为自动获取。
9)测试下面为两块网卡获取的地址及其他参数
vm2
vm3
至此所有配置完毕!