Het doel: als er iets uitvalt, hoor je het van je eigen apparatuur en niet van de klant. De router kan daar een deel van, en het is belangrijk om te weten welk deel.
Wat je nodig hebt
- Een beheer-VLAN of in elk geval een vast beheeradres, zodat monitoring niet vanaf elk netwerk mag.
- Een plek buiten de router die meekijkt. Dat mag een kleine VM of een Raspberry Pi zijn; het punt is dat hij niet uitvalt met het apparaat dat hij bewaakt.
- Een SMTP-account voor uitgaande mail, bij voorkeur niet via de lijn die je aan het bewaken bent.
Stap 1: SNMP, zodat iemand anders de router kan uitlezen
In Diensten & tools:
- Zet SNMP op SNMPv3. Dat kost je twee wachtwoorden en levert authenticatie (SHA1) en versleuteling (AES) op. SNMPv2c stuurt de community in leesbare tekst over je netwerk; gebruik dat alleen op een beheernetwerk dat echt afgeschermd is.
- Vul een community of v3-gebruiker in, standaard
monitoring. - Vul bij Alleen vanaf het adres van je monitoringserver in, bijvoorbeeld
10.0.0.5/32. Laat je dit leeg, dan gebruikt de tool het beheernetwerk. Is er ook geen beheernetwerk, dan waarschuwt de tool dat SNMP vanaf elk adres bereikbaar is, en dat is precies wat je niet wilt. - Contact en Locatie zijn optioneel, maar ze staan straks in je monitoringsysteem en besparen je een zoektocht.
Wat er in het script komt: de standaard-community wordt uitgeschakeld, jouw gebruiker krijgt alleen leesrechten, en SNMP wordt aangezet. Schrijftoegang via SNMP kent de tool niet, en dat is een keuze: uitlezen is monitoring, schrijven is beheer.
Stap 2: grafieken op de router zelf
Zet in hetzelfde onderdeel Grafieken aan. De tool maakt dan /tool graphing voor interfaces, systeembelasting en queues, bereikbaar vanaf je beheeradres. Je vindt ze op http://<routeradres>/graphs.
Wat je moet weten: de grafieken worden bewust niet op schijf bewaard. Ze staan in het geheugen en zijn na een herstart weg. Dat is goed voor de flash en slecht voor je geheugen van vorige week. Gebruik ze om nu te kijken wat er gebeurt, niet als archief.
Stap 3: mail kunnen versturen
- Zet E-mail versturen aan.
- Vul SMTP-server, poort (587), TLS (STARTTLS), gebruiker, wachtwoord en afzender in.
- Vul een ontvanger voor backups in als je de wekelijkse backup ook per mail wilt.
Dit is één instelling die twee dingen mogelijk maakt: de wekelijkse backup per mail, en een netwatch-script dat /tool e-mail send aanroept. Let op de valkuil: mail over de lijn die net is uitgevallen komt niet aan. Mail werkt om iets binnen je netwerk te bewaken, niet om je eigen internetverbinding te bewaken.
Stap 4: netwatch voor de dingen die er echt toe doen
In Hoge beschikbaarheid (VRRP, Netwatch), onder de VRRP-tabel. Dat onderdeel staat standaard uit en heeft geen stap in de wizard. Per regel vul je in:
- Host
- Kies iets dat je echt iets vertelt: de NAS, het access point op de verste locatie, de andere kant van een tunnel. Een adres dat regelmatig wegvalt om onschuldige redenen levert alleen ruis op.
- Interval
- Standaard 30s. Korter reageert sneller en maakt het waarschijnlijker dat één verloren pakketje een actie afvuurt.
- Script bij down en Script bij up
- Eén regel RouterOS-script, bijvoorbeeld
/log warning "NAS onbereikbaar". Heb je meer nodig, zet de inhoud dan in een eigen script in Diensten & tools en roep het hier aan met/system script run naam.
Wat de tool schrijft: één /tool netwatch-regel per host, met timeout=1s en type=icmp. Die twee liggen vast. RouterOS 7 kent ook een controle op een TCP-poort of een HTTP-antwoord, maar die voeg je zelf op het apparaat toe.
Stap 5: logging die een herstart overleeft
- In Systeem: zet Logging op remote en vul je syslog-server en poort (514) in. Het logboek op de router zelf staat in het geheugen; na een herstart is het weg, en juist dan wil je weten wat eraan voorafging.
- Zet Firewall-drops loggen aan als je wilt zien wat er op je input-chain klopt. Reken op veel regels.
- Overweeg Watchdog: geef een adres op bij de provider, en de router herstart zichzelf als dat te lang onbereikbaar blijft. Eén instelling in plaats van een script.
Wil je zien wat er door de router gaat en niet alleen of hij leeft, zet dan Traffic flow export aan met het adres van je collector, poort 2055 en NetFlow v9 of IPFIX.
Testen
- Doe een
snmpwalkvanaf je monitoringserver. Lukt dat niet, controleer dan het adres bij Alleen vanaf en of je server daar echt vandaan komt. - Doe een
snmpwalkvanaf een willekeurig ander adres. Dat hoort te mislukken. - Stuur een testmail vanaf de router:
/tool e-mail send to="jij@example.nl" subject="test" body="test", en kijk daarna in/log printof hij is verstuurd. - Trek de stekker uit het apparaat dat je met netwatch bewaakt. Binnen je interval hoort je down-script te draaien. Controleer met
/tool netwatch printen in het log. - Open de grafieken op
/graphsen kijk of er lijnen lopen. - Kijk op je syslog-server of de regels van de router binnenkomen.
Waar een echt monitoringsysteem begint
Alles hierboven draait op de router, en daar zit de grens. Vier dingen die de router per definitie niet kan:
- Een apparaat kan zijn eigen dood niet melden. Een router die uit staat is precies zo stil als een router waar niets mis mee is. Alleen iets van buiten ziet het verschil.
- Er is geen geschiedenis. Je ziet de huidige toestand en wat je zelf hebt gelogd. Geen grafiek van vorige maand, geen beschikbaarheidspercentage voor in een rapportage.
- Er is geen alarmering. Geen escalatie, geen wachtdienst, geen bevestiging dat er iemand kijkt. Een mail die in een map valt is geen alarm.
- Netwatch kijkt alleen of iets antwoordt. Een lijn die antwoordt maar 40 procent van de pakketten verliest, is wat netwatch betreft in orde.
Zodra je meer dan een paar apparaten beheert, hoort het kijken buiten de router. Een monitoringsysteem als LibreNMS, Zabbix of Prometheus leest je router uit over SNMP, bewaart de geschiedenis, tekent de grafieken en stuurt het alarm. De configurator zet de kant van de router klaar, en dat is ook alles wat hij doet: hij installeert geen monitoringsysteem, schrijft geen trap-bestemming en richt The Dude niet in.
De verdeling die in de praktijk werkt: het monitoringsysteem kijkt van buiten naar je netwerk, en netwatch doet dat ene kleine kunstje binnen de router dat alleen daar kan.
Waar je op moet letten
- Laat SNMP niet vanaf elk adres bereikbaar. Het leest je hele apparaat uit: interfaces, adressen, namen, buren.
- Een script dat je configuratie wijzigt bij een storing, doet dat ook om vier uur 's nachts bij een vals alarm. Logregels zijn veiliger dan schakelacties.
- Gebruik netwatch niet voor failover tussen twee internetlijnen. Dat regel je met routeafstanden en een gateway-controle in Meerdere uplinks, sneller en zonder scripts die kunnen blijven hangen.
- Device-mode kan functies blokkeren. Gebruikt je down-script
fetchof e-mail, dan doet het stilletjes niets. Controleer met/system/device-mode/print.
Verder lezen: Netwatch en monitoring, Diensten en tools en Systeem en tijd.