OpenWRT flashen op een Linksys RE6500 Range extender (Deel 1)

Het is een lang gekoesterde wens van me om mijn KPN experiabox, Fritz!repeater 3000 en Linksys RE6500 Range extender te voorzien van een uniforme userinterface en functionaliteit. De oplossing lijkt in OpenWRT te liggen. Een open source operating systeem gebaseerd op Linux die zeer geschikt is voor routers ed.

Om het risico voor het bricken van de routers/accesspoints zo klein mogelijk te houden begin ik met het flashen van mijn Linksys RE6500 range extender. Deze is relatief goedkoop, dus als hij stuk gaat dan is de financiƫle schade niet al te groot.

In deze tutorial voeg ik eerst een TFTP server toe aan het netwerk, download ik de benodigde image-files. Flash de Linksys RE6500 met OpenWRT en configureer ik OpenWRT zodanig dat de Linksys zich weer gedraagt als een accesspoint in bridging modus.

Stap 1. TFTP server installeren en configureren

Hiervoor gebruik ik (wederom) mijn dual-boot laptop met daarop Ubuntu 5.3. Hierop installeer ik een TFTP server m.b.v. het commando:

sudo apt install tftpd-hpa

Het is handig om te weten of de Linksys de TFTP-server weet te vinden en de image files begint te downloaden. Daarom voegen we de opstartoptie –verbose toe aan de configuratiefile van de TFTP-server. Dit is de file /etc/default/tftpd-hpa. Voeg aan de regel TFTP_OPTIONS=”–secure” de optie –verbose toe:

# /etc/default/tftpd-hpa

TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/var/lib/tftpboot"
TFTP_ADDRESS=":69"
TFTP_OPTIONS="--secure --verbose"

Herstart de TFTP-server met:

sudo systemctl restart tftpd-hpa

Stap 2. IP-address TFTP-server aanpassen

De Linksys RE6500 probeert bij iedere reboot automatisch connectie te maken met TFTP-server op het adres 192.168.1.100. Dit nog voordat hij van een DHCP-server een IP-address vraagt. Zelf heeft hij default het IP-address 192.168.1.1. Het is dus zaak om de TFTP-server het IP-address 192.168.1.100 met submask 255.255.255.0 te geven.

Achterhaal eerst je ethernet device met ip -a:

syds@test:/etc$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: enp2s0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state DOWN group default qlen 1000
    link/ether 0c:9d:92:30:0f:41 brd ff:ff:ff:ff:ff:ff
3: wlp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 80:c5:f2:ea:b3:69 brd ff:ff:ff:ff:ff:ff
    inet 192.168.2.115/24 brd 192.168.2.255 scope global dynamic noprefixroute wlp3s0
       valid_lft 2946sec preferred_lft 2946sec
    inet6 fe80::6a46:a0e1:cc3a:1648/64 scope link noprefixroute
       valid_lft forever preferred_lft forever

In mijn geval gebruik ik de WLAN-adapter van de laptop, dus wlp3s0. Hier voeg ik tijdelijk het ip-address 192.168.1.100 met subnet-mask 255.255.255.0 aan toe:

syds@test:/etc$ sudo ip addr add 192.168.1.100/24 dev wlp3s0

Stap 3. Benodigde OpenWRT images downloaden

De TFTP-server gebruikt de directory /var/lib/tftpboot voor het up- en downloaden van bestanden. Plaats hier de image files m.b.v. de commando’s:

cd /var/lib/tftpboot
sudo wget http://downloads.openwrt.org/releases/19.07.7/targets/ramips/mt7621/openwrt-19.07.7-ramips-mt7621-re6500-initramfs-kernel.bin
sudo wget http://downloads.openwrt.org/releases/19.07.7/targets/ramips/mt7621/openwrt-19.07.7-ramips-mt7621-re6500-squashfs-sysupgrade.bin

Hernoem de file openwrt-19.07.7-ramips-mt7621-re6500-initramfs-kernel.bin naar um_factory_fw.bin. Hier zoek de Linksys RE6500 namelijk naar.

sudo mv openwrt-19.07.7-ramips-mt7621-re6500-initramfs-kernel.bin um_factory_fw.bin

Je bent nu klaar om de Linksys RE6500 te flashen.

Stap 4. De Linksys RE6500 flashen met OpenWRT

Om controle te houden op het proces volgen we de /var/log/syslog file, daar schrijft de TFTP-server namelijk zijn logging naar toe. In een terminal venster typen we:

tail -f /var/log/syslog

Sluit de Linksys RE6500 met een ethernet kabel aan op je switch of router, de zet hem aan. Hij begint dan direct de imagefile te downloaden, in je terminal venster zie in de syslog de volgende regel verschijnen:

Jul 24 17:50:35 test in.tftpd[5284]: RRQ from 192.168.1.1 filename um_factory_fw.bin

Tijdens het downloaden en in memory plaatsen van de image-file knippert de led van de Linksys RE6500 langzaam. Daarna reboot de Linksys RE6500 en gaat de led snel knipperen. Opdat moment draait OpenWRT op de Linksys RE6500 in “failsave-mode”. Om te voorkomen dat bij een reboot de Linksys RE6500 opnieuw de image file gaat downloaden en in memory laden, is het nu tijd om de TFTP-server uit te zetten. Dit doe je met het commando:

sudo systemctl stop tftpd-hpa

Je kunt vervolgens met ssh een verbinding opzetten naar de Linksys RE6500 met het commando:

sudo ssh -l root 192.168.1.1

Je krijgt dan het volgende scherm te zien:

Verander als eerste het root password met:

root@OpenWrt:~# passwd
Changing password for root
New password:

Mount daarna het root file system:

mount_root

Vervolgens gaan we de sysupgrade-file m.b.v. scp in de directory /tmp plaatsen. Open een tweede terminal venster op je laptop en geef daar het commando:

scp openwrt-19.07.7-ramips-mt7621-re6500-squashfs-sysupgrade.bin root@192.168.1.1:/tmp

Ga terug naar je eerste terminal venster (met daarin OpenWRT op je Linksys). We gaan nu de definitieve OpenWRT image installeren met sysupgrade:

sysupgrade -v /tmp/openwrt-19.07.7-ramips-mt7621-re6500-squashfs-sysupgrade.bin

Hetzelfde ritueel, langzaam knipperende led tijdens het laden van de definitieve image, reboot en daarna een snel knipperde led ten teken dat hij klaar en operationeel is.

Stap 5. OpenWRT op Linksys RE6500 configureren

Ga in je browser naar http://192.168.1.1, de LuCI webinterface van OpenWRT wordt getoond.

Klik op Login, en pas als eerste het password van root aan via System, Administration:

De volgende stap is de Linksys RE6500 een IP-address van je DHCP server laten verkrijgen, kies Network, Interfaces:

Selecteer de LAN-interface “br-lan”, en klik op Edit:

Kies bij Protocol voor “DHCP client” en klik op Save:

Klik daarna op Save & Apply, de Linksys RE6500 gaat nu rebooten. Na enige tijd verschijnt onderstaande melding, klik op Apply unchecked

De Linksys RE6500 krijgt nu een nieuw IP-address van je DHCP-server. Achterhaal daarom in je router cq op je DHCP server wat het nieuwe IP-address van je Linksys RE6500 wordt. In mijn geval is dat 192.168.2.95

Reboot je laptop, het tijdelijke IP-address 192.168.1.1 wordt nu van je WLAN-adapter gehaald en deze krijgt weer een IP-address van je DHCP-server in het zelfde subnet als de Linksys RE6500.

Ga vervolgens in je browser naar het IP-address van je Linksys RE6500, in mijn geval dus 192.168.2.95, of wel http://192.168.2.95 en log in met root en het password wat je eerder gekozen hebt.

Als laatste stap gaan we nu de Wireless instellingen aanpassen van je 2.4Ghz en 5Ghz netwerk. Kies voor Network, Wireless:

Radio0 staat voor je 5Ghz netwerk, en Radio1 voor je 2.4Ghz netwerk. Ik heb er voor gekozen om mijn 5Ghz netwerk een unieke SSID te geven, en mijn 2.4Ghz netwerk een SSID die op alle routers/repeaters voorkomt. Zo kan ik bewust met mijn laptop of telefoon het 5Ghz netwerk benutten, terwijl alle domotica devices zelf kiezen welke router/repeater het sterkste signaal geeft.

Kies onder radio0 de regel die begint met SSID:, en klik op Edit:

Kies onder het tab General Setup voor Mode: Access Point, kies een zinvolle naam voor ESSID, de rest kun je default laten staan. Klik op Save.

Kies onder het tab Wireless Security bij Encryption voor WPA2-PSK, en vul bij Key het wachtwoord van je draadloos netwerk in, laat de rest default en klik op Save. Je keert nu terug in het vorige scherm, doe hetzelfde voor de regel die begint met SSID onder radio1. Klik daarna op Save & Apply.

Tot slot nog de NTP-server configureren t.b.v. de tijd synchronisatie. Kies voor System, System, en het tab General settings.

Toelichting:

Hostname: zinvolle naam

Timezone: Europe/Amsterdam (CEST)

Klik vervolgens op het tab Time Synchronization

Toelichting:

Enable NTP client: aangevinkt

Use DHCP advertised servers: aangevinkt

NTP server candidates kan in principe leeg of default blijven, omdat de optie Use DHCP advertised servers aangevinkt staat. Dit gaat er wel vanuit dat je je DHCP server dusdanig hebt geconfigureerd dat hij de NTP server adressen meeservereerd in het DHCP bericht. Dat is in mijn geval wel het geval. Toch maar voor de zekerheid het NTP server adres ingevuld van mijn lokale NTP server bij NTP server candidates, kan geen kwaad lijkt me.

Je bent nu klaar, plaats je Linksys RE6500 op een locatie waar je dat nodig acht en met je laptop/telefoon of je een draadloze verbinding met de Linksys RE6500 krijgt en bijv. met je browser www.google.com kunt bereiken.

In mijn volgende tutorial flash ik mijn Fritz!repeater 3000 met OpenWRT.

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *