رفتن به محتوا
بازگشت به وبلاگ
میکروتیک

Netwatch در MikroTik: پایش Host و تریگر اسکریپت

Netwatch را پیکربندی کنید تا Host ها را Ping کند و وقتی Host قطع یا وصل شد، اسکریپت‌ها را خودکار اجرا کند — هشداردهی و Failover خودکار.

مرداد ۱۴۰۵
۹ دقیقه مطالعه

مانیتورینگ با Netwatch در میکروتیک

Netwatch یک ابزار داخلی RouterOS است که به‌طور مداوم وضعیت دسترسی به یک هاست (آدرس IP) را بررسی می‌کند. وقتی هاستی از دسترس خارج می‌شود یا برمی‌گردد، Netwatch می‌تواند اسکریپت اجرا کند.

چطور کار می‌کند

Netwatch بسته‌های ICMP ping را به IP هدف ارسال می‌کند. اگر هاست پاسخ ندهد، اسکریپت "down" اجرا می‌شود. وقتی دوباره پاسخ دهد، اسکریپت "up" اجرا می‌شود.

TEXT
/tool netwatch

افزودن یک ورودی Netwatch

TEXT
/tool netwatch add host=8.8.8.8 interval=30s timeout=1s comment="Monitor Google DNS"

مشاهده وضعیت

TEXT
/tool netwatch print

کاربرد عملی ۱: سوئیچ خودکار WAN

برای failover بین دو WAN:

TEXT
/ip route add dst-address=0.0.0.0/0 gateway=203.0.113.1 distance=1 comment="Primary WAN"
/ip route add dst-address=0.0.0.0/0 gateway=198.51.100.1 distance=2 comment="Backup WAN"

/tool netwatch add host=203.0.113.1 interval=10s timeout=2s   down-script="/ip route set [find comment="Primary WAN"] distance=10"   up-script="/ip route set [find comment="Primary WAN"] distance=1"

وقتی WAN اصلی قطع شود، مسیر backup فعال می‌شود.

کاربرد عملی ۲: ثبت لاگ

TEXT
/tool netwatch add host=192.168.10.1 interval=60s   down-script="/log warning message="Server is DOWN!""   up-script="/log info message="Server is UP.""

کاربرد عملی ۳: ارسال ایمیل هشدار

TEXT
/tool netwatch add host=8.8.8.8 interval=30s   down-script="/tool e-mail send to="admin@example.com" subject="WAN DOWN" body="WAN is unreachable!""

استفاده از اسکریپت‌های جداگانه

برای منطق پیچیده‌تر، اسکریپت را جداگانه ذخیره کنید:

TEXT
/system script add name=wan-down source={
  /ip route set [find comment="Primary WAN"] distance=10
  /log warning message="Failover activated"
}

/tool netwatch add host=203.0.113.1 interval=10s   down-script="/system script run wan-down"

بررسی TCP (RouterOS v7)

در نسخه ۷، می‌توانید پورت TCP را نیز بررسی کنید:

TEXT
/tool netwatch add host=192.168.1.100 port=80 type=tcp-conn interval=30s   down-script="/log warning message="Web server down""

نکات مهم

  • Netwatch از ICMP ping استفاده می‌کند — اگر فایروال مقصد ICMP را مسدود کند، هاست به اشتباه down نشان داده می‌شود
  • timeout باید کمتر از interval باشد
  • اسکریپت‌ها با دسترسی کامل سیستم اجرا می‌شوند

خلاصه

  • Netwatch دسترسی به هاست‌ها را با فاصله زمانی قابل تنظیم بررسی می‌کند
  • در تغییر وضعیت، up-script یا down-script اجرا می‌کند
  • برای failover، هشدار و پاسخ خودکار بسیار مفید است