Tuesday, April 30, 2019

Redial L2TP Mikrotik Automatic


Pernah nggak kalian membuat VPN server, entah itu PPTP, EOIP, L2TP, dan lain sebagainya ??
Permasalahan yang mimin hadapi ketika membuat VPN server pada MikroTik, ketika koneksi yg ditumpangi (baca:InetBroadband) kadang suka ngetrip, terkadang session L2TP menjadi diskonek yg mengakibatkan laju jalur L2TP terhambat, Solusinya di redial, atau pada ppp active dilakukan remove secara manual.

Hal ini sangat merepotkan kl harus manual, soalnya mimin sering otw ga sempet monitor ngawasin 24jam! Nah solusi berikut ini sangat recomended bagi anda yang bekerja sebagai VPNers (yaelah). Langsung aja deh, buat scheduler di mikrotik kalian isinya begini.

:global count [/ppp active print count-only]
:local i
:for i from=1 to=$count do={
   :global user
   :global vpnip
   :set user [/ppp active get $i name];
   :delay 1
   :set vpnip [/ppp active get $i address];
   :delay 1
   :if ([/ping $vpnip count=2] = 0) do={
      /ppp active remove numbers=$i
      :log error "$user $vpnip request time out!"
      } else={
      :log warning "$user $vpnip is reply..."
      }
   }
 }

Saturday, April 27, 2019

Monitor Ethernet Mikrotik Telegram



Kali ini saya akan bagi tips buat monitoring Rate pada Ethernet Mikrotik lalu dilaporkan ke Telegram. OK langsung aja ya, buat scheduler isinya seperti berikut

:global perulangan
:global statusEth
:global iface "ether2-CDIX"
/int eth monitor ether2 once do={
   :if ($"rate" = "100Mbps" && $perulangan <3) do={
      :set statusEth 0
      :set perulangan ($perulangan +1)
      :log error "$iface is 100Mbps"
      :local pesan "$iface is 100Mbps";
      /tool fetch url="https://api.telegram.org/bot380921xxx:AAGn69QpFDuLSOQd3E3JtIJxxxxx/sendMessage?chat_id=-20353xxx&text=$pesan" keep-result=no
      :if ($perulangan = 3 && $statusEth = 0) do={
         :log error "$iface MASIH 100Mbps"
         :local pesan "$iface MASIH 100Mbps"
         /tool fetch url="https://api.telegram.org/bot380921xxx:AAGn69QpFDuLSOQd3E3JtIJxxxxx/sendMessage?chat_id=-20353xxx&text=$pesan" keep-result=no
         }
      } else={
         :set statusEth 1
         :if ($statusEth = 1 && $perulangan >= 1000) do={:set perulangan 1}
         :if ($statusEth = 1 && $perulangan >= 1) do={:set perulangan ($perulangan +1)}
         :if ($perulangan = 2) do={
            :log warning "$iface 1Gbps"
            :local pesan "Alhamdulillaah $iface 1Gbps";
            /tool fetch url="https://api.telegram.org/bot380921xxx:AAGn69QpFDuLSOQd3E3JtIJxxxxx/sendMessage?chat_id=-20353xxx&text=$pesan" keep-result=no
            }
      }
}