Deel dit onderwerp alstublieft!

Mikrotik scripts configuraties

Waar gaat dit artikel over

Mikrotik scripts configuraties kunnen je helpen bij het beheer van je router 

Configuratie uitgevoerd met een RB962UiGS-5HacT2HnT

RouterOS versie 6.44.3
Firmware 6.44.3

Mikrotik scripts maken je het gemakkelijk omdat deze scripts automatisch kunnen worden uitgevoerd. Dit door middel van Mikrotik scripts en scheduler.
Je kan bepaalde scripts alle dagen op een bepaald uur laten uitvoeren, bijvoorbeeld een Mikrotik script dat een backup neemt van je configuratie en doorzend met email 

Mikrotik scripts kunnen ook op regelmatige tijdstippen kijken hoeveel gebruikers er zijn geweest per dag op je hotspot en het aantal gebruikers naar je door mailen.
Doch Mikrotik scripts zijn niet zo gemakkelijk op te configureren, en ja ik ben daar ook geen held in. Ik wil je daarom een handje helpen om deze scripts op te bouwen.

Een Mikrotik script kan bijvoorbeeld een draadloze of ethernet interface in en uitschakelen op bepaalde uren of zelfs dagen. Andere Mikrotik scripts kunnen je per e-mail verwittigen als je Mikrotik router te warm wordt. De mogelijkheden van Mikrotik scripts zijn dus veelzijdig en hebben hun nut al bewezen.

Mikrotik wijzigt soms de manier van het aanmaken van de scripts. Ik reken er op dat jullie me gaan inlichten als er bepaalde Mikrotik script configuraties niet meer werken. Op deze manier kan ik ze corrigeren en jullie van de juiste info voorzien. Ik wil niet hebben dat er verkeerde informatie op mijn website wordt gegeven.

Om Mikrotik scripts te draaien schenk aandacht aan een paar punten

Indien je scripts op een zekere tijd wil laten draaien moet je zeker de klok juist zetten op je router. Bij sommige scripts moet je ervoor zorgen dat de tijd nog niet is verstreken om ze draaiend te krijgen. Indien de tijd is verstreken kan het zijn dat het Mikrotik script niet start.

Hou er rekening mee dat bij een stroomonderbreking van de router de email scripts niet meer zullen werken totdat deze terug van stroom worden voorzien.
Sommige scripts zullen niet meer werken na een stroomuitval, je kan deze terug gaan activeren door deze zo in te stellen dat ze bij het opstarten van de router terug worden geactiveerd.  Dit zal je zien bij bepaalde configuraties die ik hier zal behandelen. Ik zal dan ook van ieder Mikrotik script binnenkort een video tutorial maken.

Wat zijn de onderwerpen waar je moet op letten bij het maken van Mikrotik scripts?

Email instellingen 

Configureer eerst de email instellingen op je Mikrotik router om Mikrotik scripts die moeten mailen hun werk te laten doen. Hoe je dit moet doen kan je hier bekijken. Wel opletten en uittesten of de email juist is ingesteld en werkend is.

Het uur van je Mikrotik router moet juist worden ingesteld

Om het uur juist in te zetten moet je eerst de SNTP-client gaan instellen op je router. Op deze manier zal de klok op je Mikrotik router juist worden gezet volgens het land waarin je zich bevindt. De SNTP instellingen kan je hier bekijken. Als de tijd niet goed is ingesteld kunnen bepaalde Mikrotik scripts niet worden uitgevoerd. De configuratie hiervan kan je hier stap voor stap aanleren.

Controleer na een stroomuitval of de scripts nog werkend zijn

Na een stroomuitval is het noodzakelijk dat je een controle uitvoert op je Mikrotik router. Dit om er zeker van te zijn dat de Mikrotik scripts nog werken.
Soms kan het zijn dat de opstart tijd is verstreken met als gevolg dat het script niet meer werkt met alle gevolgen van dien.

automatisch
Mikrotik scripts
Mikrotik scripts

Herstart elke dag automatisch je Mikrotik router script

Soms is het noodzakelijk dat de Mikrotik Router bij zware belasting moet worden herstart om op deze manier het geheugen terug vrij te maken.
Op deze manier komt dit onderstaande script goed van pas. Door middel van deze reboot kan het vastlopen van de router vermeden worden .

Dit script is bijvoorbeeld aangeraden bij druk bezochte accesspoints in een hotel of camping of dergelijke meer. Doch laat de reboot gebeuren terwijl er weinig of geen gebruikers zijn. Dit kan in de nacht gebeuren maar schakel dan eerst de piepjes uit indien deze Mikrotik accesspoints zich bijvoorbeeld in een hotel bevinden. 

/system scheduler add name="Reboot Router Daily" on-event= system reboot" start-date=jan/01/1970 start-time=03:00:00 interval=1d comment="" disabled=no
Mikrotik script configuratie
Mikrotik scripts

Schakel automatisch dagelijks de FTP-service in en uit Mikrotik script

Daar FTP niet veilig is en kan misbruikt worden kan je deze met een script gaan uitschakelen. Doch als je Mikrotik FTP-service nodig hebt om bijvoorbeeld  een Mikrotik backup door te sturen naar je FTP-server is het wel gemakkelijk dat een script die FTP-service even aan en uit schakelt op je Mikrotik router.

Je kan die een tijdje inschakelen en daarna terug gaan uitschakelen om terug een veiligere status van je Mikrotik router te bekomen.
Dat kan je door middel van dit Mikrotik script  en met behulp van scheduler.

/system scheduler
add interval=1d name=enable-ftp on-event="/ip service enable ftp\r\
\n\r\
\n" policy=ftp,reboot,read,write,policy,test,password,sniff,sensitive start-date=jan/02/1970 \
start-time=01:00:00
add interval=1d name=disable-ftp on-event="/ip service disable ftp" policy=\
ftp,reboot,read,write,policy,test,password,sniff,sensitive start-date=jan/02/1970 start-time=\
01:15:00
Mikrotik script configuration
Mikrotik scripts

Mikrotik script schakel de wireless interface enkele seconden uit en terug aan

Het kan weliswaar gebeuren dat bij een wifi point to point link de wireless interfaces vastlopen. Maar je kan proberen door middel van een Mikrotik script de wireless interfaces langs beide zijden eens uit te schakelen. Dit met de bedoeling om deze terug aan de praat te krijgen. 

Doch zie dit script als een eerste hulp bij ongeval, het kan nooit geen kwaad om deze eerst uit te voeren en in dit voorbeeld zelfs automatisch.  
Hier heb je nog een tool nodig op de Mikrotik router, namelijk netwatch. Deze tool is ook voor vele doeleinden inzetbaar. 

Dit Mikrotik script zet je uiteraard op beide locaties van de link. Bijvoorbeeld op de Mikrotik SXT serie of op de Mikrotik Dynadish.
Vergeet niet om bij host het IP-adres in te geven van de andere kant van de link. Het is dus niet de bedoeling dat netwatch zijn eigen toestel pingt.

Wat doet dit Mikrotik script? Door middel van netwatch gaat deze pingen naar de SXT aan de andere kant van de link. Als de andere SXT niet antwoord schakelt dit script de wireless interface voor 5 seconden uit (instelbaar) en schakelt deze nadien terug in. Het IP-adres wordt bepaald door het door jou gebruikte IP-adres.



/tool netwatch
add down-script="/interface wireless disable wlan1;\r\
\n\r\
\n:delay 5s;\r\
\n\r\
\n/interface wireless enable wlan1;" host=192.168.88.20
Mikrotik aan-uit scripts
Mikrotik scripts

Mikrotik script schakel je acces point s'nachts  uit en s'morgens terug aan

Dit script is zeer bruikbaar voor toepassingen in een internaat of als je het gebruik van internet voor je kinderen wil gaan beperken. Doch daar is nog een andere oplossing voor. Dit kan je hier zien.

Je kan gebruik maken van een virtueel accesspoint zodat de volwassenen via een andere SSID en WPA2 sleutel toch nog op internet kan.
Zo heb je namelijk geen last dat je steeds je internet uit en in moet schakelen. Het kan ook veel problemen in het gezin verhelpen daar de kinderen dan gewend worden aan het automatisch afsluiten van hun internet verbinding.

Let wel bij het kopiëren van dit script en andere die samen werken met scheduler dat je het uur in scheduler juist instelt zodat het Mikrotik script wordt geactiveerd.

/system scheduler
add interval=1d name="Enable wlan1" on-event="enable wlan1" policy=read,write start-date=jul/31/2019 start-time=08:00:00
add interval=1d name="Disable wlan1" on-event="disable wlan1" policy=read,write start-date=jul/31/2019 start-time=21:00:00
/system script
add dont-require-permissions=no name="enable wlan1" owner=admin policy=read,write source="interface wireless enable wlan1"
add dont-require-permissions=no name="disable wlan1" owner=admin policy=read,write source="interface wireless disable wlan1"

Mikrotik scripts
Mikrotik scripts

Mikrotik script schakel de SSID uit als internet niet bereikbaar is

Dit script is intussen al heel veel in gebruik genomen om te voorkomen dat kwaadwilligen proberen in te breken op het acces-point. Doch dit geeft natuurlijk geen garantie. Maar indien er toch geen gebruik kan worden gemaakt omdat er geen internet is. Kan je deze dan beter automatisch laten uitschakelen. 

Bij het zien van de SSID denken de mensen dat ze kunnen gebruik maken van de hotspot maar aangezien er geen internet verbinding is kan je deze gaan uitschakelen.
Dit script wordt gebruikt met de bedoeling om de mensen die willen verbinden niet geïrriteerd geraken omdat het AP geen internet verbinding heeft. 

Stel het programma netwatch zodanig in zodat die bijvoorbeeld het google-dns 8.8.8.8 IP-adres of Cloudflare IP-adres 1.1.1.1 pingt.
Dit dient als controle of er een internet verbinding is of niet. Zodra het internet terug bereikbaar is wordt de SSID automatisch terug ingeschakeld.

/tool netwatch add host=8.8.8.8 down-script="interface wireless disable wlan1" up-script="interface wireless enable wlan1"
Mikrotik scripts

Dit Mikrotik script telt het aantal gebruikers en mailt deze naar je door.

Het lijkt me wel handig om het aantal gebruikers van je accespoint of hotspot per dag te laten doormailen. Al was het maar om wat statistieken te hebben.
Met dit Mikrotik script moet je wel zien dat de benaming van de DHCP-server juist is ingesteld. Je zal dit script moeten gaan bewerken met kladblok of notepad++.

De laatste editor geniet mijn voorkeur omdat deze ook een geavanceerde zoek en vervangfunctie heeft. Ja sommige parameters moet je gaan aanpassen naargelang de benaming van de interfaces, de IP-adressen, de datum en tijd en zo meer dus let goed op bij deze scripts. Dit zijn slechts voorbeelden en kunnen verschillen van uw configuratie.






:local i;
:local hostip;
:local hostname;
:local dhcplist "";
:local date [/system clock get date];
:local time [/system clock get time];
:local leasesall [ :len [ /ip dhcp-server lease find where server=dhcp1 ] ];
:local firmware [ /system routerboard get current-firmware ];
:local routeros [ /system package get number=0 value-name=version ];
:local macaddress;
/ip dhcp-server lease;
:foreach i in=[find where server=dhcp1 ] do={
:set hostname [get $i host-name];
:set hostip [get $i address];
:set macaddress [get $i active-mac-address];
:set dhcplist ($dhcplist . $hostname . " " . $hostip . " " . $macaddress . " " . $date . " " . $time . "\n");
};
/tool e-mail send to=uwemail@gmail.com subject="Mail subject" body=( "Aantal DHCP leases: $leasesall\n\n" . $dhcplist );
Mikrotik scripts

Schakel door middel van dit script firewall rules in en uit

Nog een interessant Mikrotik script is deze die één of meerdere firewall rules in en terug uitschakelt.
In dit voorbeeld maak ik eerst twee firewall rules aan voor een L2TP-IPSec-VPN configuratie.

Daarna toon ik hoe je door middel van het onderstaande script deze twee firewall rules kan in en uitschakelen. 
Dit om bijvoorbeeld na de kantooruren je VPN dicht te timmeren.


Tijdens de kantooruren worden deze terug ingeschakeld zodat de VPN terug bereikbaar is. Doch is dit maar een voorbeeld wat je nog allemaal kan aanvangen met dit soort van Mikrotik scripts. 

Opletten dat het begin uur  nog niet is verstreken of het script werkt niet.

/system script
add dont-require-permissions=no name=L2TP-DISABLE owner=admin policy=read,write source=\
    "/ip firewall filter disable [find comment=\"L2TP-IPSec\"];\r\
    \n"
add dont-require-permissions=no name=L2TP-ENABLE owner=admin policy=read,write source=\
    "/ip firewall filter enable [find comment=\"L2TP-IPSec\"];\r\
\n"

/system scheduler add interval=1d name=L2TP-DISABLE on-event=L2TP-DISABLE policy=ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon start-date=\ aug/01/2019 start-time=22:00:00 add interval=1d name=L2TP-ENABLE on-event=L2TP-ENABLE policy=ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon start-date=\ aug/01/2019 start-time=08:30:00

Mikrotik scripts

Mikrotik email bij hoge latency script

Ping gebruikt het ICMP-protocol om een ICMP ECHO REQUEST pakket te sturen naar host of gateway in afwachting van een reactie met een ICMP ECHO RESPONSE pakket. De reactietijd tussen het versturen en het ontvangen van de bevestiging wordt aangegeven als de round-trip time en wordt weergegeven in milliseconden.

Op deze manier kan de latency worden gemeten. Je kan de waarden in het script gaan aanpassen vooralleer je verwittigd wil worden. Indien de maximale tijd wordt overschreden wordt er een email verzonden. Of je kan een geluid signaal aansturen door middel van een Mikrotik router uitgerust met een PoE interface.

:local Themes "Monitor IP delay to alarmthreshold"
#Zet het te monitoren IP address hier onder.
:local addre 8.8.8.8;
#Zet de maximale vertraging hier onder in milliseconden.
:local ms 100;
:local avgRtt;
/tool flood-ping $addre count=10 do={
:if ($sent = 10) do={
:set avgRtt $"avg-rtt"
}}
:if ($avgRtt >= $ms) do={
#send mail
/tool e-mail send server=195.130.132.10 port=587user=uwusernaam password=uwpaswoord to=uwemail@gmail.com=uwemail@gmail.com
subject=$Themes body=("MonitoringIP:$addre\ndelay:$avgRtt ms")
:log err "Message has been sent";
}

MikroTik script
https://nl.wikipedia.org/wiki/Hotspot_(wifi)

Er zijn nog Mikrotik script configuraties op deze website

Er zijn op mijn website nog Mikrotik script configuraties te zien maar deze zijn meer gedocumenteerd. Deze zullen later ook opgenomen worden in deze blogpost.
Hier heb je nog een script configuratie. Dit script gaat je een email sturen als de latentie te hoog wordt op je draadloze link. Deze kan je hier zien.

Help en steun Wirelessinfo.be

Om de kosten te dekken van de hosting, de plugins en de onkosten die ermee gemoeid zijn schenk een kleine bijdrage

Klik op "new terminal" om het script te installeren. Plak het hieronder te vinden commando in de terminal

Verander de SSID als internet niet bereikbaar is.

Schakel de SSID uit als internet niet bereikbaar is.

Soms is het nodig dat het Mikrotik Routerboard bij zware belasting word herstart om vastlopen te voorkomen. dan is een dagelijkse reboot geen luxe. Met een script kan je dat automatisch doen

Deze website maakt gebruik van cookies. Door deze site te blijven gebruiken, accepteert u het gebruik van deze cookies.