zabbix首页图标提示Ping loss is too high on host
图形如下
之前为了判断公网的是否中断,把114DNS的IP地址加入了fping
但是114.114.114.114可能访问太多或者运营商原因,有一天解析中断了,后来发现可以通过域名设置,腾讯的设置如下
DNS名称里填域名就行,也可以ping通,上zabbix的服务器上执行fping也没有发现丢包。
根据zabbix论坛的搜索结果发现
查fping ipv6是否配置
cat /etc/zabbix/zabbix_server.conf|grep Fping6Location
这段配置我这里是注释掉的
最后查询发现是zabbix本身bug导致的
zabbix会根据域名查询对应ip地址,若返回多个,则会随机选择一个去执行fping,这个就有问题了,www.qq.com返回的既有ipv4又有ipv6,这时候如果刚好选择的是ipv6的地址,去执行fping的时候必然是失败的。
所以BAT三家只有www.baidu.com在执行dns查询时不会返回ipv6的地址,这个就不会丢包了。
查询结果如下
C:\Users\admin>nslookup www.baidu.com
服务器: ftp.ops
Address: 10.24.11.250
非权威应答:
名称: www.a.shifen.com
Addresses: 220.181.38.149
220.181.38.150
Aliases: www.baidu.com
C:\Users\admin>nslookup www.qq.com
服务器: ftp.ops
Address: 10.24.11.250
非权威应答:
名称: public-v6.sparta.mig.tencent-cloud.net
Addresses: 240e:928:1400:10::37
240e:928:1400:10::17
123.150.76.177
123.150.76.178
Aliases: www.qq.com
C:\Users\admin>nslookup www.taobao.com
服务器: ftp.ops
Address: 10.24.11.250
非权威应答:
名称: www.taobao.com.danuoyi.tbcache.com
Addresses: 240e:b1:9801:409:3::3f9
240e:b1:9801:408:3::3f9
240e:940:e001:1:3::3fa
240e:b1:9801:400:3::3fa
240e:b1:a821:0:3::3f5
240e:b1:a820:0:3::3f6
240e:940:e001:4:3::3f9
240e:b1:a821:0:3::3f6
240e:940:e001:5:3::3fa
124.239.227.236
106.117.214.226
106.117.214.225
124.239.162.238
124.239.234.106
124.239.163.238
124.239.159.105
124.239.239.235
106.117.213.224
Aliases: www.taobao.com
解决方案:尽量找不会返回ipv6地址的域名作为公网是否中断的判断条件