DHCP 服务器配置
本主题讨论最低 DHCP 服务器配置、完整 DHCP 服务器配置、扩展 DHCP 服务器配置。您还可以使用本主题获取有关如何将路由器配置为 DHCP 服务器、交换机配置为 DHCP 服务器、交换机上的 DHCP 服务器以及将设备配置为 DHCP 服务器的信息。
对于 MX 系列路由器,Junos OS 的 DHCP 服务器功能是订阅者管理功能的一部分。您必须具有 S-SA-FP、S-MX80-SA-FP 或 S-MX104-SA-FP 许可证才能启用 DHCP 服务器。对于服务记帐,还必须具有 S-SSM-FP。
有关详细信息,请参阅 PTX、MX、M 和 T 系列许可证 或 《瞻博网络许可用户指南》。
DHCP 服务器配置概述
典型的 DHCP 服务器配置为设备入口接口上的特定子网提供以下配置设置:
一个 IP 地址池,其中一个地址从池中排除。
默认和最长租用时间。
域搜索后缀。这些后缀指定客户端在使用 DNS 解析主机名时使用的域搜索列表。
DNS 名称服务器。
设备请求地址选项(选项 32)。从 IP 地址池中排除的 IP 地址是为此选项保留的。
此外,DHCP 服务器可能会将静态地址分配给子网上的至少一个客户端。 表 1 提供了示例 DHCP 服务器配置的设置和值。
设置 |
样本值 |
---|---|
DHCP 子网配置 | |
地址池子网地址 |
|
池范围内的高地址 |
|
池范围内的低地址 |
|
地址池默认租用时间(以秒为单位) |
|
地址池最长租用时间(以秒为单位) |
|
域搜索后缀 |
|
要从池中排除的地址 |
|
DNS 服务器地址 |
|
路由器请求地址选项的标识符代码 |
|
路由器请求地址选项的类型选择 |
|
路由器请求地址选项的 IP 地址 |
|
DHCP MAC 地址配置 | |
静态绑定 MAC 地址 |
|
固定地址 |
|
最低 DHCP 本地服务器配置
以下示例输出显示了将 SRX300、SRX320、SRX340、SRX345、SRX550M 或 SRX1500 设备配置为 DHCP 服务器所必须使用的最低配置。在此输出中,服务器组名为 mobileusers,并且 DHCP 本地服务器在组内的入口接口 ge-1/0/1.0 上启用。地址池从低范围 192.168.1.10/24 到高范围 192.168.1.20/24 命名为 acmenetwork。
[edit access] address-assignment { pool acmenetwork { family inet { network 192.168.1.0/24; range r1 { low 192.168.1.10; high 192.168.1.20; } } } }
[edit system services] dhcp-local-server { group mobileusers { interface ge-1/0/1.0 } }
[edit interfaces ge-1/0/1 unit 0] family { inet { address 192.168.1.1/24 } }
您可以使用层次结构级别的 、 interface
(非环路接口)和address-assignment
语句[edit routing-instances]
在dhcp-local server
路由实例中配置 DHCP 本地服务器。
此示例显示了需要在组级别用于扩展 DHCP 本地服务器的最低配置:
[edit system services] dhcp-local-server { group group_one { interface ge-0/0/2.0; } }
此示例创建名为 group_one
的服务器组,并指定在组内的接口 ge-0/0/2.0
上启用 DHCP 本地服务器。DHCP 本地服务器使用默认池匹配配置 ip-address-first.
如果删除 DHCP 服务器配置,DHCP 服务器绑定可能仍会保留。要确保删除 DHCP 绑定,请在删除 DHCP 服务器配置之前发出 clear dhcp server binding
命令。
此示例显示了需要在组级别对扩展 DHCP 本地服务器使用的最低配置。如果接口 ge-0/0/2 有动态配置文件配置,则应添加格式的 ifd.0
接口。例如 ge-0/0/2.0
:
[edit system services] dhcp-local-server { group group_one { interface ge-0/0/2.0; } }
此示例创建名为 group_one
的服务器组,并指定在组内的接口 ge-0/0/2.0
上启用 DHCP 本地服务器。
示例:完整的 DHCP 服务器配置
观看以下视频,了解如何使用 J-Web 配置 DHCP 服务器:
要求
此示例在 Junos OS 20.1R1 版上进行测试。
概述
您只能在接口的主 IP 地址上配置 DHCP 服务器。接口上的主地址是默认情况下用作本地来源并发送出接口的广播和组播数据包的本地地址的地址。
以下示例显示了层次结构级别的语句[edit interfaces]
。接口的主地址 (10.3.3.1/24) 具有在层次结构级别定义的[edit system services]
相应地址池范围(10.3.3.33 到 10.3.3.254)。
配置
要配置 DHCP 服务器,请执行以下任务:
配置 DHCP 服务器选项。
[edit access address-assignment pool P1 family inet] range R1 { low 10.3.3.33; high 10.3.3.254; } dhcp-attributes { maximum-lease-time 7200; server-identifier 10.3.3.1; domain-name domain.tld; name-server { 10.6.6.6; 10.6.6.7; } wins-server { 10.7.7.7; 10.7.7.9; } router { 198.51.100.0; 198.51.100.1; 10.6.6.1; 10.7.7.1; } boot-file boot-client; boot-server 10.4.4.1; option 19 flag false; option 40 string domain.tld; option 16 ip-address 10.3.3.3; } host H1 { hardware-address 00:0d:56:f4:20:01; ip-address 10.4.4.4; } host H2 { hardware-address 00:0d:56:f4:01:ab; ip-address 10.5.5.6; } excluded-address 10.3.3.33; excluded-address 192.0.2.5; }
配置客户端选项。
[edit interfaces] ge-0/0/1 { unit 0 { family inet { dhcp { client-identifier { user-id ascii 01aa.001a.bc65.3e; } lease-time 4100; update-server; } address 10.3.3.1/24; } }
配置旧版 DHCP 服务器
分步过程
指定 DHCP 服务器配置选项。
dhcp { domain-name "domain.tld"; maximum-lease-time 7200; default-lease-time 3600; name-server { 10.6.6.6; 10.6.6.7; } domain-search [ subnet1.domain.tld subnet2.domain.tld ]; wins-server { 10.7.7.7; 10.7.7.9; } router { 10.6.6.1; 10.7.7.1; } option 19 flag off; # 19: "IP Forwarding" option option 40 string "domain.tld"; # 40: "NIS Domain" option option 16 ip-address 10.3.3.33; # 16: "Swap Server" option pool 10.3.3.0/24 { address-range low 10.3.3.2 high 10.3.3.254; exclude-address { 10.3.3.33; } router { 10.3.3.1; } server-identifier 10.3.3.1; } pool 10.4.4.0/24 { boot-file "boot.client"; boot-server 10.4.4.1; } static-binding 00:0d:56:f4:20:01 { fixed-address 10.4.4.4; host-name "host.domain.tld"; } static-binding 00:0d:56:f4:01:ab { fixed-address { 10.5.5.5; 10.6.6.6; } host-name "another-host.domain.tld"; client-identifier "01aa.001a.bc65.3e"; } }
配置客户端选项。
[edit interfaces] ge-0/0/1 { unit 0 { family inet { address 10.3.3.1/24; } }
将路由器配置为扩展 DHCP 本地服务器
您可以启用路由器作为扩展 DHCP 本地服务器运行,并在路由器上配置扩展 DHCP 本地服务器选项。扩展 DHCP 本地服务器提供 IP 地址和其他配置信息以响应客户端请求。
扩展的 DHCP 本地服务器增强了传统的 DHCP 服务器操作,其中客户端地址池和客户端配置信息驻留在 DHCP 服务器上。使用扩展的 DHCP 本地服务器,客户端地址和配置信息驻留在集中式地址分配池中,这些池独立于 DHCP 本地服务器进行管理,并且可以由不同的客户端应用程序共享。
扩展的 DHCP 本地服务器还支持高级池匹配和使用命名地址范围。您还可以将本地服务器配置为使用客户端 PDU 中的 DHCP 选项 82 信息来确定要用于特定客户端的命名地址范围。在地址分配池中配置的客户机配置信息包括用户定义的选项,如引导服务器、宽限期和租用时间。
配置包含扩展 DHCP 本地服务器的 DHCP 环境需要两个独立的配置操作,您可以按任意顺序完成这两个操作。在一个操作中,您可以在路由器上配置扩展 DHCP 本地服务器,并指定 DHCP 本地服务器如何确定要使用的地址分配池。在其他操作中,配置 DHCP 本地服务器使用的地址分配池。地址分配池包含 DHCP 客户端的 IP 地址、命名地址范围和配置信息。有关创建和使用地址分配池的详细信息,请参阅 IP 地址分配池 。
扩展 DHCP 本地服务器和服务器使用的地址分配池必须在同一逻辑系统和路由实例中进行配置。
不能在同一接口上配置扩展 DHCP 本地服务器和扩展 DHCP 中继。
要在路由器上配置扩展 DHCP 本地服务器,请在层次结构级别包含dhcp-local-server
[edit system services]
以下语句:
[edit system services] dhcp-local-server { authentication { password password-string; username-include { circuit-type; delimiter delimiter-character; domain-name domain-name-string; logical-system-name; mac-address; option-60; option-82 <circuit-id> <remote-id>; routing-instance-name; user-prefix user-prefix-string; } } group group-name { authentication { password password-string; username-include { circuit-type; delimiter delimiter-character; domain-name domain-name-string; logical-system-name; mac-address; option-60; option-82 <circuit-id> <remote-id>; routing-instance-name; user-prefix user-prefix-string; } } interface interface-name <upto upto-interface-name> <exclude>; } pool-match-order { ip-address-first; option-82; } }
您还可以在以下层次结构级别包含这些语句:
[edit logical-systems logical-system-name system services]
[edit logical-systems logical-system-name routing-instances routing-instance-name system services]
[edit routing-instances routing-instance-name system services]
此外,您可以通过在层次结构级别包含traceoptions
[edit system processes dhcp-service]
语句来配置 DHCP 本地服务器操作的跟踪:
[edit system processes] traceoptions { file filename <files number> <match regular-expression > <size maximum-file-size> <world-readable | no-world-readable>; flag flag; level (all | error | info | notice | verbose | warning); no-remote-trace; }
将交换机配置为 DHCP 服务器
本主题适用于支持增强型第 2 层软件 (ELS) 配置样式的 EX 系列交换机和 QFX 系列交换机的 Junos OS。如果交换机运行的软件不支持 ELS,请参阅 在交换机上配置 DHCP 服务器。有关 ELS 的详细信息,请参阅 使用增强型第 2 层软件 CLI。
动态主机配置协议 (DHCP) 服务器提供了一个框架,用于将配置信息传递到 TCP/IP 网络上的客户端主机。充当 DHCP 服务器的交换机可以动态分配 IP 地址和其他配置参数,从而最大限度地减少将客户端添加到网络所需的开销。
DHCP 配置由两个组件组成:DHCP 客户端上默认设置的可选重新配置和 DHCP 服务器的配置。本主题介绍如何将交换机配置为使用 DHCP for IPv4 (DHCPv4) 的本地 DHCP 服务器。有关 DHCPv6 本地服务器的信息,请参阅 DHCPv6 本地服务器概述。
本主题介绍以下任务:
将交换机配置为本地 DHCP 服务器
要将交换机配置为本地 DHCP 服务器,必须配置 DHCP 地址池并指明池的 IP 地址。交换机作为 DHCP 服务器运行,动态分配此池中的 IP 地址。交换机可以动态分配其他配置参数,例如默认网关,以便向客户端提供有关网络的信息。
可以为 DHCP 服务器配置多个地址池。DHCP 维护有关所有已配置池的状态信息。从其子网与服务器上接收客户端发送的 DHCP 发现数据包的接口匹配的池中为客户端分配地址。当同一接口上存在多个池时,将从所有可用池中轮流分配地址。
必须确保不要将网络中已在使用的地址分配给地址池。DHCP 服务器在将地址分配给客户端之前,不会检查这些地址是否已在网络中使用。
在交换机上配置 DHCP 服务器
此任务使用不支持增强型第 2 层软件 (ELS) 配置样式的 EX 系列交换机的 Junos OS。如果您的交换机运行支持 ELS 的软件,请参阅 将交换机配置为 DHCP 服务器。有关 ELS 的详细信息,请参阅 使用增强型第 2 层软件 CLI。
动态主机配置协议 (DHCP) 服务器可以提供两个有价值的 TCP/IP 网络服务。DHCP 可以动态地将 IP 参数(如 IP 地址)分配给客户端,还可以向客户端提供软件升级。
DHCP 配置由两个组件组成:DHCP 客户端上默认设置的可选重新配置和 DHCP 服务器的配置。本主题介绍 DHCP 服务器的配置。有关重新配置 DHCP 客户端的信息,请参阅 配置 DHCP 客户端。
您可以在交换机上配置两个版本的 DHCP 服务器:扩展服务器版本或旧版服务器版本。建议您配置扩展服务器,除非需要使 DHCP 服务器配置向后兼容旧服务器版本。
本主题包括以下任务:
在交换机上配置扩展 DHCP 服务器
若要配置扩展 DHCP 服务器,必须配置 DHCP 池,指示池的 IP 地址,并创建服务器组。其他配置是可选的。
不要将网络中已在使用的地址分配给地址池。扩展 DHCP 服务器在将地址分配给客户端之前不会检查地址是否已在使用中。
示例:将安全设备配置为 DHCP 服务器
此示例说明如何将设备配置为 DHCP 服务器。
有关如何在路由实例中配置 JDHCP 的信息,请参阅 如何在路由实例中配置 JDHCP。
要求
准备工作:
确定要用于每个子网的 IP 地址池和租约持续时间。
获取需要永久IP地址的客户端的MAC地址。确定要用于这些客户端的 IP 地址。
列出可用于网络上的服务器和设备的 IP 地址;例如,DNS、NetBIOS 服务器、启动服务器和网关设备。请参阅 了解管理预定义策略应用程序。
确定网络中的子网和客户端所需的 DHCP 选项。
概述
在此示例中,您将设备配置为 DHCP 服务器。将 IP 地址池指定为 192.168.2.0/24,从低范围 192.168.2.2 到高范围 192.168.2.254。将最长租约时间设置为 2,419,200。然后将 DNS 服务器 IP 地址指定为 192.168.10.2。
从 Junos OS 15.1X49-D60 版和 Junos OS 17.3R1 版开始,所有 SRX 系列防火墙上的旧版 DHCPD(DHCP 守护程序)配置都将被弃用。并且仅支持新的 JDHCP CLI。在已有 DHCPD 配置的设备上升级到 Junos OS 15.1X49-D60 及更高版本时,将显示以下警告消息:
警告:将来的 Junos 版本中将弃用所使用的 DHCP 配置命令。
警告:有关更新的命令,请参阅文档。
配置
程序
CLI 快速配置
要快速配置此示例,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,更改与您的网络配置匹配所需的任何详细信息,将命令复制并粘贴到层次结构级别的 CLI set access
中,然后从配置模式进入 commit
。
set interfaces ge-0/0/2 unit 0 family inet address 192.168.2.1/24 set system services dhcp-local-server group g1 interface ge-0/0/2.0 set access address-assignment pool p1 family inet network 192.168.2.0/24 set access address-assignment pool p1 family inet range r1 low 192.168.2.2 set access address-assignment pool p1 family inet range r1 high 192.168.2.254 set access address-assignment pool p1 family inet dhcp-attributes maximum-lease-time 2419200 set access address-assignment pool p1 family inet dhcp-attributes name-server 192.168.10.2
GUI 快速配置
分步过程
要将设备配置为 DHCP 服务器,请指定 DHCP 池信息、服务器信息、租用时间和选项信息:
在 J-Web 界面中,选择 配置 > DHCP > DHCP 服务。
选择 DHCP 池。单击 Add。
指定在与客户端通信时用作 DHCP 服务器在 IP 数据包中包含的源地址的 IP 地址。该地址包含在选项 54 的 DHCP 数据包中。
指定 IPv4 地址分配池的子网信息。类型 192.168.2.0/24.
在“地址范围低”中,键入 192.168.2.2。
在“地址范围高”中,键入 192.168.2.254。
在“排除地址”框中,键入要从 DHCP 地址池中排除的地址。类型 192.168.2.0/24
指定要分配给此地址池中的任何 DHCP 客户端的服务器标识符。该标识符可用于标识 DHCP 消息中的 DHCP 服务器。
指定要分配给此地址池中的任何 DHCP 客户端的域名。
指定 DHCP 客户端需要联系的下一个服务器。类型 192.168.10.2
定义 DHCP 应租用地址的最长时间(以秒为单位)。类型 2419200.
定义 DHCP 选项 32,即设备请求地址选项。您必须为选项代码输入数值。从列表中选择与选项代码对应的选项类型。
单击“确定”。
如果完成设备配置,请单击提交>提交。
分步过程
以下示例要求您在配置层次结构中导航各个级别。有关如何执行此操作的说明,请参阅 CLI 用户指南中的在配置模式下使用 CLI 编辑器。
要将设备配置为 DHCP 服务器:
使用可以访问 DHCP 服务器的 IP 地址配置接口。
[edit] user@host# set interfaces ge-0/0/2 unit 0 family inet address 192.168.2.1/24
配置 DHCP 服务器。
[edit] user@host# set system services dhcp-local-server group g1 interface ge-0/0/2.0
为可分配给客户端的 IPv4 地址创建地址池。池中的地址必须位于 DHCP 客户端所在的子网上。不要包含网络上已在使用的地址。
[edit]] user@host# set access address-assignment pool p1 family inet network 192.168.2.0/24
(可选)指定 IP 地址池范围。在地址分配池中定义地址范围。范围是池中可分配给客户端的地址子集。如果未指定范围,则池中的所有地址都可用于分配。配置范围的名称以及范围中地址的下限和上限。
[edit]] user@host# set access address-assignment pool p1 192.168.2.0/24 address-range low 192.168.2.2 high 192.168.2.254
(可选)将一个或多个路由器配置为客户端子网上的默认网关。
[edit] user@host# set access address-assignment pool p1 family inet dhcp-attributes router 192.168.10.3
(可选)配置在与客户端交换的消息中用作 DHCP 服务器源地址的 IP 地址。客户使用此信息来区分租赁优惠。
[edit] user@host# set access address-assignment pool pool1 family inet dhcp-attributes server-identifier 192.168.10.1
(可选)指定客户端未续订租约时客户端持有已分配 IP 地址租约的最长时间(以秒为单位)。
[edit] user@host# set access address-assignment pool pool1 family inet dhcp-attributes maximum-lease-time 2419200
(可选)指定要包含在 DHCP 数据包中的用户定义选项
[edit] user@host# set access address-assignment pool pool1 family inet dhcp-attributes option 98 string test98
使用客户端的 MAC 地址分配一个固定 IP 地址。
[edit] user@host# set access address-assignment pool pool1 family inet host host1 ip-address 192.168.2.100 hardware-address 2c:56:dc:72:99:f3
结果
在配置模式下,输入
show access address-assignment
命令确认您的配置。如果输出未显示预期的配置,请重复此示例中的配置说明以进行更正。
[edit]
user@host# show access address-assignment
pool p1 {
family inet {
network 192.168.2.0/24;
range r1 {
low 192.168.2.2;
high 192.168.2.254;
}
dhcp-attributes {
maximum-lease-time 2419200;
name-server {
192.168.10.2;
}
}
}
}
}
在配置模式下,输入
show system services dhcp-local-server
命令确认您的配置。如果输出未显示预期的配置,请重复此示例中的配置说明以进行更正。[edit] user@host#
show system services dhcp-local-server
group g1 { interface ge-0/0/2.0; }
如果完成设备配置,请从配置模式输入 commit
。
验证
确认配置工作正常。
验证 DHCP 绑定数据库
目的
验证 DHCP 绑定数据库是否反映了 DHCP 服务器配置。
行动
在操作模式下,输入以下命令:
show dhcp server binding
命令以显示数据库中的所有活动绑定。show dhcp server binding address detail
命令(其中 address 是客户端的 IP 地址)以显示有关客户端的详细信息。
这些命令生成以下示例输出:
user@host> show dhcp server binding IP Address Hardware Address Type Lease expires at 30.1.1.20 00:12:1e:a9:7b:81 dynamic 2007-05-11 11:14:43 PDT
user@host> show dhcp server binding address detail IP address 192.0.2.2 Hardware address 00:a0:12:00:13:02 Pool 192.0.2.0/24 Interface fe-0/0/0, relayed by 192.0.2.200 Lease information: Type DHCP Obtained at 2004-05-02 13:01:42 PDT Expires at 2004-05-03 13:01:42 PDT State active DHCP options: Name: name-server, Value: { 6.6.6.6, 6.6.6.7 } Name: domain-name, Value: mydomain.tld Code: 32, Type: ip-address, Value: 192.0.2.33
验证 DHCP 服务器操作
目的
验证是否已配置 DHCP 服务器操作。
行动
在操作模式下,输入以下命令:
show dhcp server statistics
命令来验证 DHCP 服务器统计信息。
user@host> show dhcp server statistics Packets dropped: Total 0 Messages received: BOOTREQUEST 45 DHCPDECLINE 0 DHCPDISCOVER 1 DHCPINFORM 39 DHCPRELEASE 0 DHCPREQUEST 5 DHCPLEASEQUERY 0 DHCPBULKLEASEQUERY 0 Messages sent: BOOTREPLY 6 DHCPOFFER 1 DHCPACK 3 DHCPNAK 2 DHCPFORCERENEW 0 DHCPLEASEUNASSIGNED 0 DHCPLEASEUNKNOWN 0 DHCPLEASEACTIVE 0 DHCPLEASEQUERYDONE 0
更改历史记录表
功能支持由您使用的平台和版本决定。使用 功能资源管理器 确定您的平台是否支持某个功能。