zabbix 监控 ipv6
admin
2023-02-24 07:00:07
0

zabbix 简单监控ipv6地址的连通性,参照Template ICMP Ping模板

0、准备工作

0-1、服务器已有ipv6地址,ipv6涉及配置文件(部分可不管):
    /usr/share/oem/grub.cfg
    /etc/modprobe*
    /etc/sysconfig/network
    /etc/sysctl.conf /etc/sysctl.conf.first 
    /etc/ssh/sshd_config
    /etc/sysconfig/network-scripts/ifcfg-$ifcfg
    /etc/sysconfig/network-scripts/route6-$ifcfg  # ip -6 route add default dev "$ifcfg"
    modprobe ipv6 && lsmod | grep ipv6
    ip6tables
    ... 
0-2、zabbix server端编译(建议不开ipv6也可加上):
    ./configure --prefix=/usr/local/zabbix/ --enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl --with-libxml2  --enable-ipv6
    make; make install   # 重编译安装不会覆盖老的配置文件等

1、zabbix_server.conf

1-0、因为fping和fping6是区分的,但zabbix本身会不支持两个同时启用且能识别ipv6地址,需要应下载最新fping包编译安装(或者自定义shell脚本过滤ipv4地址使之兼容,但相对繁琐些。废弃!)
    wget http://www.fping.org/dist/fping-4.2.tar.gz
    tar xf fping-4.2.tar.gz && cd fping-4.2
    ./configure && make && make install
    chmod u+x /usr/local/sbin/fping
    cp -ra /usr/sbin/fping{,.bak} && cp -ra /usr/sbin/fping6{,.bak}
    cp -ra /usr/local/sbin/fping /usr/sbin/fping
    # 可先测试看新fping是否兼容ipv4和ipv6
1-1、取消注释Fping6Location=,且置空值
1-2、重启zabbix_server
1-3、ps aux | grep fping  # 查看没有fping6就对了,不然之前同时存在fping和fping6命令的操作且fping不支持ipv6就会页面显示【Cannot send ICMP ping packets to this host.】

2、zabbix_agentd.conf

2-1、自定义发现key:
    UserParameter=discovery.ipv6,sh /usr/local/zabbix/scripts/discovery_ipv6.sh discovery_ipv6
2-2、授权:
    chown zabbix:zabbix  /usr/local/zabbix/scripts/discovery_ipv6.sh
    chmod +x  /usr/local/zabbix/scripts/discovery_ipv6.sh
2-3、重启zabbix_agentd

3、zabbix 页面配置

3-1、创建模板:

zabbix 监控 ipv6

3-2、创建自动发现规则:

zabbix 监控 ipv6

3-3、创建监控原型:

zabbix 监控 ipv6

3-4、创建触发器原型:

zabbix 监控 ipv6

3-5、链接关联Template IPv6 Address模板到监控原始模板(母模板)

4、其他

4-1、ipv6地址可自动发现亦可根据资源记录api获取
4-2、其他监控如ip6tables加入/etc/sudoers用户允许然后自定义防火墙监控

附件:

# cat /usr/local/zabbix/scripts/discovery_ipv6.sh 
#!/bin/bash
# ipv6 地址发现

function discovery_ipv6(){
    ipv6=($(ip a | grep 'scope global' | grep -oP '(?<=inet6 )[^/]+' | grep -v '^fe80'))
    printf '{\n'
    printf '\t"data":[\n'
    for key in ${!ipv6[@]}
    do
        if [[ "${#ipv6[@]}" -gt 1 && "${key}" -ne "$((${#ipv6[@]}-1))" ]];then
            printf '\t {\n'
            printf "\t\t\t\"{#IPV6ADDRESS}\":\"${ipv6[${key}]}\"},\n"
        else [[ "${key}" -eq "((${#ipv6[@]}-1))" ]]
            printf '\t {\n'
            printf "\t\t\t\"{#IPV6ADDRESS}\":\"${ipv6[${key}]}\"}\n"
        fi
    done
    printf '\t ]\n'
    printf '}\n'
}

if [ -z "$1" -o "$1" = "discovery_ipv6" ]; then
    discovery_ipv6
else
    echo "Usage: sh $0 [discovery_ipv6]"
    exit 1
fi

相关内容

热门资讯

“五一”小长假黄金零售市场新变... 【大河财立方 记者 孙凯杰】 “五一”小长假,黄金价格出现一波短暂调整,线下黄金零售市场热度如何?5...
以军3周来首次袭击黎巴嫩首都 据以色列总理内塔尼亚胡和国防部长卡茨当地时间5月6日晚发表的联合声明,以军当天对黎巴嫩首都贝鲁特南郊...
东莞移动:5G-A智擎护航, ... “五一”期间,松山湖草莓音乐节、广东国际汽车展示交易会·春季、2026茶园游会田园文化美食节、大岭山...
汉阳“知音数创”AI智能体创新... 4月30日,武汉市汉阳区数智产业推介会暨汉阳“知音数创”AI智能体创新大赛启动仪式在武汉基金产业基地...
伊朗最高领袖军事顾问:美国必须... 当地时间5月6日,伊朗最高领袖军事顾问穆赫辛·雷扎伊在接受采访时表示,伊朗不允许美国在不付出代价的情...
瑞士确诊、法国密接、西班牙待命... 综合法媒报道,国际探险邮轮“洪迪厄斯”号上的汉坦病毒事件,正从南美航程延伸至欧洲语境。最新进展显示,...
AMD锐龙X3D快到把游戏跑崩... 快科技5月6日消息,在Apex英雄最新Overclocked补丁中,修复了一个颇为尴尬的问题:AMD...
重磅|第十九届智慧城市大会将于... 2026年7月16日-18日,第十九届智慧城市大会将在天津社会山国际会议中心举办。本届大会由中国服务...
奥巴马暗批特朗普:不应将司法与... 美国前总统奥巴马近日在接受采访时,借列举总统权力被滥用的多个例子,含蓄批评总统特朗普,但全程未直接点...
三星宣布:在中国大陆市场停止销... 【大河财立方消息】5月6日,三星(中国)投资有限公司发布通知称,为应对急剧变化的市场环境,经慎重研究...