一、华为交换机配置
1. 开启SNMP服务
system-view
snmp-agent
snmp-agent sys-info version v3
snmp-agent group v3 zabbix_group privacy read-view iso
snmp-agent usm-user v3 zabbix_user authentication-mode sha
# 设置认证密码
snmp-agent usm-user v3 zabbix_user privacy-mode aes128
# 设置加密密码
snmp-agent target-host trap address udp-domain 192.168.1.100 params securityname zabbix_user v3 privacy
# 替换192.168.1.100为Zabbix服务器IP
2. 配置DHCP地址池信息收集
# 查看DHCP地址池OID信息
display dhcp server pool all
# 或使用display current-configuration | include dhcp
二、Zabbix服务器配置
1. 安装SNMP工具
# CentOS/RHEL
yum install net-snmp net-snmp-utils
# Ubuntu/Debian
apt install snmp snmp-mibs-downloader
2. 测试SNMP连接
# 测试SNMPv3连接
snmpwalk -v 3 -u zabbix_user -l authPriv \
-a SHA -A "认证密码" \
-x AES -X "加密密码" \
192.168.1.1 1.3.6.1.2.1.1.1
# 替换IP和密码
三、Zabbix Web界面配置
1. 创建主机
配置 → 主机 → 创建主机
基本信息:
- 主机名称:Switch-DHCP
- 可见名称:华为交换机DHCP监控
- 群组:Network Devices/Switches
- SNMP接口:交换机IP地址
2. 配置SNMPv3认证
SNMP版本:SNMPv3
安全名称:zabbix_user
安全级别:authPriv
验证协议:SHA
验证密码:输入认证密码
加密协议:AES
加密密码:输入加密密码
3. DHCP监控项配置
方法一:使用OID直接监控
根据华为交换机型号和版本,OID可能有所不同,常用OID:
| 监控项目 |
OID示例 |
描述 |
|---|
| 地址池总IP数 |
1.3.6.1.4.1.2011.5.2.1.10.1.2 |
地址池总IP数量 |
| 已分配IP数 |
1.3.6.1.4.1.2011.5.2.1.10.1.3 |
已分配IP数量 |
| 可用IP数 |
1.3.6.1.4.1.2011.5.2.1.10.1.4 |
可用IP数量 |
| 冲突IP数 |
1.3.6.1.4.1.2011.5.2.1.10.1.5 |
冲突IP数量 |
创建监控项示例:
名称:DHCP Pool [{$DHCP_POOL_NAME}] Used IPs
键值:dhcp.pool.used[{#SNMPINDEX}]
SNMP OID:1.3.6.1.4.1.2011.5.2.1.10.1.3.{#SNMPINDEX}
方法二:使用SNMP自动发现
创建发现规则
名称:DHCP Pools Discovery
类型:SNMP agent
键值:dhcp.pools.discovery
SNMP OID:1.3.6.1.4.1.2011.5.2.1.10.1.2
配置监控项原型
名称:DHCP Pool {#DHCPPOOLNAME} Usage
键值:dhcp.pool.usage[{#SNMPINDEX}]
SNMP OID:1.3.6.1.4.1.2011.5.2.1.10.1.3.{#SNMPINDEX}
数据更新间隔:5m
创建计算项(计算使用率)
名称:DHCP Pool {#DHCPPOOLNAME} Utilization
键值:dhcp.pool.utilization[{#SNMPINDEX}]
公式:last("dhcp.pool.used[{#SNMPINDEX}]")/last("dhcp.pool.total[{#SNMPINDEX}]")*100
单位:%
4. 配置触发器
# 地址池使用率过高告警
名称:DHCP Pool {#DHCPPOOLNAME} usage > 90%
表达式:last(/Switch-DHCP/dhcp.pool.utilization[{#SNMPINDEX}])>90
严重性:警告
# 地址池耗尽告警
名称:DHCP Pool {#DHCPPOOLNAME} available IPs < 10
表达式:last(/Switch-DHCP/dhcp.pool.available[{#SNMPINDEX}])<10
严重性:严重
四、模板配置(推荐)
1. 创建模板
创建模板:"Template DHCP Huawei Switch"
配置相同的SNMPv3参数
创建发现规则和监控项原型
2. 监控项目建议
| 项目名称 |
键值 |
阈值建议 |
|---|
| 地址池总容量 |
dhcp.pool.total |
- |
| 已使用IP数 |
dhcp.pool.used |
>90%告警 |
| 可用IP数 |
dhcp.pool.available |
<10告警 |
| 冲突IP数 |
dhcp.pool.conflict |
>0告警 |
| IP使用率 |
dhcp.pool.utilization |
>90%告警 |
| 地址池状态 |
dhcp.pool.status |
异常告警 |
五、故障排除
1. SNMP连接测试
# 使用snmpwalk测试OID可达性
snmpwalk -v 3 -u zabbix_user -l authPriv \
-a SHA -A "password" -x AES -X "encryption" \
交换机IP 1.3.6.1.4.1.2011.5.2.1
2. Zabbix日志检查
tail -f /var/log/zabbix/zabbix_server.log
grep -i dhcp /var/log/zabbix/zabbix_server.log
3. 常见问题
- OID不正确:不同型号华为交换机OID可能不同,使用
snmpwalk遍历OID树查找
- SNMPv3参数错误:确认认证和加密参数匹配交换机配置
- 权限不足:检查SNMP视图配置
六、优化建议
调整监控频率:DHCP地址池变化较慢,建议5-10分钟采集一次
配置聚合图形:创建DHCP地址池总览仪表板
设置维护期:在DHCP维护期间暂停告警
配置依赖项:如果交换机不可达,则暂停DHCP监控项检查
通过以上配置,Zabbix可以全面监控华为交换机的DHCP地址池使用情况,及时预警地址耗尽风险。