Oczywiście testy prowadzi się w różnych celach, ale te najprostsze, niewymagające większych środowisk testowych, przeprowadza się często "na biurku".
Marzeniem każdego testera jest, żeby móc testować wszystko najdokładniej, jak się da - co jest niestety niemożliwe z uwagi na ograniczenia "obiektywne" - czyli na przykład brak odpowiedniego sprzętu.
W przypadku testów urządzeń sieciowych, dominującym medium jest standardowy kabel miedziany kategorii 5e, powszechnie zwany skrętką. Przy jego pomocy, posiadając urządzenia takim kablem łączone (jako, że jest to najpowszechniej wykorzystywane medium), możemy zestawić sobie na biurku dowolne topologie.
Problem zaczyna się pojawiać wówczas, jeśli konieczne jest testowanie urządzenia, mającego inne, niż skrętka, medium transmisyjne. Tak jest w przypadku domowego routerka który, nieszczęśliwie dla testera, ma interfejs ADSL.
Rozwiązanie jest w zasadzie proste - należy mieć pod ręką również aktywną usługę ADSL od dowolnego operatora.
A co, jeśli takiej usługi nie ma? Cóż, w większości wypadków nie można zrobić wiele, bo nie dysponujemy urządzeniem służącym do zakończenia połączenia ADSL od strony operatora.
I w zasadzie w tym miejscu wpis można by zakończyć, gdyby nie to, że przypadkiem takie urządzenie (DSLAM) czasami da się znaleźć.
Jeśli podstawowy problem braku DSLAMa da się przełamać, cała reszta nie stanowi już większego problemu, bo całą topologię da się już zestawić "na biurku".
Topologia testowa wygląda tak:
Po stronie klienta mamy komputer podłączony do routera ADSL, który zamierzamy testować.
Po stronie operatora mamy DSLAM terminujący połączenie i fizycznie zmieniający medium w postaci pary miedzianej, na klasyczne połączenie ethernetowe.
Do pełni szczęścia będzie brakować nam jeszcze możliwości zestawienia tunelu PPP i dostępu przezeń do internetu. DSLAM zazwyczaj nie oferuje takiej funkcji, więc konieczny jest dodatkowy router - w tym wypadku wystarczy komputerek z odpowiednim oprogramowaniem.
Jako, że post ten powstaje - między innymi - w celach dokumentacyjnych, zajmiemy się na początek komputerkiem, który będzie pełnić funkcję serwera RRAS (Routing and Remote Access Service) i jego podstawowym zadaniem będzie terminacja połączeń PPP.
Tego typu rzeczy najlepiej robi się pod systemem Linux, ale w tym przypadku pozostaniemy przy starym, dobrym Windows XP - co najmniej z dwóch powodów.
Pierwszym powodem jest, że na komputerach pełniących funkcje maszyn "ogólnolabowych" ten rodzaj systemu (MS Windows) jest dominujący. Sporo ludzi nie lubi bądź nie umie posługiwać się innym systemem.
Drugi powód wyboru akurat systemu XP (skoro zgodnie z punktem powyżej jesteśmy ograniczeni do systemu ze stajni MS) jest taki, że można na wersji nieserwerowej zainstalować sterownik PPPoE i terminować sobie i uwierzytelniać przychodzące połączenia PPPoE.
Sterownik PPP, do tego celu potrzebny, można pobrać bezpłatnie ze strony http://www.raspppoe.com/
Niestety autorzy nie mają w planach portowania go na nowsze systemy, stąd też konieczność wykorzystania właśnie systemu w wersji XP. Alternatywnie można sięgnąć po system Windows Server, gdzie obsługa RRAS jest już wbudowana.
Pozostając przy powyższym sterowniku RASPPPoE, procedura jego konfiguracji jest następująca:
1) Instalujemy pobrany sterownik PPPoE
Klikamy
Start -> Panel sterowania
a następnie wybieramy Połączenia sieciowe.
Z istniejących połączeń lokalnych wybieramy to, do którego podłączony jest nasz DSLAM. Wybieramy Właściwości tego połączenia i klikamy Zainstaluj.... Jako typ składnika wybieramy Protokół, następnie Z dysku... i wskazujemy miejsce, do którego rozpakowany został sterownik PPPoE pobrany ze strony. Sterownik przedstawi się jako niepodpisany cyfrowo (co w pełni świadomie ignorujemy) PPPoE over Ethernet Protocol.
Zainstalowany protokół pojawi się na liście do użytku przez nasze połączenie sieciowe.
2) Konfigurujemy zdalny dostęp przez PPPoE
W otwartym oknie Połączenia sieciowe z lewej strony wybieramy zadanie Utwórz nowe połączenie i w kreatorze klikamy Dalej. Następnie wybieramy opcję Konfiguruj połączenie zaawansowane, a następnie Zaakceptuj połączenia przychodzące. W kolejnym oknie wybieramy kartę sieciową, do której przyłączony jest nasz DSLAM i klikamy Dalej i ponownie Dalej.
W okienku z użytkownikami określamy nazwę użytkownika i hasło, który będzie miał prawo łączenia się przez PPPoE. Ja wybrałem nowego użytkownika, dodając go poprzez kliknięcie Dodaj ;-) Ten użytkownik, wraz z hasłem będzie musiał być wpisany do konfiguracji routera ADSL, z którego będziemy się łączyć do naszej małej sieci "operatorskiej".
Następnie klikamy Dalej i zakańczamy kreator.
W oknie Połączenia sieciowe utworzone zostało nowe połączenie o nazwie Połączenia przychodzące.
Wybieramy Właściwości tego połączenia i na zakładce Sieć wybieramy właściwości Protokołu internetowego (TCP/IP).
Jeśli nie korzystamy w sieci "operatorskiej" z zewnętrznego serwera DHCP, określamy tu zakres adresów, jakie będą przydzielane przez serwer PPPoE przyłączonym klientom.
Jeśli wszystko zadziała poprawnie, powinno być już możliwe uwierzytelnianie PPP na naszym "serwerze".
Niestety, na tym etapie nie będziemy mieli dostępu z naszego testowanego routerka ADSL do internetu, ponieważ serwer RRAS takowego dostępu nie realizuje, ale można to w dość prosty sposób zmienić, uruchamiając usługę router+NAT.
3) Uruchamiamy router+NAT w celu umożliwienia dostępu do prawdziwego internetu.
Nasz komputer pełniący funkcję routera powinien być wyposażony w dwie karty sieciowe - pierwszą do połączenia z DSLAMem, drugą do połączenia z bramą dającą dostęp do internetu.
W pierwszym kroku uruchamiamy routing pomiędzy interfejsami,dokonując modyfikacji klucza rejestru:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
ustawiając:
Nazwa wartości: IPEnableRouter
Typ wartości: REG_DWORD
Dane wartości: 1
i uruchamiamy ponownie system.
Następnie otwieramy okno konsoli i korzystając z polecenia netsh uruchamiamy NAT:
a) instalujemy NAT
netsh routing ip nat install
b) dodajemy interfejs publiczny (od strony rzeczywistego połączenia internetowego)
netsh routing ip nat add interface "Połączenie lokalne" full
c) dodajemy interfejs PPPoE (od strony DSLAMa) - w systemach w języku angielskim ma on nazwę Internal, natomiast w systemach języku polskim Wewnętrzny
netsh routing ip nat add interface "Wewnętrzny" private
Powyższa konfiguracja powinna spowodować, że możliwy będzie dostęp do internetu z naszej mini-sieci PPPoE.
Mając gotowy serwer, możemy zająć się DSLAMem.
W moim przypadku jest to DSLAM firmy Zyxel wyposażony w kartę ADSL2+.
Sam DSLAM zajmuje się zestawieniem połączenia fizycznego i minimum, jakie trzeba skonfigurować, to wartości:
VPI - Virtual Path Identifier
VCI - Vitual Circuit Identifier
oraz modulację i tryb pracy ADSL (obecnie najczęściej używa się ADSL2+).
Jeśli mamy zamiar emulować jakiegoś konkretnego operatora, dobrze jest stosować zbliżone do niego ustawienia.
DSLAM, w uproszczeniu, dokonuje konwersji medium z ADSL na Ethernet (ma oczywiście sporo innych funkcji, jak wydzielenie różnych sieci VLAN i przyporządkowanie ich pod VC, agregację linii czy inne cuda, które tu nie są szczególnie potrzebne) i na jego wyjściu Ethernet otrzymujemy ramki PPP wysyłane do naszego serwera uwierzytelniającego.
W tym momencie, w zasadzie, powinniśmy mieć działające połączenie ADSL umożliwiające dostęp do internetu zza naszego routerka ADSL.
Ostatnią rzecz, o którą wypadałoby zadbać, jest jakaś bardziej "rzeczywista" niż dwumetrowy kawał kabla, symulowana linia ADSL, ale okazuje się, że sprzęt pozwalający symulować różne parametry rzeczywistej linii ADSL jest jeszcze mniej powszechnie dostępny, niż mały DSLAM.
Są więc dwa wyjścia - albo rozwinąć 3 kilometry kabla, albo próbować zbudować model sztucznej linii.
I jedna i druga metoda nie pozwoli niestety na emulację wszystkich rzeczywistych parametrów każdej linii ADSL - a co równie ważne, nie pozwoli na obiektywne określenie bądź symulację konkretnych wartości tych parametrów, ale jest to zawsze lepsze, niż nic.
Ponieważ nie miałem gdzie rozwiesić tych drobnych kilku kilometrów kable, wybrałem rozwiązanie numer 2.
Przez dekady, w czasach telefonii analogowej, stosowano emulatory linii miedzianej (tak zwane sztuczne linie) mniej lub bardziej podobne do poniższych schematów (poniższy pochodzi z tej strony).
co pozwalało emulować rezystancję i pojemność takiej linii.
Jakkolwiek model taki jest dużym, a nawet bardzo dużym uproszczeniem i nie daje się emulować szeregu zjawisk, jakie występują na liniach rzeczywistych (zakłóceń i przesłuchów z zewnętrznych źródeł, zmiany parametrów od czynników atmosferycznych, itp.) jest to z pewnością ciut lepsze przybliżenie, niż połączenie "na krótko" przy pomocy dwumetrowego kabla :-)
Taki emulator, w wersji wykonanego "na szybko" chałupniczego pająka, wygląda tak:
I już można "testować" routery ADSL ;-)
Brak komentarzy:
Prześlij komentarz