Script untuk Reboot Mikrotik saat Ping Timeout
Berikut
ini tulisan saya yang saya ujicobakan dari posting di Forum Mikrotik,
link terkait tread forum ada di bawah. Script ini sudah saya coba pada
konfigurasi di jaringan di tempat saya. Latar belakangnya sebenarnya
seperti ini, beberapa kali Wifi card Mikrotik seperti tidak
respon. Ada sinyal namun tidak bisa konek, akibatnya semua client WiFi
Disconnect. Sementara sistem dan resource tampak normal. Mikrotik masih
bisa diakses, dan butuh satu kali reboot untuk membuat RB menjadi Normal
kembali.
Dalam kondisi ini jika kita masih bisa
akses ke Mikrotik mungkin tidak masalah. Namun jika kita tidak ada akses
maka ini bisa jadi masalah. Dengan kondisi ini kita akan membuat
Mikrotik lebih smart dengan melakukan reboot secara otomatis jika
kondisi diatas menimpa Mikrotik.
Umumnya pengguna mikrotik yang baru agak
susah memahami script karena tidak paham logika yang akan dilakukan.
Berikut ini logika seerhana yang nantinya akan dikerjakan mikrotik
dengan menggunakan Netwatch dan Script. Dalam kasus ini saya menggunakan
asumsi Jaringan dan konfogirasi sebagai berikut :
- Mikrotik menggunakan RB 433 dengan 1 buah Wifi card.
- Salah satu IP RB 433 adalah 192.168.21.1
- Salah satu Wifi Client yang selalu konek memiliki IP 192.168.21.254
- Pada kondisi diatas maka semua client diskonek dan salah satu akibatnya dari RB433 tidak bisa ping ke IP 192.168.21.254
Dengan asumsi diatas Logika Algoritma yang akan diterapkan di Mikrotik adalah seperti berikut ini :
- Netwatch untuk cek koneksi ke IP 192.168.21.254, Apakah IP tersebut UP atau DOWN.
- Script yang bisa melakukan cek koneksi ke IP 192.168.21.254 apakah RTO (Request Time Out) aksinya adalah REBOOT.
- Jika Netwatch UP tidak ada aksi berikutnya.
- Jika Netwatch DOWN maka Script akan running.
- Script akan melakukan cek ping dengan interval dan selama waktu tertentu. Misal interval 5 detik dan selama 60 kali ping (5×60 =300 detik = 5 Menit)
- Jika selama 5 menit terjadi RTO maka Mikrotik akan REBOOT.
- Setelah Reboot harapannya Wifi bisa normal dan Jika Netwatch UP tidak ada aksi berikutnya. Namun jika belum normal mikrotik akan reboot tiap 5 Menit.
Berikut ini Scriptnya, Sebelum diaplikasikan sesungguhnya pastikan anda menyesuaikan IP dan mencoba terlebih dahulu.
Konfigurasi di Tool Netwatch :/tool netwatch
add comment=”IP Client Wifi” disabled=no \
down-script=”log warning \”Netwatch missed a ping to \
192.168.21.254 – starting 6 minute timeout script\” ;\
\_/system script run NetWatchBoot” host=\
192.168.21.254 interval=1m timeout=1s up-script=”"
Berikut Gambar hasil Tool Netwacth yang bisa dilihat melalui Winbox :
Konfigurasi di System Script:
add name=NetWatchBoot policy=”ftp,reboot,read,write,policy,\
test,winbox,password,sniff,sensitive,api” source=”:\
if ([/ping 192.168.21.254 interval=5 count=60] =0) do\
={/system reboot}”
test,winbox,password,sniff,sensitive,api” source=”:\
if ([/ping 192.168.21.254 interval=5 count=60] =0) do\
={/system reboot}”
Berikut ini adalah script yang telah dibuat dan dilihat melalui Winbox :
Jika 5 menit anda anggap terlalu cepat, anda bisa merubah bagian dari
script untuk disesuaikan. Misalnya REBOOT terjaid jika terjadi Diskonek
atau RTO selama 10 menit. Bagian script yang disesuaikan adalah : ping 192.168.21.254 interval=5 count=60
misalnya diganti menjadi :
ping 192.168.21.254 interval=10 count=60
Penjelasannya sistem akan melakukan cek ping tiap interval 10 detik selama 60 kali. Sehingga bisa dihitung = 10 detik x 60 = 600 Detik = 10 Menit.
Script ini saya ambil dari Forum Mikrotik How to auto-reboot if remote IP down for 5 minutes dengan penyesuaian dan tambahan penjelasan menurut pengetahuan saya.