Blog (41)
Komentarze (510)
Recenzje (0)

Ratowanie routera

@McDraculloRatowanie routera21.02.2012 19:50

Kilkanaście dni temu stałem się właścicielem dość wiekowego modelu routera firmy Linksys WRTU-54G-TM. Urządzenie umożliwia pracę, jako most sieciowy i w tym właśnie celu miał być wykorzystywany. Ja jednak chciałem sprawdzić, do czego to urządzenie można było jeszcze zmusić. Zacząłem od zmiany softu…

I można powiedzieć, że na tym skończyła się oczekiwana kolej rzeczy. Podczas wgrywania OpenWRT do urządzenia „coś poszło nie tak”. W sumie, można było się tego spodziewać – wgrywanie nowego softu rozpocząłem w nocy z piątku na niedzielę (studenci wiedzą o co chodzi ;) ). Aktualizacja oczywiście nie powiodła się, a mój router mówił do mnie jedynie zieloną mrugającą diodą. Nie przejmując się tym jednak postanowiłem doprowadzić urządzenie do stanu używalności.

Po rozebraniu routera moją uwagę przykuły wyprowadzenia do programatora JTAG. Początkowo to z nich chciałem skorzystać. Później jednak zauważyłem piny umożliwiające wymianę danych przez łącze szeregowe. Do tego celu nie można jednak wykorzystywać zwykłego portu RS-232. Logiczna jedynka w tym standardzie definiowana jest przez napięcie -3V do -15V. „Zero” to natomiast napięcie z zakresu 3V do 15V.

[1/2] Piny złącza szeregowego
[2/2] Wyprowadzenia na piny JTAG

Układ w WRTU-54G-TM pracuje w standardzie TTL (jak większość urządzeń tego typu). Do podłączenia do RS-232c niezbędne jest wykorzystanie układu scalonego MAX232 służącego do konwersji napięć na TTL. Dobrym pomysłem jest (ponoć) wykorzystanie kabli do telefonów Nokia (DKU-5 lub CA-42). Ja wykorzystałem układ kolegi zbudowany na podstawie schematu (sam, z lenistwa pewnie wykorzystałbym do tego kabel od Nokii):

schemat rs232 -> max232
schemat rs232 -> max232

Układ kolegi zbudowany jest miedzy innymi z… pudełka od zapałek. Zbudowany układ jest zaprezentowany na poniższych zdjęciach.

[1/2] Wtyczka w obudowie
[2/2] Wtyczka bez obudowy

[join][image=19022012202][join][image=19022012201]

Układ jak widać banalnie prosty. Jeden scalak, 4 kondensatory i wtyk RS232, do tego kilka kabelków no i pudełko po zapałkach, jako obudowa wtyczki.

Nadszedł czas na podłączenie wszystkiego razem i skomunikowaniu się komputera z routerem. Wtyki co prawda nie były opisane, ale bez trudu udało mi się zlokalizować piny GND, TxD, RxD oraz zasilania (niewykorzystywany). Zasilanie układu MAX232 zaczerpnięte zostało z wtyczki 24 pinowej zasilacza ATX (kolor pomarańczowy to 3.3V – takiego właśnie potrzeba).

Do komunikacji potrzebujemy jeszcze programu umożliwiającego komunikacje przez port szeregowy. Użytkownicy Windows XP mogą wykorzystać HyperTerminal. Ja wykorzystywałem program putty.

Przed rozpoczęciem ratowania urządzenia warto zaopatrzyć się jeszcze w serwer tftp, wykorzystałem do tego celu program pumpkin. Do przeprowadzenia operacji jest niezbędne również posiadanie właściwego oprogramowania dla routera.

Zaczynamy część właściwą. Po podłączeniu wszystkiego uruchomiamy putty i wpisujemy niezbędne do skomunikowania dane przedstawione na kolejnym rysunku.

[1/2] Wszystko podłączone
[2/2] Ustawienia komunikacji

Po poprawnym podłączeniu i prawidłowo wpisanych danych uruchamiamy router. Dalej już z górki dla tych, którzy nie lubią grzebać w elektronice, a uwielbiają za to wszelkie terminale. Jeśli wszystko dobrze pójdzie w oknie terminala zaczną pojawiać się literki. Można poczekać i zobaczyć jaki błąd wyskakuje podczas ładowania systemu routera (u mnie był to Kernel Panic Error) lub wcisnąć dowolny przycisk gdy na ekranie pojawi się:

 Hit any key to stop autoboot:  1

W zamian za to urządzenie przywita nas nazwą mikroprocesora, w który wyposażony jest router wraz ze znakiem zachęty

 ADM8668 # 

W terminal należy wpisać następujące polecenia:

 set if_tftp 'ping $(serverip)'
set do_tftp 'run tftp_boot'
set bootcmd 'run if_tftp do_tftp; run flash_flash'
save 

Następnie wklepujemy kolejne komendy:

 ADM8668 # set netretry no
ADM8668 # run bootcmd 

i wykonujemy restart urządzenia (poleceniem reset) i odczytujemy IP z jakim chciał połączyć się nasz router (fragment wyróżniony pogrubieniem):

 TX error status2 = 0x04000008
Using adm8668_net device
ping failed; host 192.168.0.250 is not alive   <-----
## Booting image at b0040000 ...
Check vendor string...    Image Name:   ADM8668 Linux Kernel(2.4.31)
   Created:      2011-01-20   5:11:38 UTC
   Image Type:   MIPS Linux Kernel Image (uncompressed)
   Data Size:    917440 Bytes = 895.9 kB
   Load Address: 80400000
   Entry Point:  80400000
   Verifying Checksum ... OK
OK 

Odczytany adres ustawiamy jako stały adres IP naszej karty sieciowej (przewodowej oczywiście ;) ) i łączymy komputer z routerem kablem ethernetowym (koniecznie port WAN , w portach LAN niestety nie działało). Wydajemy jeszcze polecenia:

reset

I sprawdzamy czy router odnalazł nasz komputer. Jeśli się tak stanie w poprzednio zaznaczonym miejscu zauważymy:

 TFTP from server 192.168.0.250; our IP address is 192.168.0.1 

Już prawie dobrnęliśmy do końca – pozostało jedynie pobranie na router oprogramowania. W tym celu odpalamy pumpkina, a w jego folderze umieszczamy soft, który chcemy umieścić na routerze z nazwą zmienioną na vmlinuz-8668 (bez żadnego rozszerzenia!). Na koniec w terminalu wydajemy komendę:

run update_kernel

Podczas tego procesu pamięć flash zostanie wyczyszczona, chwilę później nowe oprogramowanie routera zostanie zainstalowane (pumpkin zapyta się czy zezwolić na udostępnienie obrazu systemu). Po kolejnym restarcie zobaczyć możemy nasze dzieło i sprawdzić jak uruchamia się nasz router. Nie zapomnijmy zmienić adresu karty sieciowej na poprzedni i przepięciu wtyczki sieciowej do gniazda LAN routera! Następnie zalogujmy się przez telnet lub www do routera. Skończone!

W większości (jeśli nie wszystkich routerach z serii WRT) przywracanie oprogramowania wygląda tak samo (najczęściej jednak w modelach WRT54xx dostępne jest 5 pinów łącza szeregowego – jeden nie jest podłączony do układu). Pewnie wielu z Was zastanawia się po czemu wróciłem do oprogramowania producenta, a nie skorzystałem z oprogramowania alternatywnego. Z bardzo prostego powodu – autorski soft wystarcza mi w 100%.

Jest to tylko jedna z możliwości uratowania tego routera. Zależnie od uszkodzenia nieraz niezbędne jest skorzystanie z programatora JTAG. W każdym bądź razie źle wgrany soft (czy to przez własne przeoczenie czy z przyczyn losowych) nie oznacza śmierci naszego urządzenia.

Już niedługo zamierzam dokonać „drobnej” modyfikacji urządzenia wykorzystując do tego celu układ przedstawiony na zdjęciu. Oczywiście po jego wykonaniu, instrukcję jego wykonania postaram się umieścić na blogu.

Obiekt do eksperymanetów
Obiekt do eksperymanetów

PS. Po wgraniu oprogramowania kolor diody Power może zmienić się z zielonego na czerwony. Sam się początkowo zdziwiłem co jest nie tak, jednak w jednym z nowych softów zostało to zmienione ;) PS2. Oczywiście musiałem wgrać OpenWRT raz jeszcze... dzięki czemu otrzymałem przepis na drinka ;)



  _______                     ________        __
 |       |.-----.-----.-----.|  |  |  |.----.|  |_
 |   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
 |_______||   __|_____|__|__||________||__|  |____|
          |__| W I R E L E S S   F R E E D O M
 KAMIKAZE (bleeding edge, r24978) ------------------
  * 10 oz Vodka       Shake well with ice and strain
  * 10 oz Triple sec  mixture into 10 shot glasses.
  * 10 oz lime juice  Salute!
Szanowna Użytkowniczko! Szanowny Użytkowniku!
×
Aby dalej móc dostarczać coraz lepsze materiały redakcyjne i udostępniać coraz lepsze usługi, potrzebujemy zgody na dopasowanie treści marketingowych do Twojego zachowania. Twoje dane są u nas bezpieczne, a zgodę możesz wycofać w każdej chwili na podstronie polityka prywatności.

Kliknij "PRZECHODZĘ DO SERWISU" lub na symbol "X" w górnym rogu tej planszy, jeżeli zgadzasz się na przetwarzanie przez Wirtualną Polskę i naszych Zaufanych Partnerów Twoich danych osobowych, zbieranych w ramach korzystania przez Ciebie z usług, portali i serwisów internetowych Wirtualnej Polski (w tym danych zapisywanych w plikach cookies) w celach marketingowych realizowanych na zlecenie naszych Zaufanych Partnerów. Jeśli nie zgadzasz się na przetwarzanie Twoich danych osobowych skorzystaj z ustawień w polityce prywatności. Zgoda jest dobrowolna i możesz ją w dowolnym momencie wycofać zmieniając ustawienia w polityce prywatności (w której znajdziesz odpowiedzi na wszystkie pytania związane z przetwarzaniem Twoich danych osobowych).

Od 25 maja 2018 roku obowiązuje Rozporządzenie Parlamentu Europejskiego i Rady (UE) 2016/679 (określane jako "RODO"). W związku z tym chcielibyśmy poinformować o przetwarzaniu Twoich danych oraz zasadach, na jakich odbywa się to po dniu 25 maja 2018 roku.

Kto będzie administratorem Twoich danych?

Administratorami Twoich danych będzie Wirtualna Polska Media Spółka Akcyjna z siedzibą w Warszawie, oraz pozostałe spółki z grupy Wirtualna Polska, jak również nasi Zaufani Partnerzy, z którymi stale współpracujemy. Szczegółowe informacje dotyczące administratorów znajdują się w polityce prywatności.

O jakich danych mówimy?

Chodzi o dane osobowe, które są zbierane w ramach korzystania przez Ciebie z naszych usług, portali i serwisów internetowych udostępnianych przez Wirtualną Polskę, w tym zapisywanych w plikach cookies, które są instalowane na naszych stronach przez Wirtualną Polskę oraz naszych Zaufanych Partnerów.

Dlaczego chcemy przetwarzać Twoje dane?

Przetwarzamy je dostarczać coraz lepsze materiały redakcyjne, dopasować ich tematykę do Twoich zainteresowań, tworzyć portale i serwisy internetowe, z których będziesz korzystać z przyjemnością, zapewniać większe bezpieczeństwo usług, udoskonalać nasze usługi i maksymalnie dopasować je do Twoich zainteresowań, pokazywać reklamy dopasowane do Twoich potrzeb. Szczegółowe informacje dotyczące celów przetwarzania Twoich danych znajdują się w polityce prywatności.

Komu możemy przekazać dane?

Twoje dane możemy przekazywać podmiotom przetwarzającym je na nasze zlecenie oraz podmiotom uprawnionym do uzyskania danych na podstawie obowiązującego prawa – oczywiście tylko, gdy wystąpią z żądaniem w oparciu o stosowną podstawę prawną.

Jakie masz prawa w stosunku do Twoich danych?

Masz prawo żądania dostępu, sprostowania, usunięcia lub ograniczenia przetwarzania danych. Możesz wycofać zgodę na przetwarzanie, zgłosić sprzeciw oraz skorzystać z innych praw wymienionych szczegółowo w polityce prywatności.

Jakie są podstawy prawne przetwarzania Twoich danych?

Podstawą prawną przetwarzania Twoich danych w celu świadczenia usług jest niezbędność do wykonania umów o ich świadczenie (tymi umowami są zazwyczaj regulaminy). Podstawą prawną przetwarzania danych w celu pomiarów statystycznych i marketingu własnego administratorów jest tzw. uzasadniony interes administratora. Przetwarzanie Twoich danych w celach marketingowych realizowanych przez Wirtualną Polskę na zlecenie Zaufanych Partnerów i bezpośrednio przez Zaufanych Partnerów będzie odbywać się na podstawie Twojej dobrowolnej zgody.