外置DHCP服务器optionoption配置方法e.docx
《外置DHCP服务器optionoption配置方法e.docx》由会员分享,可在线阅读,更多相关《外置DHCP服务器optionoption配置方法e.docx(56页珍藏版)》请在冰点文库上搜索。
外置DHCP服务器optionoption配置方法e
1外置DHCP效劳器option43、option60配置方法
1.1背景
目前公司建设的无线工程(如汉庭酒店/学校/企业等)大局部都是在核心交换机上开启DHCP效劳器的方式为AP和用户分配IP地址。
但是在即将进行的众多高校无线建设中,DHCP效劳器根本上是基于网络中心WINDOWSSERVER或者LINUXSERVER搭建,因此假设要进行高校大规模AP组网,那么必须在Windows、LINUX效劳器上对DHCP、option43、option60配置进行验证。
1.2
拓扑图
在独立部署DHCP效劳器场景中,一般采用在会聚路由交换机上配置DHCPRelay的方式将AP发出的DHCP请求转发到DHCP效劳器。
如果整个网络拓扑中只有核心交换机做路由,那么在核心交换机上配置DHCPRelay。
1.3流程分析
在这里,先简单回忆一下通过option43、option60为AP分配IP的流程:
(1)AP向DHCPServer发送DHCPDiscovery请求,请求中附带option60属性来标示供给商类别标识符。
(2)DHCPServer检查option60属性,判断发送请求的Client是否符合获取IP地址的条件,假设符合条件那么回复DHCPOffer报文来分配IP地址,否那么DHCPServer忽略请求。
DHCPServer也可以关闭option60检查选项,如果关闭该选项,那么无论option60是否匹配,DHCPServer都会响应Client的请求。
(3)DHCPServer回复DHCPOffer报文时附带option43属性来下发AC的IP地址或域名。
(4)DHCPServer在回复Client请求时,不附带option60属性。
从上面的流程可以看出,外置DHCP效劳器需要配置的参数是:
Server收到Client请求时检查option60属性,Server回复Client报文时增加option43属性。
DCN的AP附带的option60值恒定为字符串“〞。
1.4DHCPoption43字段格式
在?
WLAN工程无线交换机集群管理模块需求说明书?
中定义option43字段格式如下:
字段名称
长度
值
OptionCode
1字节
43
DataLength
1字节
剩余局部的长度,单位为字节
OptionType
1字节
1表示IPv4地址,2表示域名
Lengthoftheaddress
1字节
后面内容的长度
Content
由前一字段指定
IP地址或者域名
后三个字段可以屡次出现,以配置多个AC地址。
上面表格中黑色字段操作系统会自动填写,我们只需要构造红色字段的内容即可。
例如:
按IP地址表示AC:
(1)如果只有一个AC,设AC的IP地址是,将IP地址转换成十六进制表示为6e6e0101,OptionType应该使用1,Length为4字节,整个option43字段可用十六进制表示为:
01046e6e0101
(2)如果有两个AC,设AC1的IP地址是〔6e6e0101〕,AC2的IP地址是〔6e6e0102〕,括号内为IP地址的十六进制,每一个AC地址都按照OptionType、Length、Address组成一个字段,再将两个字段连起来写,整个option43字段可用十六进制表示为:
01046e6e010101046e6e0102,蓝色表示AC1的字段,红色表示AC2的字段。
(3)如果有多个AC,按照第
(2)种方法继续添加更多的AC地址,一个AP最多可支持4个AC地址。
按域名表示AC:
(1)如果只有一个AC,设AC的域名是ac1,OptionType应该使用2,Length为12〔0x0c〕字节,OptionType和Length字段如果用字符串来表示是不可打印字符,只能用十六进制字节形式来表示,因此还需要将AC的域名名称中每个字符都转换成ASCII码来表示,整个option43字段最终可用十六进制表示为:
020c6163312e746573742e636f6d
(2)如果有两个AC,设AC1的域名是,AC2的域名是,每一个AC域名都按照OptionType、Length、Address组成一个字段,再将两个字段连起来写,整个option43字段可用十六进制表示为:
020c6163312e746573742e636f6d020c6163322e746573742e636f6d,蓝色表示AC1的字段,红色表示AC2的字段。
(3)如果有多个AC,按照第
(2)种方法继续添加更多的AC域名,一个AP最多可支持4个AC域名。
1.5效劳器配置DHCP步骤
这里选择三种最常见的DHCP效劳器〔Windows2003、Windows2021、Linux〕分别介绍效劳器配置option43、option60的方法。
1.5.1会聚路由交换机DHCPRelay配置
注:
每行命令//之后内容是命令的含义和解释。
配置命令:
SWITCH(config)#servicedhcp//全局开启DHCP效劳
SWITCH(config)#ipforward-protocoludpbootps//全局开启DHCP转发功能
SWITCH(config)#vlan100//创立vlan100
SWITCH(config-vlan100)#interfacevlan100//创立interfacevlan100
SWITCH4//为interfacevlan100设置一个IP地址和掩码
SWITCH1//设置dhcp-relay转发目的效劳器IP地址
1.5.2Windows2003配置DHCP效劳
在配置开始之前,操作系统中DHCP效劳已安装,并能正常使用。
1.5.2.1创立作用域〔IP地址池〕
1.5.2.1.1步骤1:
翻开操作系统DHCP管理界面
从“开始>管理工具>DHCP〞菜单中翻开2003效劳器的DHCP管理窗口。
1.5.2.1.2步骤2:
准备新建作用域
在DHCP管理窗口中,从左侧窗口中选择效劳器名称,并单击鼠标右键,从弹出菜单中点击“新建作用域〞。
1.5.2.1.3步骤3:
新建作用域向导
按照windows配置向导来设置DHCP作用域〔即IP地址池〕,单击“下一步〞。
1.5.2.1.4步骤4:
新建作用域向导
设置作用域名称和描述,可输入任意值,这里为了便于记忆,名称设置为“PoolAP〞,描述设置为AP所在的VLAN,单击“下一步〞。
1.5.2.1.5步骤5:
新建作用域向导
输入将要分配的IP地址段和子网掩码,单击“下一步〞。
1.5.2.1.6步骤6:
新建作用域向导
这里没有需要禁止分配的IP地址,单击“下一步〞。
1.5.2.1.7步骤7:
新建作用域向导
设置IP地址的有效期,系统默认为8天,单击“下一步〞。
1.5.2.1.8步骤8:
新建作用域向导
还有网关等信息未配置,所以这里选择“是〞,然后单击“下一步〞。
1.5.2.1.9步骤9:
新建作用域向导
添加一个网关IP地址,单击“下一步〞。
1.5.2.1.10步骤10:
新建作用域向导
添加一个DNS效劳器IP地址〔之后测试AP按域名解析ACIP地址时要用到它〕,单击“下一步〞。
1.5.2.1.11步骤11:
新建作用域向导
没有用到WINS,这里可以不用填,直接单击“下一步〞。
1.5.2.1.12步骤12:
新建作用域向导
选择“是〞立即激活作用域,单击“下一步〞。
1.5.2.1.13步骤13:
新建作用域向导
至此,已成功创立了给AP分配IP的作用域,单击“完成〞。
1.5.2.2添加option43属性
Windows2003效劳器收到DHCPDiscovery报文请求后,是按照DHCPRealy的IP地址来判断是否可以给Client分配IP地址,没有设置option60条件的地方,因此在Windows2003下跳过option60的设置,直接开始option43的设置。
1.5.2.2.1步骤1:
准备配置作用域选项
找到并展开刚刚创立的作用域[100.100.1.0]PoolAP,选择“作用域选项〞,并单击鼠标右键,从弹出菜单中点击“配置选项〞。
1.5.2.2.2步骤2A:
按单个ACIP配置option43属性
在作用域选项窗口中,从“常规〞页面的列表中找到并勾选“043供给商特定信息〞,在红色编辑区内按option43格式输入AC的IP地址信息,然后点击“确定〞按钮保存配置。
1.5.2.2.3步骤2B:
按多个ACIP配置option43属性
在作用域选项窗口中,从“常规〞页面的列表中找到并勾选“043供给商特定信息〞,在红色编辑区内按option43格式顺序输入每个AC的IP地址信息,然后点击“确定〞按钮保存配置。
1.5.2.2.4步骤2C:
按单个AC域名配置option43属性
在作用域选项窗口中,从“常规〞页面的列表中找到并勾选“043供给商特定信息〞,在红色编辑区1内按option43格式输入OptionType、Length十六进制〔有蓝色下划线的字节〕,在红色编辑区2内按AC的域名直接输入字符串〔有红色下划线的字符〕,然后点击“确定〞按钮保存配置。
1.5.2.2.5步骤2D:
按多个AC域名配置option43属性
在作用域选项窗口中,从“常规〞页面的列表中找到并勾选“043供给商特定信息〞,在红色编辑区1内按AC1的option43格式输入OptionType、Length十六进制〔有蓝色下划线的字节〕,在红色编辑区2内按AC1的域名直接输入字符串〔有红色下划线的字符〕,然后再回到编辑区1内按,AC2的option43格式输入OptionType、Length十六进制〔有蓝色下划线的字节〕,再到红色编辑区2内按AC2的域名直接输入字符串〔有红色下划线的字符〕,最后点击“确定〞按钮保存配置。
1.5.2.2.6步骤3:
配置完成
配置好的效果如上图所示,在AP地址池的“作用域选项〞中可以看到刚刚配置的option43信息。
1.5.3Windows2021配置DHCP效劳
在配置开始之前,操作系统中DHCP效劳已安装,并能正常使用。
1.5.3.1创立作用域〔IP地址池〕
1.5.3.1.1步骤1:
翻开操作系统DHCP管理界面
点击“开始〞菜单右侧的“效劳器管理器〞按钮中翻开2021效劳器的效劳器管理窗口。
从最左侧的列表中找到并展开“角色>DHCP效劳器>效劳器名称>IPv4〞。
1.5.3.1.2步骤2:
准备新建作用域
点击选择“IPv4〞,并单击鼠标右键,从弹出菜单中点击“新建作用域〞。
1.5.3.1.3步骤3:
新建作用域向导
按照windows配置向导来设置DHCP作用域〔即IP地址池〕,单击“下一步〞。
1.5.3.1.4步骤4:
新建作用域向导
设置作用域名称和描述,可输入任意值,这里为了便于记忆,名称设置为“PoolAP〞,描述设置为AP所在的VLAN,单击“下一步〞。
1.5.3.1.5步骤5:
新建作用域向导
输入将要分配的IP地址段和子网掩码,单击“下一步〞。
1.5.3.1.6步骤6:
新建作用域向导
这里没有需要禁止分配的IP地址,单击“下一步〞。
1.5.3.1.7步骤7:
新建作用域向导
设置IP地址的有效期,系统默认为8天,单击“下一步〞。
1.5.3.1.8步骤8:
新建作用域向导
还有网关等信息未配置,所以这里选择“是〞,然后单击“下一步〞。
1.5.3.1.9步骤9:
新建作用域向导
添加一个网关IP地址,单击“下一步〞。
1.5.3.1.10步骤10:
新建作用域向导
添加一个DNS效劳器IP地址〔之后测试AP按域名解析ACIP地址时要用到它〕,单击“下一步〞。
1.5.3.1.11步骤11:
新建作用域向导
没有用到WINS,这里可以不用填,直接单击“下一步〞。
1.5.3.1.12步骤12:
新建作用域向导
选择“是〞立即激活作用域,单击“下一步〞。
1.5.3.1.13步骤13:
新建作用域向导
至此,已成功创立了给AP分配IP的作用域,单击“完成〞。
1.5.3.2添加option43属性
Windows2021效劳器收到DHCPDiscovery报文请求后,是按照DHCPRealy的IP地址来判断是否可以给Client分配IP地址,没有设置option60条件的地方,因此在Windows2021下跳过option60的设置,直接开始option43的设置。
1.5.3.2.1步骤1:
准备配置作用域选项
找到并展开刚刚创立的作用域[100.100.1.0]PoolAP,选择“作用域选项〞,并单击鼠标右键,从弹出菜单中点击“配置选项〞。
1.5.3.2.2步骤2A:
按单个ACIP配置option43属性
在作用域选项窗口中,从“常规〞页面的列表中找到并勾选“043供给商特定信息〞,在红色编辑区内按option43格式输入AC的IP地址信息,然后点击“确定〞按钮保存配置。
1.5.3.2.3步骤2B:
按多个ACIP配置option43属性
在作用域选项窗口中,从“常规〞页面的列表中找到并勾选“043供给商特定信息〞,在红色编辑区内按option43格式顺序输入每个AC的IP地址信息,然后点击“确定〞按钮保存配置。
1.5.3.2.4步骤2C:
按单个AC域名配置option43属性
在作用域选项窗口中,从“常规〞页面的列表中找到并勾选“043供给商特定信息〞,在红色编辑区1内按option43格式输入OptionType、Length十六进制〔有蓝色下划线的字节〕,在红色编辑区2内按AC的域名直接输入字符串〔有红色下划线的字符〕,然后点击“确定〞按钮保存配置。
1.5.3.2.5步骤2D:
按多个AC域名配置option43属性
在作用域选项窗口中,从“常规〞页面的列表中找到并勾选“043供给商特定信息〞,在红色编辑区1内按AC1的option43格式输入OptionType、Length十六进制〔有蓝色下划线的字节〕,在红色编辑区2内按AC1的域名直接输入字符串〔有红色下划线的字符〕,然后再回到编辑区1内按,AC2的option43格式输入OptionType、Length十六进制〔有蓝色下划线的字节〕,再到红色编辑区2内按AC2的域名直接输入字符串〔有红色下划线的字符〕,最后点击“确定〞按钮保存配置。
1.5.3.2.6步骤3:
配置完成
配置好的效果如上图所示,在AP地址池的“作用域选项〞中可以看到刚刚配置的option43信息。
1.5.4Linux配置DHCP效劳
1.5.4.1下载DHCPServer安装包
DHCPServer是一款开源软件,可以访问来获取相关软件和信息。
当前测试使用的安装包版本是
1.5.4.2Linux下安装DHCPServer
1.5.4.2.1复制安装包到Linux
首先,需要将下载的安装包文件复制到linux系统中。
复制的方法很多,这里使用SSH方式登录linux系统,采用ftp方式传输安装包到linux系统中。
SSH连接是最常用的远程控制linux系统的方法,但都是通过命令行来控制,没有图形化界面。
为了便于阅读,之后使用到的命令都会使用带有颜色的文字,或截图中带颜色的下划线标记出来。
通过SSH成功连接到linux系统,使用root登录,并进入到“/root〞路径下,如下列图所示:
使用ftp下载文件:
由于连接ftp效劳器时位于“/root〞路径下,所以文件也被下载到“/root〞路径下。
使用命令“ls〞来查看当前路径下的文件,可以看到刚刚下载的文件:
1.5.4.2.2解压安装包
使用命令“tarzxvf〞将安装包解压出来:
稍候片刻,等待解压完成。
结束后再使用命令“ls〞查看当前路径下的文件,会看到当前路径下多出一个名为“〞的目录:
1.5.4.2.3安装DHCPServer
使用命令“〞进入到目录“〞中,再使用命令“./configure〞进行配置:
耐心等待配置结束,直到看到“NowyoucantypemaketobuildISCDHCP〞提示信息后,再使用命令“make〞来生成安装文件:
make执行过程会稍长,耐心等待其结束后,使用命令“makeinstall〞安装DHCP效劳:
待makeinstall过程结束后,DHCPServer就成功安装到了linux系统中。
1.5.4.3生成DHCP配置文件
DHCPServer安装后,执行文件路径为“/usr/local/sbin/〞,执行文件名为“dhcpd〞
但dhcpd要正常启动,还需要准备两个配置文件:
和。
用来定义地址池的相关配置,用来记录Client曾获取到的IP信息。
这两个文件没有存放路径要求,但DHCPServer默认放在“/usr/local/etc/〞路径下,并创立了例如文件来介绍如何编写一个文件。
在本文档中,我们也将和这两个文件存放在“/usr/local/etc/〞路径下。
1.5.4.3.1创立文件
安装DHCPServer时没有为我们创立文件,但只是一个记录信息文件,因此我们创立一个空文件即可。
使用命令“〞来创立一个空的文件:
1.5.4.3.2创立并编辑文件
安装DHCPServer时没有为我们创立文件,我们通过“〞命令直接创立并编辑它:
通过vi翻开文件后,按键盘上的“i〞键,进入插入模式,然后可以开始输入文件内容,按照dhcpd能正常启动的根本要求,我们编写了一个下列图所示内容的文件:
对上图内容的解释如下列图所示:
在上图中还有需要特别说明的地方:
(1)地址池中定义了租约时长〔default-lease-time〕和最大租约时长〔max-lease-time〕,实际下发生效的是租约时长,最大租约时长只是设定一个租约的上限,当设定的租约时长超出这个上限时,最大租约时长才生效。
(2)定义了一个空的,这是因为测试用的linux效劳器网卡IP地址是,必须在该网段定义一个subnet才能启动DHCP效劳,由于这个网段不参与IP地址分配,因此subnet内容为空。
(3)这个文件只是可以使DHCP运行,并且可以发送option43属性的最简单配置,但并不是最终文件。
如何更好的组织option43内容,请参考章节。
编辑好文件后,此时内容还没有保存下来,需要先将刚刚编辑的内容保存到文件中。
在编辑过程中文件处于插入模式,需要先按键盘上的Esc键退出插入模式,然后再输入命令“:
wq〞就可以保存文件。
至此,和文件都已准备就绪。
1.5.4.4启动DHCP效劳
1.5.4.4.1启动前的检查
DHCP效劳器使用的UDP端口67,在启动DHCP效劳之前,先检查一下UDP67端口是否被其他进程占用,可以使用命令“lsof–i:
67〞查看:
如上图所示,输入命令后没有看到任何信息,那么说明效劳器上67端口并未被任何进程占用,DHCP效劳可以正常启动。
假设67端口被其他进程占用,请参考1.5.4.5章节介绍,先杀死占用进程,再启动DHCP效劳。
1.5.4.4.2启动DHCP效劳
输入“/usr/local/sbin/dhcpd-4–cf/usr/local/etc/dhcpd.conf–lf/usr/local/etc/dhcpd.leases〞命令来启动DHCP效劳:
启动命令行比拟长,下面分解介绍一下启动命令和参数含义。
/usr/local/sbin/dhcpd表示DHCP进程所在的路径和文件名
-4表示启动IPv4DHCP效劳
–cf表示声明conf配置文件,后面跟conf配置文件的详细路径和文件名
表示conf配置文件的详细路径和文件名
–lf表示声明lease配置文件,后面跟lease配置文件的详细路径和文件名
表示lease配置文件的详细路径和文件名
1.5.4.4.3启动后确实认
再次输入“lsof–i:
67〞命令确认DHCP效劳是否真的启动成功,可以看到:
返回信息不为空,说明DHCP效劳已成功启动。
1.5.4.5停止DHCP效劳
只要杀死DHCP进程就可以停止DHCP效劳,这里介绍如何杀死DHCP进程。
先使用命令“lsof–i:
67〞查看哪个进程占用了UDP67端口:
记住“PID〞这一列的值,这是操作系统中进程的ID号。
本次测试过程中PID值为16189。
再输入命令“kill〞杀死进程:
由于刚刚查询到的PID值为16189,因此这里输入的命令是“kill16189〞。
再次使用命令“lsof–i:
67〞确认DHCP效劳是否真的停止运行,可以看到:
没有任何返回信息,说明DHCP效劳已停止运行。
1.5.4.6配置文件优化
之前我们在编辑文件时,编辑option43属性“vendor-encapsulated-options〞使用的是十六进制表示法:
如果按IP方式来下发AC的地址还可以接受,如果按域名方式来下发AC的域名那么很不方便配置和阅读,因此有必要对其表示法进行优化,使编写者和阅读者更容易理解其内容。
1.5.4.6.1按ACIP配置option43属性
通过“〞命令重新编辑配置文件:
在新编辑的配置文件中,我们自定义了一个新的option43属性,取名为“vendor-specific-information-ip〞,该属性按照OptionType、OptionLength、Content组成一个结构体,并且是个数组,意味着可以重复使用该结构体。
在对“vendor-specific-information-ip〞属性赋值时,使用的语句“optionvendor-specific-information-ip14〞结构体中每一个属性的值用空格分隔,最后分号表示该条语句结束。
假设需要表示多个AC的IP,每组值之间用逗号分隔,最后一组值用分号表示该条语句结束,例如:
1.5.4.6.2按AC域名配置option43属性
在上一个章节修改文件的根底之上,再次通过“〞命令重新编辑配置文件:
由于新定义的option43属性“vendor-specific-information-domain〞结构体中包含“text〞类型的变量,暂不支持对text和string类型取arrayof数组运算,所以按域名方式填写option43只能使用一个AC的域名,假设想使用多个AC域名,仍需要按照优化前的方式,使用“optionvendor-encapsulated-options〞,按十六进制格式依次构造每个AC域名的字符串的十六进制值。
1.5.4.6.3设置option60检查开关
之前在使用AC作为DHCPServer时,有一条option60检查命令:
SWITCH(config)#ipdhcpserveroption60