OpenWRT na routeru TP-LINK TL-WR1043ND
O routeru
Router TP-LINK TL-WR1043ND v době, kdy jsem jej kupoval (11/2011) představoval dobrý poměr cena/výkon. Uměl vše, co do domácnosti potřebuji a byl za 1000 Kč (http://www.czechcomputer.cz/product.jsp?artno=68414).
CPU: Atheros AR9132@400MHz
RAM: 32 MB
Flash pamet: 8 MB
5 LAN portů a 1 WAN port
1 USB port
Tenhle návod si píšu i tak trochu sám pro sebe. Přece jen je to věc, kterou člověk jednou udělá a pak to funguje měsíce a roky. Jenže občas se stane, že dojde k fatálnímu zášlehu a proč pak zase hledat a vymýšlet řešení?
Obr. ze stránky produktu na http://cz.tp-link.com
Důvody pro alternativní firmware
Proč vůbec jiný firmware? Běžnému uživateli ten výchozí od TP-LINku bude určitě stačit. Alespoň na začátek. Mně na TP-LINKu vadí dvě věci a tou jsou výpadky WIFI. Nevím, zda jsem měl jen smůlu na zařízení, ale zatím to tak měli všechny typy, co mi prošly rukama. Jednou za cca 14 dní se prostě router musel restartovat. Dalším zklamáním bylo USB. Nastavil jsem si sdílení dat na jednom externím disku. Jenže po každém startu svého PC jsem se musel na disk přihlašovat. Nechtěl si přihlášení pamatovat.
Mezi další výhody alternativního firmware je daleko lepší správa a přehled. Dostanete se lépe na všechna nastavení, najednou půjde změnit nebo nastavit i to, co dřív prostě nešlo. A nemusíte se bát, OpenWRT má svoje GUI (grafické, přes webový prohlížeč) rozhraní. Vše se tedy nechá v základu naklikat.
Z počátku jsem přemýšlel i o firmware TOMATO, bohužel tenhle router beží na Atherosu. Takže OpenWRT je asi jediné funkční a zároveň rozumné řešení.
Přehrání firmware
Nic težkého, měl by zvládnout úplně každý. Stačí nalogovat se do webového rozhraní TP-LINKu. Vybrat flash firmware. Vybrat soubor s OpenWRT a dát upgrade. Verzi OpenWRT jsem dával „openwrt-ar71xx-tl-wr1043nd-v1-squashfs-factory“ ze stránek http://downloads.openwrt.org/backfire/10.03.1/ar71xx/ (z 21-Dec-2011 01:02).
Pro trošku pokročilé začátečníky by zde neměl být problém. Stačí pouze vybrat tu správnou verzi a do routeru ji nahrát. Po restartu nás už vítá nový firmware na bázi linuxu, ovšem s grafickým prostředím LUCI.
Pokud jste si nastavovali router s originálním firmwarem sami, zvládnete i tento. Je to ta samá klikačka a pro začátek plně stačí (net, WIFI, základní zabezpečení). Už zde jsme na tom lépe, než s originálním firmware.
První přihlášení nechce heslo, ihned si jej ale nastavte. Proklikejte a nastavte si vše potřebné (porty, WIFI, zabezpečení, IP adresy). To tu nebudu popisovat, jsou to základní věci.
Pokračujeme dále
Router TP-LINK TL-WR1043ND má jeden USB port, tak proč jej nevyužít? Jen nečekejte zázraky. Rychlost čtení z disku je cca 3,5 – 4 Mbps a zápisu pouhých 350 – 400 kbps (za 10 minut stáhnu 2,5 GB a nahraji 250 MB). Co se týká samby, tak funguje, ale film se občas seká. Navíc pokud na disk přistupuje více lidí naráz, je to téměř nepoužitelné.
Rozšíření o další funkce a jejich nastavení
Sice hodně věcí lze nastavit přes GUI LUCI, ale i tak bude potřeba abychom se připojili na router přes SSH. Osobně doporučuji program PuTTY.
V LUCI nastavte System – Administration: Interface LAN, Allow SSH password authentication a Allow the root user to login with password.
V Putty vyplníme IP adresu routeru (výchozí 192.168.1.1, pokud jste si nezměnili), SSH a port 22. Login je stejný jako do LUCI.
Instalační příkazy:
Načtení dostupných instalačních balíčků | opkg update |
Vyhledání určitého balíčku k instalaci | opkg list | grep hledany_vyraz |
Instalace balíčků | opkg install balicek |
Doporučuji instalovat
opkg install mc | Midnight commander - souborový manager |
opkg install htop | přehled o vytížení routeru |
opkg install joe | textový editor (ukládání ctrl+k a pak d) |
opkg install fdisk | správce disků |
Pro práci s USB diskama bude potřeba:
opkg install kmod-usb2
opkg install kmod-usb-uhci
opkg install kmod-usb-core
opkg install kmod-usb-storage
opkg install kmod-fs-ext2
opkg install kmod-fs-ext3
opkg install kmod-fs-vfat
opkg install kmod-fs-ntfs
opkg install ntfs-3g
Mountování disku
Pokud do USB portu připojíme disk nebo flash disk, je potřeba ho namountovat (připojit).
Pustíme si mc a vytvoříme dle potřeby prázdnou složku. Já ji mám v /media/usb_disk. Sem nyní přimountujeme disk (místo, kam mountujeme, musí již existovat):
mount /dev/sda1 /media/usb_disk.
Takto by to mělo fungovat, pokud na disku je filesystem ext2, ext3. Já měl problémy s NTFS, takže jsem použil příkaz:
ntfs-3g /dev/sda1 /media/usb-disk -o rw,sync
Nyní když se podíváme do /media/usb_disk, uvidíme tam obsah externího disku. Po každém restartu routeru musíme mountovat disk znova. Proto dejte do souboru /etc/rc.local řádek ntfs-3g /dev/sda1 /media/externi_disk -o rw,sync.
Případně přes LUCI přidáme v System – Startup - Local Startup následující:
# Put your custom commands here that should be executed once
# the system init finished. By default this file does nothing.
ntfs-3g /dev/sda1 /media/externi_disk -o rw,sync
exit 0
Samba
Aby se dalo přistupovat na externí disk rovnou jako na síťový, bude potřeba nastavit Sambu. Nainstalujte potřebné balíčky.
opkg install samba3
luci-app-samba
V /etc/passwd přidejte na konec řádek newuser:*:1000:65534:newuser:/var:/bin/false, slovo newuser změňte za své, bude to login na sambu. Zde ale POZOR! Při přihlašování na sambu z PC je pak potřeba psát ten login velkými písmeny (tedy NEWUSER).
Poté nastavte uživateli newuser heslo smbpasswd newuser password
Failsafe mode
Píšu až na konec, snad nebudete potřebovat.
Pokud se stane, že si router kompletně zablokujeme (a že se mi to vážně stalo), dá se vše obnovit pomocí failsafe modu. Vypněte router, poté jej zapněte a až začne blikat kontrolka SYS, zmáčkněte a držte tlačítko QSS tak dlouho, až SYS začne blikat rychleji. Nyní se dá na router připojit, ale pouze přes telnet a na IP 192.168.1.1. Takže si nastavte IP adresu na PC třeba na 192.168.1.2 a v PuTTY nastavte telnet, port 23. Není požadován login ani heslo.
Smazání uživatelského nastavení a uvedení OpenWRT do defaultu se provede příkazem:
mtd -r erase rootfs_data
Smazání celé konfigurace (factory reset). Hodí se pro opravdu smazání zcela veškeré konfigurace. Třeba nastavení firewallu mi to smazalo až při tomto příkazu:
rm -r /overlay/*
UPDATE: protože použitelnost takovéhoto zapojení je tristní, pořídil jsem si NAS server, viz tento příspěvek.
UPDATE2: Upgrade zpět na originalní firmware funguje, ale musí se ořezat boot hlavička. Pomocí skriptu http://www.makovec.eu/pub/drivers/tplink/orez-firmware-tp-link.pl orezte boot hlavičku. Firmware http://www.tp-link.com/Resources/software/TL-WR1043ND_V1.0_120210.zip
UPDATE3: Zpřístupnit router z venku lze. Jděte do nastavení routeru: Network / Firewall / Traffic Rules. Níže máte k dispozici Open ports on router: zde vyplníte potřebné položky:
Name: např. HTTP WAN REMOTE
Protocol: TCP
External port: 80
UPDATE4: Při přechodu zpět na TP-Link firmware router bliká všemi kontrolkami a nejde s ním hnout ani tam ani zpět. Je nutností rozdělat router a napojit ho na konzoli přes seriový kabel (k tomu používám výhradně Windows XP, kabel od Nokie USB to Serial s 3,3V výstupem, TFTP server, PUTTY a mikropájku), jinak to totiž nejde, pač u TP-Link se samostatně TFTP server nepouští a tudíž není požnost flash data poslat jinou cestou do routru. Zde ale bacha, touto cestou lze i špatným postupem zrušit tzv. bootloader a pak už je s routrem ámen - psát řádně adresy, tak jak je psáno na wiki!. Přesný postup je zde: http://wiki.openwrt.org/toh/tp-link/tl-wr1043nd#serial
>> Líbil se Vám článek? Ohodnoťte mě <<