Od dawna już w kącie leżał stary 12-portowy hub firmy 3com. Kiedyś już o nim wspominałem, jest to SuperStack II PS 40 HUB (3c16405), czyli w czasach, kiedy królował 10baseT-HD oraz 10baseT-FD był on dosyć często używany. Teraz już są czasy powszechnego 100baseTx-FD, gdzieniegdzie 1000baseTx-FD, po co więc odkurzać taki staroć? Szczerze, sam nie wiem, po części chciałem zobaczyć, jak się nim zarządza, po trochu mi się nudziło, no i stwierdziłem, że kabel null-modem może się przydać również do innych rzeczy.
Z początku ciężko było się dostać do niego, z racji tego, że był kiedyś używany (dziwne, żeby nie był) i standardowe hasła były zmienione. W sieci aż roiło się od haseł, tylnych drzwi, które jednak nie działały. Wreszcie znalazłem: 3comcso z hasłem RIP000. Oczywiście jedyną metodą, aby dostać się do huba było skonstruowanie kabla szeregowego Null-modem i podpięcie go do komputera. Jako emulator terminalna, z czystego lenistwa wykorzystałem program PuTTY (dostępny zarówno dla windows). Należy pamiętać, aby ustawić prędkość na 9600 (z wyższymi, mimo wzmiance w instrukcji użytkownika, że są obsługiwane, nie mogłem się połączyć), data bits na 8, stop bits na 1, wyłączyć parowanie oraz ustawić typ terminala na VT100+. Po podłączeniu i odpaleniu emulatora terminala, wciskając kilka razy enter, dla synchronizacji, pokazuje się pole login, a potem password. Po wpisaniu podanych wyżej danych, można przywrócić ustawienia fabryczne, komendą podaną w listingu. Moja jednostka posiadała firmware oznaczony wersją 1.3, więc lista opcji była uboga, jak również nie był dostępny interfejs www. Postanowiłem więc uaktualnić firmware do wersje 3.19, dostępnej na stronie 3com. Zabieg ten również był wykonywany za pomocą połączenia szeregowego i trwał około pięć minut. Po wszystkim, po zalogowaniu się przez PuTTY, używając standardowych haseł: security:security można już było ustawiać wszystko do woli.
Można oczywiście było przypisać adres ip, aby logować się telnetem albo poprzez http w celu konfiguracji oraz sprawdzenia poprawności działania huba, ale można było również przypisać adres slip ip, dzięki któremu można było zrobić to samo, tylko za pomocą kabla szeregowego. Domyślnym adresem ip slip jest 192.168.101.1. Żeby połączyć się z jednostką, musimy najpierw sprawdzić, czy nasze jądro obsługuje SLIP: dmesg|grep SLIP powinno zwrócić coś podobnego:
SLIP: version 0.8.4-NET3.019-NEWTTY (dynamic channels, max=256) (6 bit encapsulation enabled).
Jeśli nie, być może instalacja modułu slip.ko pomoże nam osiągnąć to, co chcemy.
Aby ustawić port szeregowy w tryb SLIP, używamy polecenia:
slattach -p slip -s 9600 /dev/ttyS0 & dla protokołu slip, prędkości 9600bps oraz portu COM1, a następnie zestawiamy połączenie: ifconfig sl0 192.168.101.2 pointopoint 192.168.101.1 up
i możemy się cieszyć połączeniem slip, poprzez które możemy konfigurować hub, albo tylko dla frajdy, go pingować.
Co w samych opcjach konfiguracyjnych? Niewiele, ale jak na owe czasy, daje do myślenia...
Przykładowe statystyki dla pierwszego portu:
Unit 1, Port 1 Detailed Information Port Type: RJ45 Port State: Enabled Port Mode: 10half Segment: 1, Dmz-1 Good Frames: 2091 Good Octets: 152765 FCS Errors: 0 Alignment Errors: 0 Frames Too Long: 0 Short Events: 0 Runts: 0 Collisions: 0 Late Events: 0 Very Long Events: 0 Data Rate Mismatches:0 Autopartitions: 0 Total Errors: 0
Oraz przykładowe sumaryczne dane dla wszystkich portów:
Good Good Errors Errors Port State Frames Octets (FCS) (Total) ------------------------------------------------------------------------ 1 enabled 2606 185725 0 0 2 enabled 1233 96076 0 0 3 enabled 1022 66005 0 0 4 enabled 1407 111939 0 0 5 enabled 0 0 0 0 6 enabled 11 894 0 0 7 enabled 25 1600 0 0 8 enabled 3 192 0 0 9 enabled 4 449 0 0 10 enabled 3 192 0 0 11 enabled 1 64 0 0 12 enabled 1 64 0 0 13 disabled 0 0 0 0 14 enabled 0 0 0 0
I mimo, że to 10, a nie 100, czy nawet 1000, w realiach polskiego dostępu do internetu i tak będzie śmigać z zapasem. Cóż. Trochę jesteśmy zacofani.