环境描述:
一台DHCP服务器,ip地址为192.168.0.1(其中DHCP服务器的网关指向中继代理的ip地址192.168.0.2)
服务器上建立2个作用域,分别为:192.168.0.50—192.168.0.100,192.168.1.50—192.168.1.100。
一台机器为DHCP中继代理,为双网卡,分别为:192.168.0.2、192.168.1.1,代理192.168.1.0/24网段
一台dhcp客户机。
目标:实现192.168.1.0/24网段的客户机通过dhcp服务器动态获取到ip地址。
注意:此实验在虚拟机中完成,当全部用桥接的时候效果没做出来,郁闷!最后网卡绑定如下:
DHCP服务器绑定到vmware2上面
DHCP中继代理的第一块网络(和dhcp服务器在同一网段的那块网卡)同样绑定到vmware2上面
其余的为桥接状态
建立作用域就不说了,上一篇文章中有提到,假设此时我们已经建立好了作用域,当我们让客户机动态获取ip地址的时候,可以发现它根本获取不到,会提示本地连接受限制,因为它和dhcp服务器根本不在一个网段,这时如果想让客户机顺利通过dhcp服务器获取到ip地址的话,我们需要配置dhcp中继代理,具体配置如下:
在充当DHCP中继代理的那台计算机上打开“管理工具”—“路由和远程访问”,打开后,会发现一个红色向下的箭头,表明路由和远程访问并没有被启用。
这时需要启用一下,右击SERVER选择“配置并启用路由和远程访问”
这时出现“路由和远程访问服务器安装向导”,我们选择“自定义配置”,单击下一步
然后选择“LAN路由”
最后单击完成并开始服务
下面就需要进行配置了,展开SERVER,右击“常规”,单击“新增路由协议”
在“新路由协议”中选择“DHCP中继代理程序”单击“确定”
添加好以后,右击“dhcp中继代理程序”选择“属性”,这时会出现“dhcp中继代理程序属性”窗口,在“服务器地址”中键入dhcp服务器的ip地址,然后单击“添加”,最后“确定”
右击“dhcp中继代理程序”,单击“新增接口”,选择“本地连接2”
在出现的“dhcp中继站属性”中,勾选“中继dhcp数据包”,在下面还有两项分别是:跃点计数阈值和启动阈值。其中“跃点计数阈值是中继代理通信可以跨过的最大跳数”,“启动阈值是中继代理转发dhcp消息前的等待时间,如果是希望本地dhcp服务器可以首先响应的时候,设置这个比较有用,当dhcp服务器在规定时间内不响应的话,那中继代理就会转发dhcp消息给其他网段的dhcp服务器,这里采用默认的就ok了
下面验证效果,打开DHCP客户机的命令提示符输入下列命令进行测试
ok,搞定了,呜呜,眼睛好累,不过最后补充一点原理性的东西,dhcp中继代理的基本原理:
(1)dhcp客户机申请ip租约,发送DHCPDiscover包
(2)中继代理收到该包,并转发给另一个网段的dhcp服务器
(3)dhcp服务器收到该包,将DHCPOffer包发送给中继代理
(4)中继代理将地址租约(DHCPOffer)转发给dhcp客户端
(5)DHCPRequest包从客户机通过中继代理转发到DHCP服务器
(6)DHCPAck消息从服务器通过中继代理转发到客户机