De router is de belangrijkste schakel tussen je thuisnetwerk en het internet. Veel mensen gebruiken de router met de originele software van de fabrikant. Voor veel routers zijn ook open source firmware versies verkrijgbaar.
Auteur: André Fondse
In dit artikel beschrijf ik de belangrijkste versies van open source routerfirmware, hoe je Fresh Tomato (hierna FT) op een Netgear R7000 router (hierna R7000) installeert en de web interface van FT.
Ik kan me voorstellen dat deze vraag bij je opkomt als je dit artikel leest. Er kunnen meerdere redenen zijn om andere firmware op je router te gebruiken, zoals:
Er zijn grofweg drie soorten open source firmware voor routers, te weten:
OpenWRT is een firmware voor mensen die goed weten wat ze doen. Met OpenWRT is het mogelijk om zelf te kiezen welke functionaliteit je wilt opnemen in je firmware. Als je router een Broadcom wifi-chipset heeft, dan is de ondersteuning voor Wifi mogelijk beperkt.
DD-WRT is een firmware die op het grootste aantal routers geïnstalleerd kan worden. Het is een firmware met veel ingebouwde mogelijkheden, zoals VPN, QoS, VLan, etc. Het installeren van deze firmware is soms lastig en er kan wel eens een bug in de firmware zitten.
Tomato heeft een mooie gebruikersinterface, installeert gemakkelijk en is stabiel. Daarentegen is Tomato voor minder routermodellen beschikbaar en heeft het iets minder functionaliteit vergeleken met DD-WRT. Van Tomato zijn diverse afsplitsingen. FT is een afsplitsing die momenteel goed onderhouden wordt.
In dit deel van het artikel beschrijf ik hoe je FT installeert op een R7000. Op deze router is het ook mogelijk om OpenWRT en DD-WRT te installeren. Ik heb voor een R7000 gekozen, omdat dit een gigabit router is met wifi-ac die zowel nieuw (€ 130,-) als tweedehands (vanaf ± € 50,-) verkrijgbaar is. FT is ook beschikbaar voor andere merken en/of modellen routers. Zie hiervoor de website van FT op https://exotic.se/freshtomato-arm/v2019/2019.2/ en https://exotic.se/freshtomato-mips/v2019/2019.2/.
Tijdens het schrijven van dit artikel is net beta versie 2019.3 van FT uitgekomen. In dit artikel beschrijf ik daarom nog de installatie van de stabiele versie 2019.2. Het installeren van FT op een R7000 bestaat uit vier stappen.
Voordat je met het flashen van de FT-firmware begint, wis je eerst alle instellingen van de originele firmware van je R7000 router. Je logt hiervoor in met je browser in de originele firmware en je kiest bovenaan het scherm voor het tabblad ‘advanced’. Daarna kies je in de linker menubalk voor ‘Administration’ en vervolgens voor de menu optie ‘Back-up Settings’. Klik daarna op de ‘Erase’-knop in het grote deel van het scherm onder het kopje ‘Revert to factory default settings’ (afbeelding 1). Nadat je op deze knop gedrukt hebt, krijg je een vraag waarin je moet bevestigen dat je echt alle instellingen wilt wissen. Na het terugzetten van de fabrieksinstellingen is de router bereikbaar onder IP-adres 192.168.1.1.
Deze stap bestaat uit het installeren van een initiële FT-firmware op de R7000. Deze tijdelijke firmware is in het bestandsformaat van de fabrieks Netgear firmwares. De initiële versie van FT voor de R7000 download je via de volgende link: https://exotic.se/freshtomato-arm/Netgear%20R-series%20initial%20files/. Kies in deze directory voor het bestand freshtomato-R7000-2019.2-initial-64K.zip. In dezelfde directory vind je ook een MD5 hash in het bestand MD5SUM van het bestand dat je net gedownload hebt. Controleer (bijvoorbeeld via de opdrachtprompt met het commando md5sum) of het gedownloade bestand dezelfde MD5 hash heeft. Als de MD5 hash hetzelfde is als in het bestand MD5SUM, pak je het zipbestand uit.
Log nu met behulp van je browser voor de laatste keer in, in de fabrieksfirmware van je router. Klik na het inloggen op het tabblad ‘advanced’ en klik vervolgens in de linker menubalk op ‘Administration’. Klik daarna onder ‘Administration’ op ‘Router Update’. Bovenaan het grote deel van het scherm klik je nu op de ‘Browse’-knop en selecteer je het bestand freshtomato-R7000-2019.2-initial-64K.chk dat je net uitgepakt hebt. Het installeren van de initiële FT-firmware start je door op de ‘Upload’-knop te klikken. De originele firmware vraagt vervolgens of je door wilt gaan (afbeelding 2).
Nadat je op de OK-knop geklikt hebt, start het uploaden van de initiële FT-firmware. Wacht rustig af totdat de router aangeeft dat dit proces voltooid is. Dit kan enkele minuten duren. De router wordt in dit proces herstart. Na de herstart, log je met je browser in op de router met de initiële FT op IP-adres 192.168.1.1 met de gebruikersnaam ‘admin’ en het wachtwoord ‘admin’. Na het inloggen krijg je een scherm als in afbeelding 3 te zien.
Nu installeer je de definitieve versie van FT. Deze versie heeft aanzienlijk meer mogelijkheden vergeleken met de initiële versie. In het linker menu van de initiële firmware klik je op ‘Administration’ en vervolgens ergens daaronder op ‘Upgrade’. In het grote deel van het scherm klik je op de knop ‘Bladeren’ en daarna selecteer je het bestand freshtomato-R7000-ARM-2019.2-AIO-64K.trx. Zet daarna met de muis een vinkje voor de zin ‘After flashing, erase all data in NVRAM memory’. Om de firmware te installeren, klik je op de ‘Upgrade’-knop. Klik daarna op de OK-knop om het installatieproces te starten. FT geeft aan wanneer het flashen gelukt is en herstart daarna de router.
Na de herstart, log je op je router met de eerder vermelde login en wachtwoord in op IP-adres 192.168.1.1. Je klikt in de linker menubalk weer op ‘Administration’ en daaronder op ‘Configuration’. Klik daarna op het pijltje van de keuzelijst onder ‘Restore Default Configuration’ en kies voor ‘Erase all data in NVRAM (thorough)’ en klik vervolgens op de OK-knop. Na het bevestigen, wordt het NVRAM gewist. Na de herstart van de router log je weer in de webinterface in met de bekende combinatie van IP-nummer, loginnaam en wachtwoord.
Meestal maak je gebruik van de webinterface van Fresh Tomato. Maar Fresh Tomato draait gewoon onder Linux. Je logt in op je router met het volgende commando:
ssh root@192.168.1.1
Het wachtwoord is gelijk aan het wachtwoord voor de ‘admin’ gebruiker van de web interface. Na het ingeven van het wachtwoord krijg je een standaard Linux opdracht prompt. In het volgende nummer van Linux Magazine (05-2019) ga ik verder op het gebruik van de opdracht prompt onder FT in.
De webinterface van FT ziet er overzichtelijk uit (afbeelding 4). De balk in de linkerkant fungeert als een menu. Als je op een woord in deze balk klikt, dan verschijnen de opties die bij dit onderwerp horen onder dit woord. Voor de basisconfiguratie van de router klik je op ‘Basic’ en doorloop je in ieder geval het onderdeel ‘Network’. De router is in principe nu klaar voor gebruik.
Met Fresh Tomato is het mogelijk om virtuele lans in te richten. Deze virtuele lans kunnen gekoppeld worden aan één of meerdere ethernetpoorten van je router en/of draadloze netwerken. Dit is bijvoorbeeld handig voor een gastnetwerk of voor alle ‘internet of things’ apparaten.
De virtuele lans configureer je als volgt op je router:
In afbeelding 5 zijn voorbeelden van deze instellingen opgenomen. Pas deze instellingen wel aan voor de configuratie van je eigen router.
Het installeren van andere firmware is niet geheel zonder risico. Een zeer belangrijk uitgangspunt is dat je alleen de nieuwe firmware installeert die bedoeld is voor jouw router. Verder is het belangrijk om altijd de procedure rondom de installatie goed van te voren door te nemen en exact te volgen.
Ondanks deze voorzorgsmaatregelen is het nog geen garantie dat het installeren van een andere firmware altijd goed gaat. Van de vier R7000 routers die ik van Tomato heb voorzien, ging dat bij één router in één keer goed. Bij een tweede moest ik de reset knop achterop de router 10 seconden ingedrukt houden om het NVRAM goed te wissen en daarna werkte deze router met FT. Bij een derde router was de gebruikersnaam admin niet opgeslagen in het NVRAM waardoor inloggen op de webinterface niet mogelijk was. Door op de router de knop voor wifi minimaal 4 seconden in te drukken, kan je een telnet sessie op poort 233 starten. Hierbij is het ingeven van naam en wachtwoord niet nodig. De vierde moet met TFTP van een nieuwe firmware voorzien worden. Voor de sluitingstermijn van dit artikel heb ik hiervoor nog geen gelegenheid gehad.
Fresh Tomato is een afsplitsing die momenteel goed onderhouden wordt.
Het installeren van andere firmware is niet geheel zonder risico.
Van de vier R7000 routers die ik van Fresh Tomato heb voorzien, ging dat bij één router in één keer goed.