English version


0x08 graphic

0x01 graphic

Menu główne

Instalacja i konfiguracja Neostrady Plus pod systemem Linux (lub innym unixowym).


Dla stałych Klientów


Artykuły i ciekawostki

UWAGA - nieniejszy artykuł niestety nieco się już zdeaktualizował, jest niekompletny. Nie zawiera m.in. opisu konfiguracji drugiego dostępnego modemu USB (Speedtouch) oraz modemów z routerkami sprzętowymi (warianty ze switchem lub bez oraz z wifi). Aktualizacja w przygotowaniu.

Dla niecierpliwych: wybrać odpowiedni rozdział (modem Ethernet BEZ routera, lub USB) i przejść od razu do sekcji "praktyka".

Wstęp: historia, dlaczego, jak to działa?

1. W początkowym, pilotażowym okresie istnienia Neostrady klient otrzymywał modem ADSL z wyjściem Ethernet, a konfiguracja sieci była statyczna (stałe IP).

2. Następny etap historyczny to formalne, komercyjne uruchomienie "zwykłej" neostrady. Dokonano wtedy zamiany konfiguracji statycznej na dynamiczną, wykorzystując prosty mechanizm DHCP na Ethernecie. Można się więc było łatwo łączyć spod linuxa/unixa: podczas pilotażu - w sposób oczywisty, a później - używając dowolnego klienta DHCP (np. dhcpcd).

3. Neostrada Plus używa nowego, popularnego również u providerów na Zachodzie mechanizmu - kapsułkowania PPP over Ethernet (w skrócie: PPPoE). Nie będę w niniejszym artykule rozwodził się specjalnie nad precyzyjnym opisem tego protokołu. Najprościej rzecz ujmując, w zwykłe ramki Ethernet "wkłada się" ramki PPP, znane nam już doskonale z tradycyjnych połączeń modemowych.

Po co się to robi? PPP daje dostawcom usług internetowych większe możliwości kontroli użytkowników (proces logowania, konta, użytkownicy, hasła i w końcu: przydzielanie oraz zmiany adresów IP). Ponieważ jednak duża część urządzeń xDSL/kablowych udostępnia standardowo zwykły, "prosty" Ethernet, który działa bardzo dobrze, ale zapewnienie przy jego użyciu mocniejszej kontroli dostępu użytkowników jest trudniejsze - zatem część usługodawców wymusza na nas stosowanie tego typu hybrydowych rozwiązań.

4. Ostatni etap rozwoju usługi Neostrada Plus to przejście z modemów z wyjściem Ethernet na modemy komunikujące się ze stroną klienta poprzez USB.

Pytanie o cel tego posunięcia? Jak się wydaje, z jednej strony wyeliminowano konieczność posiadania karty sieciowej, a z drugiej: nieco utrudniono "współdzielenie połączenia" na więcej komputerów (natomiast i tak w niedługim czasie od wprowadzenia tej zmiany na rynku masowo pojawiły się małe, sprzętowe routery wyposażone w USB w cenie rzędu 300-400zł).

Instalacja - wersja 1: modem z wyjściem Ethernet (sam modem, BEZ ROUTERA)

Wstęp

Istnieje kilka implementacji PPPoE dla Linuksa. Od 2.4.17 mamy do dyspozycji standardowy, dedykowany moduł jądra. Natomiast najłatwiejsza w instalacji i ogólnie niekłopotliwa wydaje się implementacja z roaringpenguin.com (przy czym trzeba zauważyć, że jest to program user-space, zatem potencjalnie nieco wolniejszy, niż rozwiązania z poziomu jądra).

Dla większości dystrybucji istnieją już gotowe pakiety binarne o nazwie rp-pppoe; np. w dystrybucjach RedHat 8.0, 9, Fedora Core 1 pakiet ten jest nawet instalowany standardowo i bez pytania.

Polecam zaopatrzyć się w wersję co najmniej 3.5.

Użytkownicy systemów innych niż Linux powinni dalej mieć możliwość skompilowania sobie rp-pppoe ze źródeł.

W wersji 3.5+ rp-pppoe mamy do dyspozycji prosty konfigurator adsl-setup (ten konfigurator po prostu edytuje plik /etc/ppp/pppoe.conf). Należy podać mu nazwę użytkownika, hasło; najlepiej, żeby nie zmieniał nic w konfiguracji DNS-ów (wtedy w /etc/resolv.conf możemy wyedytować sobie wszystko na stałe samemu) ani żeby nie ruszał niczego z firewallem (uwaga jak powyżej - polecam konfigurację ręczną).

Jeśli konfigurujemy pppoe.conf ręcznie, albo chcemy sprawdzić, czy konfigurator zrobił wszystko dobrze, to trzeba jeszcze pamiętać, że generalnie wszystko ląduje w pppoe.conf, poza informacją o haśle, która powinna wylądować w pliku /etc/ppp/pap-secrets. Dla typowych celów format pliku jest taki:

[nazwa użytkownika] * [hasło]

Praktyka

1. Na początku należy zarejestrować się w usłudze Neostrada Plus. W tym celu przy pierwszym logowaniu podajemy username "rejestracja@neostrada.pl" i haslo "rejestracja". Wartości te, jak zaznaczyłem powyżej, wpisujemy (lub wpisał za nas konfigurator, ale zawsze warto to sprawdzić) do /etc/ppp/pppoe.conf i /etc/ppp/pap-secrets. Łączymy się: adsl-start. Użyty login i hasło daje nam uprawnienia do pingowania komputerów oraz do wejścia na stronę rejestracja.neostrada.pl.

2. Przechodzimy procedurę rejestracji, postępując za wskazówkami ze strony. Zostaną nam przydzielone docelowe wartości loginu i hasła (warto zapisać na kartce/wydrukować).

3. Rozłączamy się: adsl-stop. Uaktualniamy /etc/ppp/pppoe.conf i /etc/ppp/pap-secrets przydzielonymi nam przed chwilą, ostatecznymi wartościami.

Od teraz mamy do dyspozycji skrypty adsl-start, adsl-stop i adsl-status. I to tyle. Neostrada jest widoczna w systemie jako interfejs PPP (zazwyczaj będzie to ppp0).

Instalacja - wersja 2: modem z wyjściem USB

UWAGA!

Na rynku dostępne są zestawy z modemami USB dwóch producentów: Sagem oraz Thomson(Speedtouch). Poniższy tekst opisuje procedurę instalacji zestawu z modemem Sagem.

Wstęp

1. W serwisie WWW neostrady znajduje się oficjalna instrukcja instalacji dla systemu Linux: www.neostrada.pl/doc/instalacja_sagem_linux.pdf. Postępując według niej należy wykorzystać sterowniki dostarczone z modemem na płycie CD.

2. Alternatywnym i polecanym sposobem instalacji jest samodzielne użycie najnowszych sterowników i skryptów z internetu. Ma to znaczenie o tyle, że sterownik do modemu Sagem Fast dla Linuksa, którym się zajmujemy, jest ciągle w fazie beta. Używając plików z sieci dostajemy pewność posiadania najnowszej wersji oraz pełną kontrolę nad całym procesem instalacji.

Praktyka

  1. Nie podłączamy modemu do komputera.

  2. Ze strony http://eagle-usb.fr.st/ pobieramy najnowszy sterownik do modemu (bezpośrednio v1.0.4: tutaj).

  3. Kompilujemy sterownik.

    • Do kompilacji potrzebne są źródła jądra Linuksa (RedHat/Fedora: pakiet kernel-source).

    • Upewniamy się, że mamy link symboliczny /usr/src/linux -> /usr/src/linux-x.x.x; jeśli nie mamy, tworzymy go (z roota: ln -s /usr/src/linux-x.x.x /usr/src/linux).

    • Rozpakowujemy: tar xzvf eagle-1.0.4.tar.gz; cd eagle-1.0.4

    • kompilujemy: make; i instalujemy: z roota: make install.

    • Podczas instalacji program zadaje pytania po francusku:

      • pierwsze: zatwierdzić - enter;

      • drugie: nazwa użytkownika (do rejestracji: rejestracja@neostrada.pl);

      • trzecie: hasło (rejestracja);

      • inne: zatwierdzić wartości domyślne.

  • Dostosowanie plików konfiguracyjnych:

    • /etc/analog/adiusbadsl.conf : VPI=00000000; Encapsulation=00000006

    • /etc/ppp/options.adsl : upewniamy się, że wpisana jest poprawna nazwa użytkownika

    • /etc/ppp/chap-secrets : jw. upewniamy się co do hasła. Format pliku:

    • użytkownik * hasło

      (czwarty argument można pominąć)

      1. W tym momencie warto uruchomić sobie na wybranej konsoli śledzenie komunikatów systemowych: tail -f /var/log/messages.

      2. Podłączamy modem do komputera.

      3. Z roota:

        • lsmod, sprawdzamy, czy widać moduł obsługi modemu: adiusbadsl;

        • powinien pojawić się również nowy plik w /proc/driver/adimodem/. Można obejrzeć jego zawartość, zostanie zrzucony stan modemu (powinno być tam w szczególności: "Modem is operational").

    • Inicjujemy negocjację ADSL: z roota: adictrl -w. Czekamy chwilę. Powinniśmy uzyskać komunikat "modem synchronized OK", a na modemie na stałe powinna zapalić się lampka "ADSL".

    • Analogicznie do instalacji modemu Ethernetowego, od teraz mamy do dyspozycji skrypty startadsl i stopadsl, zarządzające ostatecznym, właściwym połączeniem. Neostrada jest widoczna w systemie jako interfejs PPP (zazwyczaj będzie to ppp0), a "wirtualne" połączenie Ethernet do modemu po kablu USB jako ethX (X-pierwszy wolny numer podczas instalacji modemu).

    • Przejście rejestracji odbywa się analogicznie do instalacji modemu ethernetowego. Uwagi:

      • Jeżeli nie można wejść na stronę rejestracja.neostrada.pl, to albo w pliku /etc/resolv.conf należy wpisać

      • nameserver 217.98.63.164

        wtedy nazwa ta powinna się już rozwinąć do adresu IP i przeglądarka powinna otworzyć stronę; albo, z pominięciem konfiguracji serwera DNS można od razu wpisać w przeglądarkę adres serwera rejestracji: 217.98.63.200.

          • uzyskane hasło docelowe ma zostać wpisane ręcznie w pliku chap-secrets; serwery DNS w /etc/resolv.conf ustawiamy wedle uznania.

          • Ze sterownikiem dostarczany jest skrypt usr/sbin/adsl.inittab, który opcjonalnie może zostać użyty do startu połączenia przy starcie systemu poprzez dokonanie stosownego wpisu do pliku /etc/inittab:

          • adsl:2345:respawn:/usr/sbin/adsl.inittab

            My natomiast preferujemy ręcznie wpisanie do stosownych skryptów startowych systemu (RedHat i pochodne - /etc/rc.d/rc.local):

            adictrl -w

            startadsl

            [być może inne skrypty, typu: firewall, QoS, klient NOIP...]

            1. W wypadku wystąpienia problemów z łączeniem się z niektórymi stronami z komputerów korzystających z udostępnionego połączenia należy do skryptu firewalla dopisać regułkę (w jednej linii!):

            2. iptables -t nat -A POSTROUTING -p tcp --tcp-flags SYN,RST SYN

            -j TCPMSS --clamp-mss-to-pmtu

            Uwagi końcowe (wspólne)

            • Kwestię odtworzenia połączenia w wypadku jego zerwania zapewnia opcja "persist" demona pppd. W pakiecie sterownika dla USB jest ona obecna już "z pudełka" w formie explicite (/etc/ppp/options.adsl). W wypadku modemu ethernetowego o wznowienie połaczenia dba skrypt adsl-connect (podsystem adsl-start). Nie trzeba zatem nic dodatkowo robić.

            • adres IP zmienia się zazwyczaj przy każdym restarcie komputera, lub w wypadku działania ciągłego, samoczynnie co 7 dni.

            Dodatek - "emulacja" stałego IP

            Zmierzamy do tego, żeby można było wchodzić na nasz serwer (ograniczymy się do WWW) używając zawsze tego samego adresu.

            Wariant 1: można skorzystać z usług typu "dynamiczny DNS", np. www.no-ip.com. Należy zarejestrować się w serwisie, po czym ściągnąć, (skompilować i) zainstalować, po czym uruchomić odpowiedni program kliencki. Program jest uruchomiony non stop, co jakiś czas sprawdza, jakie jest nasze aktualne IP i jeśli wykryje zmianę, to raportuje ją do swojego "macierzystego" serwera DNS.

            Wariant 2: (dla bardziej zaawansowanych) "ręczny" i prosty w koncepcji, nie wymagający żadnych rejestracji i instalowania "obcego" oprogramowania. Potrzebujemy jakieś miejsce poza naszym komputerem. Będziemy trzymać tam i podmieniać w miarę potrzeby plik index.html z informacją o przekierowaniu na nasz aktualny adres IP.

            Wada: takie przekazywanie działa tylko dla wklepania "gołego" URL-a (musi zostać odczytany index.html z głównego katalogu). Inaczej trzeba by interesować się większymi armatami typu mod_rewrite, albo (jeszcze "twardziej") podmieniać pliki strefy DNS-a...

            1. Skrypt wyciągający nasze IP, edytujący index.html i "przepychający" go (tu przez scp, ale można dowolnie np. ftp) na nasze "stałe" miejsce.

            #!/bin/sh

            cd katalog-z-tymi-plikami

            IP=`/sbin/ip a show dev ppp0 | awk '/inet/ { print $2 }'`

            sed 's/dhcp/'$IP'/g' index > index.html

            scp index.html komputer-z-kontem-www:zdalny-katalog >/dev/null 2>&1

            2. I do kompletu - szablon "index", który będzie edytowany powyższym skryptem.

            <html>

            <head>

            <META HTTP-EQUIV="refresh" content="0; url=http://dhcp">

            <META Name="Language" CONTENT="Polski">

            <TITLE>Jacek Fiok</TITLE>

            <META HTTP-EQUIV="Content-Type" CONTENT="text/html;CHARSET=ISO-8859-2">

            <META HTTP-EQUIV="Reply-to" CONTENT="jfiok@jfiok.org">

            </head>

            <body>

            </body>

            </html>

            Teraz nie pozostaje już nic innego, jak wrzucić sobie adsl-start i powyższy programik uaktualniający index.html do skryptów startowych systemu (np. dla większości Linuksów może to być /etc/rc.d/rc.local, lub odpowiednie skrypty uruchamiane przy podnoszeniu interfejsów sieciowych).

            Linki

            Inne strony na temat neostrady plus i Linuksa:




    Wyszukiwarka

    Podobne podstrony:
    reengineering (english version) RI3ZNOETI4J34SCXZAQBSMZJGYIXJIJGSKW2HXI
    1148 die for you (english version) antique 63VPVQPLS6BF3YYS2UGKIT7LCDADRMLNEX7ZE6Q
    The Great Depression English version
    Curriculum Vitae english version
    Sentinel english version
    English version
    PhotoRec Step By Step english version
    Kopia Curriculum Vitae english version
    List motywacyjny english version
    TestDisk Step By Step english version
    Shakira Loca Loca (English version)
    gaus englisch alle version 2 6
    IntroductoryWords 2 Objects English
    OPERAT STABLE VERSION ugoda id Nieznany
    English for CE materials id 161873
    120222160803 english at work episode 2
    English, Intermediate Grammar Questions answers
    Lesley Jeffries Discovering language The structure of modern English
    17 smiertelnych bledow szefa full version

    więcej podobnych podstron