你的浏览器无法正常显示内容,请更换或升级浏览器!

RouterOS 7 DHCP Server配置与常见问题排查

tenfei
tenfei
发布于2026-07-27 11:37 阅读14次
RouterOS 7 DHCP Server配置与常见问题排查
RouterOS 7对DHCP服务进行了底层重构,相比v6在配置方式和行为上有不小变化。本文详细讲解ROS7下DHCP Server的完整配置步骤,以及获取不到IP、获取到IP但无法上网、跨VLAN DHCP失败等常见问题的排查思路与解决方案。
# RouterOS 7 DHCP Server配置与常见问题排查 ## 前言 RouterOS 7在2022年正式发布,对比v6版本,DHCP服务的配置方式和部分行为发生了较大变化。很多从v6迁移过来的工程师发现,原本熟悉的配置命令找不到了,或者配置了但客户端无法获取IP。本文结合实际项目经验,讲解RouterOS 7下DHCP Server的完整配置流程,以及常见问题的排查思路。 ## 一、v7与v6的差异 RouterOS 7的DHCP模块从底层进行了重写,主要变化体现在: - **不再支持单池多网段**:v6中可以在一个IP Pool里配置多个不连续的网段,v7要求每个Pool对应一个网段 - **租约文件位置变更**:默认路径从/rhcf/改为其他路径 - **租约时间的默认值调整**:从10分钟改为10天 - **Option Sets替代global-options**:自定义DHCP Option的配置方式变了 如果你是从v6升级过来的,建议先把现有配置导出备份,再按v7的逻辑重新规划。 ## 二、基本配置步骤 ### 2.1 创建地址池(IP Pool) 地址池是分配给客户端的IP范围,是DHCP服务的前置条件。在Winbox或CLI中执行: /ip pool add name=pool-dhcp ranges=192.168.10.10-192.168.10.250 **注意事项**: - ranges只写起始IP和结束IP,中间用连字符,不要有空格 - 不要将网关地址包含在池内,避免IP冲突 - 建议保留末尾几个IP固定给打印机、NAS等设备使用 ### 2.2 创建DHCP Server /ip dhcp-server add name=dhcp1 interface=bridge-local address-pool=pool-dhcp disabled=no **常见错误**:在接口上直接enable DHCP Server前,必须先创建好对应的地址池,否则会报错"No such IP pool"。 ### 2.3 配置DHCP网络 这一步指定网关、DNS等核心参数: /ip dhcp-server network add address=192.168.10.0/24 gateway=192.168.10.1 dns-server=192.168.10.1 domain=lan **gateway**:填写路由器的LAN口IP,客户端将以此IP作为默认网关 **dns-server**:小型网络通常填路由器本身,由RouterOS做DNS转发;如果有内网DNS服务器则填对应地址 ### 2.4 配置DHCP Option(可选) 如果网络中有特殊需求的客户端(如IP电话、特定摄像头),可能需要发送自定义Option: /ip dhcp-server option add name=option-249 code=249 value=0xaabbccdd /ip dhcp-server network add address=192.168.10.0/24 options=option-249 Option的value类型需要注意:十六进制值需要加0x前缀,字符串值需要用双引号包裹。 ## 三、静态绑定(MAC与IP对应) 对于需要固定IP的服务器、打印机等设备,建议使用DHCP静态绑定而非手动配置静态IP,这样既方便管理又避免了IP冲突。 /ip dhcp-server lease add mac-address=AA_BB_CC_DD_EE_FF address=192.168.10.50 server=dhcp1 comment="财务打印机" **技巧**:将DHCP租约表中的动态条目直接转为静态——在Lease列表中双击对应条目,选择Make Static即可,MAC和已分配的IP自动锁定。 ## 四、常见问题排查 ### 问题1:客户端一直显示"正在获取IP地址" 这是最常见的问题,通常原因有: **检查1:DHCP Server是否启用并运行** /ip dhcp-server print 确认enabled=yes,且running状态。 **检查2:防火墙是否阻断了DHCP** RouterOS默认防火墙可能会阻止DHCP请求。进入防火墙规则,确认INPUT链或forward链没有拒绝UDP 67-68端口的规则。如果找到DROP规则,添加accept例外: /ip firewall filter add chain=input protocol=udp dst-port=67-68 action=accept **检查3:交换机是否正确透传DHCP** 如果客户端接在交换机下,检查交换机是否开启了DHCP Snooping或Relay功能。如果启用了Snooping但未将路由器端口设为trusted,DHCP请求会被丢弃。 ### 问题2:客户端获取到IP但无法上网 能获取IP说明DHCP基本正常,问题出在路由或DNS上。 **检查1:确认网关是否正确** /ip dhcp-server lease print 点击对应客户端,查看是否正确记录了gateway和dns-server。如果显示0.0.0.0,说明/ip dhcp-server network中没有配置好这些参数。 **检查2:测试网关连通性** 从客户端ping 192.168.10.1(网关),如果不通,检查路由器LAN口IP配置和bridge设置。 **检查3:DNS是否可用** 从客户端ping www.baidu.com,如果显示"无法解析主机",说明DNS转发有问题。检查RouterOS的DNS设置,确认allow-remote-requests=yes且有可用的上游DNS服务器。 ### 问题3:同一MAC每次获取到不同IP **原因**:客户端有多个网络配置文件(如虚拟机、残留的虚拟网卡),或者之前用过静态IP导致租约混乱。 **解决**: /ip dhcp-server lease remove [find mac-address=AA_BB_CC_DD_EE_FF] 清理掉旧的租约记录,然后让客户端重新申请。 ### 问题4:跨VLAN无法获取DHCP 如果网络中有VLAN划分,需要确保DHCP请求能被正确转发: - 交换机端口模式是否为trunk,并允许对应VLAN通过 - 如果使用DHCP Relay(/ip dhcp-server network里配置relay地址),确认中继设备已正确配置 - RouterOS本身的VLAN接口是否正确绑定到bridge ## 五、租约管理 ### 查看当前所有租约 /ip dhcp-server lease print ### 查看活跃租约 /ip dhcp-server lease print where status=bound ### 手动释放某客户端IP /ip dhcp-server lease remove [find mac-address=AA_BB_CC_DD_EE_FF] ### 租约超时时间设置 /ip dhcp-server network set [find address=192.168.10.0/24] lease-time=1d 建议小型网络设置1-3天,避免客户端频繁重新申请造成网络开销。 ## 六、总结 RouterOS 7的DHCP服务配置本身并不复杂,关键是理解几个核心概念:地址池是IP来源,DHCP Server是服务实例,DHCP Network是参数模板。三者缺一不可。 遇到问题时按照"Server是否运行 -> 防火墙是否放行 -> 租约参数是否完整"的顺序排查,大多数问题都能快速定位。跨网段和VLAN环境下,重点检查交换机的DHCP Snooping配置和trunk端口的VLAN透传。 平时养成定期查看租约列表的习惯,既能掌握内网设备接入情况,也能及时发现异常终端。

2

0

文章点评
Copyright © from 2021 by namoer.com
458815@qq.com QQ:458815
蜀ICP备2022020274号-2