August 10, 2019

TMobile thuis router in bridge mode krijgen

Deze pagina geeft een stappen plan om je TMobile thuis DrayTek 2132F modem router te updaten; om admin te worden. Dit is nodig om vervolgens de router in bridge mode te zetten.

Huidige firmware is 3.7.9.1 en DrayTek bied momenteel 3.8.0.3 aan.

Prerequisites

Eisen aan abbonement

  • geen telefonie

Voorkennis

stap 00: backup settings

  • Ga naar de web UI en log in. In het midden van de pagina staat Vigor2132FVn, zoniet, ga niet verder.
  • System Maintenance
  • Configuration Backup
  • Backup

stap 01: flash firmware

WARNING in stap 02 zult u lezen dat de moeite uit stap 01 niet nodig was.

Zie deze bron voor andere instructies, hieronder zijn de commandos Linux (Debian) specifiek.

  • Zorg dat 1 computer verbonden is via RJ45 met port 1
  • op de computer:
  • zet router uit
  • houd ‘factory reset’ ingedrukt terwijl u hem weer aanzet
  • het lampje knippert nu hevig en de router is in TFTP modus, u moet nu binnen 2min de file overzetten
  • op de computer:
    • ip addr add 192.168.1.10/255.255.255.0 dev eth0
    • ip route add 192.168.1.0/24 via 192.168.1.1 dev eth0
    • tftp 192.168.1.1
    • binary
    • put v2132_3803.rst

Kwam erachter dat mijn laptop wat automatische netwerk discovery doet, dus heb netwerken in het menu disabled en handmatig aangezet gezien file transfers mislukten.

voorbeeld input:

ip link set enx00e04c534458 up
ip addr add 192.168.1.10/24 dev enx00e04c534458
ip route add 192.168.1.0/24 via 192.168.1.1 dev enx00e04c534458
ping -c 1 192.168.1.1
tftp 192.168.1.1
binary
verbose
trace
status
put v2132_tw01.all
put v2132_tw01.rst
put v2132_3803.all
put v2132_3803.rst

voorbeeld output:

root@pinebook:~# apt install -y tftp unzip > /dev/null
root@pinebook:~# which tftp
/usr/bin/tftp
root@pinebook:~# cd /home/pine64/Downloads/
root@pinebook:/home/pine64/Downloads# ls *.ucb
V2132_20190810.ucb
root@pinebook:/home/pine64/Downloads# unzip Vigor2132_3803.zip 
Archive:  Vigor2132_3803.zip
  inflating: v2132_3803.all          
  inflating: v2132_3803.rst          
  inflating: Readme.txt
root@pinebook:/home/pine64/Downloads# unzip Vigor2132_v3.7.9_TW.zip 
Archive:  Vigor2132_v3.7.9_TW.zip
  inflating: v2132_tw01.all          
  inflating: v2132_tw01.rst


root@pinebook:/home/pine64/Downloads# ip link set enx00e04c534458 up
root@pinebook:/home/pine64/Downloads# ip addr add 192.168.1.10/24 dev enx00e04c534458
RTNETLINK answers: File exists
root@pinebook:/home/pine64/Downloads# ip route add 192.168.1.0/24 via 192.168.1.1 dev enx00e04c534458
RTNETLINK answers: File exists
root@pinebook:/home/pine64/Downloads# ping -c 1 192.168.1.1
PING 192.168.1.1 (192.168.1.1) 56(84) bytes of data.
64 bytes from 192.168.1.1: icmp_seq=1 ttl=255 time=0.795 ms

--- 192.168.1.1 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.795/0.795/0.795/0.000 ms
root@pinebook:/home/pine64/Downloads# tftp 192.168.1.1
tftp> binary
tftp> verbose
Verbose mode on.
tftp> put v2132_3803.rst
putting v2132_3803.rst to 192.168.1.1:v2132_3803.rst [octet]
Sent 8393464 bytes in 26.9 seconds [2496197 bits/sec]
tftp> root@pinebook:/home/pine64/Downloads# ls -al v2132_3803.rst
-rw-r--r-- 1 root root 8393464 Dec 18  2018 v2132_3803.rst

stap 02: configuratie

bron

Als de vorige stap heeft gewerkt, dan moet de router na het uploaden van de firmware (v2132_3803.rst) geupdate zijn.

Echter staat er in de release notes van de laatste versie: use the latest boot-loader, or need to upgrade 3752_B1 (ask your dealer) first, iets waar anderen ook al achter waren gekomen.

Heb ook nog andere namen geprobeerd, om te kijken of de huidige versie (die dus geen upgrade nodig heeft) wel werkt als de naam opgehoogd is:

cp v2132_tw01.rst v2132_3792.rst
cp v2132_tw01.rst v2132_zz99.rst

put v2132_3792.rst
put v2132_zz99.rst

maar dit werkt ook niet.

Maar er is nog wel hoop

git clone https://github.com/tjcomserv/draytools
cp V2132_20190809.ucb draytools/
docker run -it --rm -v $PWD/draytools:/repo --entrypoint bash python:2.7
root@cd7b972ae810:/# cd /repo/
root@cd7b972ae810:/repo# python draytools.py -vc V2132_20190809.ucb 
File is  :      compressed, encrypted (new)
Model is :      V2132
13f9e73e692b254f7c431a38c3340ee9

13f9e73e692b254f
0x2B254F69
0x13E73EF9
0x13E73EF9
0xEC18C106

Encrypted:      0xAA10F1BB

Decrypted:      0x0764C084
Plaintext:      0x07030000
fail

De tool kan de config niet parsen, we kunnen nog wel het MAC address proberen.

root@cd7b972ae810:/repo# python draytools.py -vm 00-1D-AA-BB-CC-DD-EE
Username  :     admin
Master key:     HIDDEN_ON_BLOG

Hetgeen wat initieel werkte was net iets anders, maar alles wat ik toen deed werkt inmiddels niet meer.

Persoonlijke conclusie

Zelf ben ik de DrayTek opgegeven en ben gegaan voor een Orange Pi als Access Point (L2) en laat de DrayTek de NAT doen, zie flow schema en code.

Weetjes

Andere manier om eigen router te gebruiken

Mocht de twijfel toeslaan, niet je TMobile router willen ‘slopen’, dan kunt u ook uw eigen router gebruiken als die een sfp ingang heeft. Ook kunt u een media converter en de huidige sfp gebruiken. Aan deze media converter kunt u direct uw apparatuur aansluiten, zoals een managed switch (L2) met VLAN ondersteuning. Goed om te weten; veel kleine switches (zoals Netgear en TP-Link) hadden als eis dat je software op een Windows PC installeert om de switch in te kunnen stellen.

Routers (L3) hebben vaak een web interface, dus geen software nodig op PC, alleen een browser. L2 doet frame forwarding en L3 doet packet routing en heeft vaak een default gateway, waar ze vaak op poort 80 luisteren met een web UI. Moderne L2 managed switches hebben wel “management via a web user interface”.

De web UI van de L3 DrayTek is te vinden op 192.168.1.1, wat tevens de default gateway is.

default gateway address

DrayTek maakt standaard gebruik van 192.168.1.1 als default gateway/web UI adres, maar u kunt ook een ander prive netwerk kiezen en 10.10.10.10 als default gateway instellen (makkelijker te onthouden).

eigen router maken

Mocht U een eigen router willen maken, bv. met een Raspberry Pi 4, dan kunt u ook gaan voor een sfp USB3.0 dongle. Dit maakt het mogelijk om zelf een dual stack in te richten met de 2002:a.b.c.d::/48 range, waar a.b.c.d het door de ISP uitgegeven DHCP IPv4 is.

Maar als u zelfbouw wilt heeft u weinig opgestoken van deze pagina en snapt u ook dat NAT in software langzamer is dan NAT in hardware.

Als niks voldoet kun je altijd nog je eigen ASICs inregelen.

Blog by lent.ink