Łączymy się z Internetem

Linux jest systemem, który swoje korzenie wywodzi z Internetu. Z tego faktu można wnioskować, że ma znakomite wsparcie dla wszelakich usług internetowych i tak w rzeczywistości jest. W tym artykule postaram się opisać niektóre sposoby połączenia z Internetem za pomocą PPP (Point to Point Protocol) przy wykorzystaniu numeru dostępowego naszej ukochanej Telekomnikacji Polskiej 0202122.

Aby móc skorzystać z protokołu PPP musimy na swojej maszynce mieć jądro obsługujące sieć i protokół PPP. (zalecam kompilowanie obsługi PPP jako moduł). Większość nowych dystrybucji ma tę opcję wkompilowaną i nie trzeba nic zmieniać, dodawać.

Oprócz obsługi PPP przez jądro wymagane jest także zainstalowanie pakietu ppp-numer.wersji.rpm. Robimy to poprzez wydanie polecenia:

  rpm -i ppp-numer.wersji.rpm  

Wpiszmy DNS`y

W zasadzie można byłoby to zamieścić w każdym innym momencie artykułu, ale wydaje mi się, że jest to zmora wielu początkujących użytkowników Linux`a, którzy niepotrzebnie "zaśmiecają" wszelkiego rodzaju grupy dyskusyjne pytaniami typu: łączę się z Internetem, otwieram Netscape`a, wpisuję adres (poprawny) i dostaję od razu komunikat, że serwer nie został znaleziony. Rozwiązanie tego problemu jest bardzo proste, chociaż ostatnio dostałem list, w którym autor napisał mi: pod Windows`em nie trzeba było nic ustawiać!No coż Linux nie jest dla każdego :-) Ale do rzeczy. Nasz system musi wiedzieć pod jakim adresem znajdują się serwery DNS, które umożliwiają zamianę symbolicznego adresu na ip właściwego komputera. Do pliku /etc/resolv.conf powinniśmy dopisać dwie następujące linijki:

  nameserver 194.204.152.34
nameserver 194.204.159.1
 

Od tej pory po wpisaniu adresu www.linux.sky.pl powinna pojawić się moja ulubiona strona www :-)

Kppp

KDE zdobywa coraz więcej zwolenników, głównie dzięki łatwości obsługi. Taki sam jest program Kppp, który jest jednym z najłatwiejszych programów dzięki którym możemy podłączyć się do Internetu. Kppp, który dla wielu może wydać bardzo podobnym do windowsowego dial-up`u ma kilka ciekawych funkcji. Przede wszystkim na pasku kde pojawia się ikonka z diodami pokazującymi wykorzystanie modemu. Po jej kliknięci dostajemy informacje o czasie trwania połączenia oraz możemy zobaczyć na wykresie wykorzystanie łącza. Program zlicza też koszty naszego surfowania. Do wyboru mamy TPSA, oraz co ciekawe Netię z podziałem na linię niebieską i zieloną :-)

Program kppp uruchamiamy kilkając na ikonie kppp z menu Internet komputery. Jeśli używamy RedHata 6.1 to system poprosi nas o podanie hasła administratora. Po chwili ukaże nam się główne okno kppp. My musimy jednak przejść do zakładki opcje gdzie dodamy nowe połączenie oraz ustawimy parametry modemu, portu itp. Na początek wybierzmy zakładkę Port. Jako port szeregowy ustawmy port na którym mamy modem. Jeśli nasz modem chodzi na COM1 to dajmy /dev/ttyS0, jeśli na COM2 to /dev/ttyS1 i tak dalej ... Jeśli nie wiemy jaki jest to dokladnie port proponuje ustawić to na chybił trafił i przejść do zakładki modem i tam kliknąć na testuj modem. Jeśli zostaną nam zwrócone od modemu komunikaty port jest dobry!Jeśli nie wracamy i wybieramy inny port :-)

Wracając jednak do zakładki port to powinniśmy zmienić jeszcze szybkość portu (dla modemu 56600 będzie to 115200) oraz limit czasu modemu (na ok. 100sek). Jeśli zostawimy 60 niektóre połączenia z TPSA mogą zostać nie zrealizowane.

Następną zakładką jest modem. Tutaj możemy ustawić głośność modemu, długość oczekiwania przed ponowną próbą połączenia jeśli linia była zajęta oraz sprawdzić działanie modemu za pomocą terminala. Poleceń modemu nie powinniśmy zmieniać.

Dalej mamy PPP, tutaj każdy wybiera co mu pasuje. Moja sugestia to zaznaczenie: pokaż na panelu po połączeniu

Możemy jeszcze ustawić kolorki wykresu - graficznego przedstawienia przepustowości łącza.

Mamy już ustawione opcje programu, czas aby utworzyć nowe połączenie. W tym celu przechodzimy do zakładki Połączenia i klikamy Nowe. W polu nazwa połączenia wpisujemy TPSA, a jako numer telefonu dajemy 0202122. Identyfikacje ustawiamy na PAP, chociaż w niektórych miejscach w kraju konieczne może okazać się przestawienie jej na CHAP (np. u mnie PAP czasami nie loguje poprawnie !) Warto też zaznaczyć pole: zapamiętaj hasło.

Zakładki adres ip, dns, router, skrypt logowania pozostawiamy bez zmian (dns - patrz sekcja wpiszmy dns). Możemy zmusić Kppp do obliczania kosztów połączenia. W tym celu z zakładce Koszty zaznaczamy: aktywuj obliczanie kosztów połączenia i wybieramy z listy Poland --> TP Lokalne (lub inne) klikając na nim dwa razy. Dodajmy także zliczanie bajtów wejścia i wyjścia w opcji: podczas połączenia zliczaj.

Następnie wychodzimy do głównego okna programu. W polu użytkownik wpisujemy ppp, w polu hasło też ppp. Zaznaczmy opcję pokaż podgląd, co pozwoli nam na śledzenie czynności wykonywanych przez modem. Klikamy połącz i po kilkunastu sekundach jesteśmy podłączeni do Internetu.

Kppp pod Corel Linuxem (Autor: Darek Leszczyński)

Program kppp pod Corelowym Linuksem zapisuje swoje ustawienia w pliku Dial-Uprc w katalogu użytkownika np. /root/.kde/share/config/Dial-Uprc lub /home/nazwa_użytkownika/.kde/share/config/Dial-Uprc. W innych dystrybucjach ten plik ma nazwę kppprc. Drugi plik z którego korzysta kppp (pppd) to /etc/ppp/options. Najszybszym rozwiązaniem problemów z połączeniem jest podmiana tych plików na pliki z którymi kppp chodzi dobrze. (z innej dystrybucji przyp. linux-sky).

Najpierw zobacz jakie atrybuty mają twoje pliki. W oknie konsoli wpisz:

  ls -al /etc/ppp/options
ls -al /root/.kde/share/config/Dial-Uprc
ls -al /home/nazwa_użytkownika/.kde/share/config/Dial-Uprc
 
 

Możesz te pliki zapisać na wszelki wypadek pod inną nazwą np.: będąc w katalogu /etc/ppp/ wpisz w linii komend

  cp options options.old  

Otrzymasz kopię oryginalnego pliku. Teraz skopiuj plik options z paczki do katalogu /etc/ppp/ Powinien przejąć atrybuty oryginalnego pliku. Ale sprawdź to. Analogicznie z plikiem kppprc (Dial-Uprc w Corelu)

Pobierz plik z dobrymi ustawieniami. Rozpakuj go. Podmień swoje pliki. Pod Corelem zmień nazwę kppprc na Dial-Uprc

Wszystko robisz jako root. Pamiętaj aby dla użytkownika /home/nazwa_użytkownika/ zmienić odpowiednio właściciela pliku.

Po podmianie plików sprawdź port modemu (/dev/ttS1 lub 2 lub 3) i wybieranie numeru (ATDT lub ATDP). Wstaw swoje i się łącz.

Uwaga:Pamiętaj o poprawnym ustawieniu DNS! Patrz punkt: Wpiszny DNS`y.

Co zmienić aby kppp naliczał 33 gr a nie 29 za impuls? (Autor: Darek Leszczyński)

Zawartość oryginalnego pliku /usr/X11R6/share/apps/kppp/Rules/Poland/TP_Lokalne.rst (dla Red Hata jest to: /usr/share/apps/kppp/Rules/Poland/TP_Lokalne.rst)

  ################################################################
# Regułki obliczania kosztów połączeń lokalnych w sieci TP S.A.
# Obowiązują od 1 lipca 1999
# autor: Jacek Stolarczyk <jacek@mer.chemia.polsl.gliwice.pl>
################################################################

name=TP_Lokalne
currency_symbol=PLN
currency_position=right
currency_digits=2
per_connection=0.0
minimum_costs=0.0

# Co 360 sekund dodawane bedzie 29 groszy do rachunku.
# Jest to tak zwana taryfa nocna.
default=(0.29, 360)
# niestety w ciągu dnia czas między impulsami jest 2x krótszy
on (monday..sunday) between (8:00..21:59) use (0.29, 180)
 

Trzeba w dwóch miejscach zmienić 0.29 na 0.33 i to wszystko.

Wvdial

Wvdial jest inteligentnym programem za pomocą którego możemy podłączyć się do Internetu spod konsoli. Jest znacznie łatwiejszy w konfiguracji i używaniu od skryptów ppp, poza tym pozwala na dzwonienie do skutku!co w polskich warunkach (szczególnie po 22) ma podwójną wartość :-)

Kiedy Wvdial staruje czyta on plik /etc/wvdial.conf, który zawiera podstawowe informacje na temat szybkości połączenia, numeru telefonu, hasła itp. Poniżej podam taki przykładowy plik

  [Dialer Defaults]

Modem = /dev/ttyS1
# urządzenie z modemem

Baud = 115200
# szybkość komunikacji z modemem

Init = ATZ
# stringi inicjalizujące modem, od Init1-Init9
# żeby wyłączyć głośność dodajmy Init2 = ATM0

Phone = 0202122
# numer telefonu naszego providera

Username = ppp
# nasz login

Password = ppp
# i nasze hasełko

 
 

To byłyby najpotrzebniejsze opcje do połączenia się z Internetem. Jeśli wyskakuje Ci błąd, że masz nieprawidłowe hasło to wstaw na końcu pliku enter.

Teraz czas wywołać program wvdial, robimy to poprzez wpisanie wvdial. Na ekranie powinny pojawiać sie komunikaty, będziemy słyszeć charakterystyczne wybieranie numeru. Po chwili ujrzymy informacje powitalną od TPSA, a następnie wynik wpisywania przez wvdial loginu i hasła. Potem pojawi się starting pppd i po 2-3 sek. jesteśmy w Internecie.

Skrypty

Ustanawianie połączenia z Internetem za pomocą napisanych przez siebie :-) skrytpów to jeden z trudniejszych sposobów wykonania tej czynności. Nasze skrypty znajdować się będą w katalogu /etc/ppp i będą nosić nazwy: ppp-on - służący do nawiązywania połączenia,ppp-off służący do przerywnia połączenia i pomocniczy skrypt ppp-dialer.

Przykładowe skrypty wraz z obszernymi komentarzami znajdują się w dokumentacji programu ppp /usr/doc/ppp-wersja/scripts. Można je przekopiować do katalogu /etc/ppp i zmienić ich zawartość.

Zaczniemy od pliku ppp-on:

  #!/bin/sh

TELEPHONE=0202122
ACCOUNT=ppp
PASSWORD=ppp

export TELEPHONE ACCOUNT PASSWORD
# zmienne są exportowane, aby mógł
# z nich korzystać ppp-on-dialer

DIALER_SCRIPT=/etc/ppp/ppp-on-dialer
# pełna ścieżka do tego skryptu

exec /usr/sbin/pppd crtscts /dev/ttyS1 115200 \
lock modem defaulroute \
connect $DIALER_SCRIPT

# opcje przekazywane pppd podczas jego startowania
 
 

Mamy już jeden skrypt teraz pora na ppp-on-dialer

  #!/bin/sh

exec chat -v \
TIMEOUT 3 \
ABORT '\nBUSY\r' \
ABORT '\nNO ANSWER\r' \
ABORT '\nRINGING\r\n\r\nRINGING\r' \
"\rAT \
'OK-+++\c-OK' ATH0 \
TIMEOUT 30 \
OK ATDT$TELEPHONE \
CONNECT '' \
ogin:--ogin: $ACCOUNT \
assword: $PASSWORD
 
 

Uwaga

W przypadku TPSA ogin powinniśmy zastąpić słowami ername. U inny operatorów ta wartość może być różna, warto się dowiedzieć, gdy powyższe sekwencje znaków nie dają rezultatu.

Skrypt ten odpowiedzialny jest za połączenie nas z providerem. Wyłącza się gdy linia jest zajęta, gdy nie ma odopwiedzi lub ktoś dzwoni (4,5,6 linia). Korzysta ze zmiennych zawartych w ppp-on (TELEPHONE,ACCOUNT,PASSWORD). Jeśli czasami nie możemy uzyskać połączenia z TPSA może okazać się skuteczne zmiana czasu oczekiwania na połączenie z 30 na 60 (opcja TIMEOUT). Możemy mieć także problemu z logowaniem i wtedy zamiast ogin:--ogin: spróbujmy wpisać Username: oraz zamiast assword: Password.

W zasadzie mamy wszystko co potrzebne do połączenia, brakuje nam jeszcze tylko skryptu do rozłączenia :-). Będzie on nosił nazwę ppp-off

  #!/bin/sh

if [ "$1" = "" ]; then
DEVICE=ppp0
else
DEVICE=$1
fi

if [ -r /var/run/$DEVICE.pid ]; then
kill -INT `cat /var/run/$DEVICE.pid`

if [ !"$?" = "0" ]; then
rm -f /var/run/$DEVICE.pid
echo "ERROR: Removed stale pid file"
exit 1
fi

echo "PPP link to $DEVICE terminated."
exit 0
fi

echo "ERROR: PPP link is not active on $DEVICE"
exit 1
 
 

W zasadzie to nie masz się co wysilać w przepisywaniu tego skrytpu. Jest on dokładnie taki sam jak ten zamieszczony jako przykładowy w dokumentacji. Wystarczy, że go skopiujesz, no możesz jeszcze poczytać komentarze :-) do skryptu.

No to mamy już skrypty, czas uczynić je wykonywalnymi (żeby można było je uruchomić). W tym celu w katalogu /etc/ppp/ wydajemy polecenie:

  chmod 775 ppp-*  

Teraz możemy już połączyć się z internetem wydając polecenie:

  /etc/ppp/ppp-on  

Poczekajmy teraz kilkanaście sekund, aż nawiążemy połączenie i wtedy możemy sprawdzić czy wszystko gra poleceniem:

  /sbin/ifconfig  

Autentyfikacja PAP

W wielu miastach TPSA wymaga przy połączeniach autentyfikacji PAP. Edytujemy plik /etc/ppp/pap-secrets i dopisujemy:
ppp * ppp
Następnie plik /etc/ppp/options i dodajemy:
+pap
user pap

Inne sposoby połączenia

Możemy połączyć się z Internetem na wiele innych sposobów. Służą do tego np. programy: Minicom i Seyon. Jeśli ktoś chce to może o nich napisać parę słów i wtedy chętnie to umieszczę. Ja na razie nie będę o nich pisał, ale może kiedyś ...

 

 

 

 

CMS - y