事前導讀
https://www.meinekleinefarm.net/zabbix-template-net-mtr-my-traceroute/
其它相關資訊
https://xrcd2.blogspot.com/2023/04/zabbix-template-net-mtr-json-report-on.html
https://xrcd2.blogspot.com/2024/06/zabbix-70-lts.html
https://xrcd2.blogspot.com/2026/02/oracle-linux-101.html
以下操作基於 Oracle 10.1 + Zabbix 7.0.23
監控目地為專線是否有異常
從 Firewall WAN Port 至 介接的 Next Hop Gateway/Router IP 異常及品質監控
尤其是有二個以上的 WAN port 或使用 SD-WAN 的架構監控最為合適
如
前置作業 zabbix_server.conf
vi /etc/zabbix/zabbix_server.conf
### Option: EnableGlobalScripts
# Enable global scripts on Zabbix server.
# 0 - disable
# 1 - enable
#
# Mandatory: no
# Default:
# EnableGlobalScripts=1
EnableGlobalScripts=1
前置作業 Linux sudo
vi /etc/sudoers
zabbix ALL=(root) NOPASSWD: /usr/sbin/mtr , /usr/lib/zabbix/externalscripts/mtr.sh
可視自行監控需求修改之
前置作業 抄改 mtr.sh
https://github.com/xenadmin/zabbix-templates/blob/master/zabbix-net-mtr/mtr.sh
#!/bin/bash
IP=$1
mtr -r -c3 -w -b -p -j $IP
dnf install mtr -y
vi /usr/lib/zabbix/externalscripts/mtr.sh
可視自行監控需求修改之如
cat /usr/lib/zabbix/externalscripts/mtr.sh
#!/usr/bin/bash
IP=$1
/usr/sbin/mtr -n -r -c3 -w -b -p -j $IP
mrt 測試
shell 測試
前置作業 WEB UI [Administrator\General\Timeouts]
External check 30s
可視自行監控需求修改之
匯入 Template_Net_MTR.xml
https://github.com/xenadmin/zabbix-templates/blob/master/zabbix-net-mtr/Template_Net_MTR.xml
透過 Shell + Template 主要取得內容為
item key
(1)mtr.hop.host[{#HOP_ID}]
(2)mtr.hop.avg[{#HOP_ID}]
(3)mtr.hop.loss[{#HOP_ID}]
(1)MTR 第 n 個節點 IP
(2)MTR 第 n 個節點 IP 的 RTT
(3)MTR 第 n 個節點 IP 的 ICMP Loss
[{#HOP_ID}] 是一個由小到大的整數數值 從 1,2,3...其它的資訊可參考 Template_Net_MTR.xml
以上資訊的取得可用於圖示或告警之使用,可視自行監控需求修改之
Item prototypes
告警規則定義 可視自行監控需求修改之
如
last(/HiNet-GW/mtr.hop.loss[2]) >= 10
(last(/HiNet-GW/mtr.hop.host[2]) <> last(/HiNet-GW/mtr.hop.host[2],#2) or last(/HiNet-GW/mtr.hop.host[2])="???")

