Dip+SLiRP+CSLIP
Autor: Zenon Fortuna, zenon@netcom.com
v1.1, 29 Października 1995
WWeerrssjjaa ppoollsskkaa:: BBaarrttoosszz MMaarruusszzeewwsskkii BB..MMaarruusszzeewwsskkii@@jjttzz..oorrgg..ppll
v1.0, 3 Września 1997
[Od tłumacza]Tłumaczenie to jest zrobione z wersji 1.1, którą
znalazłem na serwerze u autora, a której nie wiedzieć czemu nie ma
nigdzie na oficjalnych serwerach.[koniec] Dlaczego powstał ten doku
ment? Jest on przeznaczony dla tych, którzy nie chcą czytać całego
NET-3-HOWTO z wszystkimi jego szczegółami, ani nie chcą czytać doku
mentacji do Dip-a/SLiRP-a, ale chcieliby zainstalować SLIP-owe
połączenie do Internetu, używając do tego celu konta z dostępną
powłoką (shell-em). Wymieniona wcześniej dokumentacja powinna być
rozważana jako bardziej wyczerpująca (i to w obu tego słowa znaczeni
ach). Opisane przykłady zostały przetestowane na pakietach dip337n-uri
i slirp-0.95h. Testy zostały przeprowadzone na stabilnej wersji jądra
(tm) Linux-a - 1.2.13, oprogramowanie zostało zainstalowane pod dys
trybucją Slackware 2.2.0. Dokument ten został napisany w standardzie
ISO-8859-2. Oryginał tego dokumentu znajduje się pod adresem ftp.net
com.com w katalogu /pub/ze/zenon/linux/DipSlirpCSLIP/.
11.. HHiissttoorriiaa zzmmiiaann..
29 Października '95 Wersja: 1.1 Dodałem informację dla systemów tylko
z urządzeniem _l_o_o_p_b_a_c_k. 15 Października Wersja: 1.0
Pierwotna wersja tego dokumentu.
22.. KKrróóttkkii ooppiiss..
Zakładam, że twój serwer ma możliwość dodzwonienia się do serwera
dostawcy Internet-u, gdzie posiadasz konto z powłoką (shell-em). Na
tym serwerze zainstalujemy narzędzie sslliirrpp.
Będziemy chcieli przygotować narzędzie ddiipp na Linux-ie, razem ze
specjalnym skryptem do połączenia się z serwerem dostawcy oraz do
wystartowania sslliirrpp--aa na tymże serwerze.
Uruchomiony ddiipp skonfiguruje parametry linii szeregowej i
poinformuje Linux-a o przyznanym numerze IP, którą to informacje
dostanie od sslliirrpp--aa na serwerze dostawcy.
W wyniku tych operacji pakiety TCP/IP wysyłane poprzez linię
szeregową/modem będą obsługiwane przez serwer dostawcy tak jakby
były wysłane przez nasz serwer.
I stanie się cud: będziemy mieli połączenie TCP/IP między Linux-em a
zasobami Internet-u.
33.. KKrrookkii ppooddcczzaass kkoonnffiigguurraaccjjii..
33..11.. IInnssttaallaaccjjaa SSLLiiRRPP--aa..
zdobądź plik dystrybucyjny ze SSLLiiRRPP--eemm, np. slirp-0.95h.tar.gz, i
skompiluj program sslliirrpp na serwerze dostawcy (na komputerze, do
którego będziesz dzwonił). Plik docs/README.compiling zawarty w
dystrybucji SSLLiiRRPP--aa wyjaśnia wszystkie szczegóły dotyczące
kompilacji.
Możesz też wziąć już skompilowaną wersję z ibc.wustl.edu
, którą podaje
FAQ z Alt.dcom.slip-emulators zawarte w dokumentacji.
przenieś program sslliirrpp do jakiegoś lepszego katalogu, np.
./bin/slirp czy ./slirp (w twoim katalogu domowym).
stwórz w swoim katalogu domowym plik .slirprc
żeby był prosty, to użyjemy tylko kilku poleceń:
#### .slirprc file ####
add ptyexec /usr/bin/tcsh -l:10.0.2.1:23
compress
baudrate 38400
#### end
Polecenie ccoommpprreessss zapewnia nas, że zostanie użyty protokół CSLIP.
Polecenie aadddd ppttyyeexxeecc zostało użyte zamiast polecenia sshheellll (listę
poleceń znajdziesz w pliku docs/CONFIG), ponieważ lepiej jest użyć
ttccsshh --ll (w pliku .login), a polecenie sshheellll nie przyjmuje opcji (tak
sądzę). Powinieneś użyć dokładnej ścieżki do ttccsshh na serwerze dostawcy
(albo użyj jakiejś innej powłoki (shell-a) jeśli wolisz).
Polecenie bbaauuddrraattee powinno zostać użyte z wartością odpowiednią dla
twojego połączenia modemowego.
33..22.. TTeessttoowwaanniiee SSLLiiRRPP--aa..
Zaloguj się na swoje konto u dostawcy i napisz _b_i_n_/_s_l_i_r_p (albo
_._/_s_l_i_r_p, w zależności od lokalizacji)
Powinieneś zobaczyć listę wiadomości z taką linią na końcu:
[talking CSLIP, MTU 1500, MRU 1500, 38400 baud]
Aby wyjść ze sslliirrpp--aa wpisz powoli (z ponad sekundowymi przerwami) pięć
zer.
33..33.. KKoonnffiigguurraaccjjaa ttwwoojjeeggoo LLiinnuuxx--aa..
W skrócie to co musisz zrobić, to przygotować jądro, żeby mogło
pracować z siecią i CSLIP-em. Potem powinieneś skonfigurować sieć.
Napisz _m_a_k_e _c_o_n_f_i_g w katalogu /usr/src/linux i odpowiedz "y" na
następujące pytania:
Networking support (CONFIG_NET) [y]
TCP/IP networking (CONFIG_INET) [y]
Assume subnets are local (CONFIG_INET_SNARL) [y]
Network device support? (CONFIG_NETDEVICES) [y]
Dummy net driver support (CONFIG_DUMMY) [y]
SLIP (serial line) support (CONFIG_SLIP) [y]
CSLIP compressed headers (CONFIG_SLIP_COMPRESSED) [y]
PPP (point-to-point) support (CONFIG_PPP) [y]
Ja używam karty Ethernet-owej 3c509, więc moje dodatkowe opcje to:
3COM cards (CONFIG_NET_VENDOR_3COM) [y]
3c509/3c579 support (CONFIG_EL3) [y]
Przy instalacji poprzez NFS możesz też dodać:
NFS filesystem support (CONFIG_NFS_FS) [y]
Teraz, jak już poprawnie skonfigurowałeś jądro, skompiluj je wydając
polecenia: _m_a_k_e _d_e_p _&_& _m_a_k_e _c_l_e_a_n _&_& _m_a_k_e _z_I_m_a_g_e. Po kompilacji
przenieś plik /usr/src/linux/arch/i386/boot/zImage do katalogu, w
którym zwykle znajduje się jądro i uruchom lilo.
Aby skonfigurować sieć, najpierw zdecyduj jaki będzie twój adres IP.
Jeśli brakuje ci specjalnych adresów, to weź 192.168.1.100, który to
jest dozwolony dla użytku lokalnego przez RRFFCC11559977.
Dla systemów tylko z urządzeniem _l_o_o_p_b_a_c_k będzie to adres 127.0.0.1.
Jeśli chcesz dokładnych i poprawnych informacji, to powinieneś raczej
przeczytać NET-3-HOWTO (dostępne także po polsku
), ale możesz
spróbować zrobić coś takiego:
Nadaj swojemu systemowi nazwę sieciową, np. mmoojj--hhoosstt..lliinnuuxx..oorrgg,
gdzie wszystkie trzy człony mogą być dowolne. Umieść powyższy
łańcuch (bez znaków ") w pliku /etc/HOSTNAME.
Zmodyfikuj twój plik /etc/hosts, dodając:
192.168.1.100 moj-host.linux.org moj-host
127.0.01 localhost
(albo 127.0.0.1 moj-host.linux.org moj-host
127.0.0.1 localhost)
Łańcuch "moj-host.linux.org" powinien być identyczny z tym wybranym w
pierwszym kroku.
Jeśli masz sieć Ethernet, to dodaj do pliku /etc/networks linię:
moja-siec 192.168.1.0
(albo loopback 127.0.0.1)
Zmodyfikuj swój plik rc.inet1 z katalogu /etc/rc.d (zachowaj gdzieś
oryginalną wersję) i wpisz do niego:
IPADDR=moj-host
NETWORK=moja-siec
NETMASK="255.255.255.0"
BROADCAST="192.168.1.255"
(albo NETMASK="255.0.0.0"
BROADCAST="127.255.255.255")
Potem jeśli masz w komputerze kartę Ethernet-ową, to odkomentuj
poniższe linie:
/sbin/ifconfig eth0 ${IPADDR} netmask ${NETMASK} broadcast ${BROADCAST}
/sbin/route add -net ${NETWORK} netmask ${NETMASK}
W innym razie, jeśli masz tylko _l_o_o_p_b_a_c_k, to upewnij się, że są tam:
/sbin/ifconfig lo localhost
/sbin/route add -net loopback
Umieść swoją nazwę domeny lliinnuuxx..oorrgg (porównaj z krokiem pierwszym)
w pliku /etc/resolv.conf w taki sposób:
domain linux.org
Teraz zrestartuj system.
33..44.. TTeessttoowwaanniiee ttwwoojjeeggoo LLiinnuuxx--aa..
Przede wszystkim obserwuj komunikaty pojawiające się podczas startu,
albo zajrzyj do pliku /usr/adm/messages jeśli działa u ciebie proces
_s_y_s_l_o_g_d_(_8_).
Powinieneś zobaczyć mniej więcej takie komunikaty:
IP Protocols: ICMP, UDP, TCP
PPP: version ...
TCP compression ...
PPP line discipline registered.
SLIP: version ...
CSLIP: code copyright ...
Jeśli posiadasz też interfejs Ethernet, to powinien on także zostać
poprawnie rozpoznany:
eth0: 3c509 at 0x280 ...
Twoja sieć powinna być już aktywna i możesz trochę potestować kilkoma
poleceniami:
Uruchom _/_s_b_i_n_/_i_f_c_o_n_f_i_g bez parametrów.
Powinieneś zobaczyć aktywny interfejs _l_o (loopback) wraz z
przypisanymi mu adresami.
Jeśli masz także sieć Ethernet, to zobaczysz dodatkowo informacje
na temat interfejsu _e_t_h_0 i powinieneś zobaczyć znany ci już adres
_i_n_e_t _a_d_d_r_: _1_9_2_._1_6_8_._1_._1_0_0, itp.
Uruchom _/_s_b_i_n_/_r_o_u_t_e bez argumentów.
Powinieneś zobaczyć linię dotyczącą _l_o_o_p_b_a_c_k i ewentualnie następną
dotyczącą sieci "moja-sieć".
Dobra, twój Linux jest gotowy do współpracy z CSLIP-em.
33..55.. IInnssttaallaaccjjaa DDIIPP--aa..
możliwe, że na twoim Linux-ie jest już zainstalowany ten program.
Byłoby dobrze mieć wersję 33..33..77nn (jest tam uaktualniona
dokumentacja).
jeśli tak nie jest, zdobądź ten program, np. dip337n-uri.tar.gz i
skompiluj program ddiipp na swoim lokalnym komputerze. Robi się to
poprzez wydanie polecenia _m_a_k_e w katalogu dip-3.3.7n.
przenieś program ddiipp do jakiegoś odpowiedniejszego katalogu, który
jest w twojej zmiennej _$_P_A_T_H, np. /usr/local/bin/ albo
_$_H_O_M_E/bin/dip.
w jakimś odpowiednim katalogu, np. w _$_H_O_M_E, stwórz skrypt ddiipp--aa -
slirp.dip
Skrypt ddiipp--aa jest zwykle długi i skomplikowany. W katalogu samples
znajduje się kilka przykładów (może to być np. /usr/doc/dip/samples)
W każdym razie ja podam tutaj swój skrypt jako przykład:
#### slirp.dip file ####
#
# slirp.dip Dialup IP script for use with SLiRP and netcom
#
main:
# Ustaw maskę sieci na sl0
netmask 255.255.255.0
# Ustaw odpowiedni port szeregowy i jego prędkość.
# Możliwe, że musisz zmienić ttyS2 na inną wartość dla twojego modemu.
# Ja mam także uruchomione "mgetty" na tym porcie dlatego używam
# "ttyS2" a nie "cua2"
port ttyS2
speed 38400
# Zresetuj modem i linię terminalową.
# Tutaj występują u niektórych problemy.
reset
# Przygotuj się do dzwonienia.
# Zauważ, że twój modem może mieć inny łańcuch inicjacyjny.
# Mój to WordBlazer
send AT S0=0 S11=70 S50=254 S58=2 Q0 V1 E1 X4\r
wait OK 2
if $errlvl != 0 goto modem_trouble
redial:
# Wybierz numer.
# U ciebie będzie raczej inny numer.
send ATDT 274 2900\r
wait CONNECT 50
if $errlvl != 0 goto dial_trouble
# Połączyliśmy się. Zaloguj ten fakt do systemu.
login:
sleep 2
send \n
wait ogin: 20
if $errlvl != 0 goto login_trouble
print got the login prompt, OK
# zamień poniższe "zenon" na twój identyfikator u dostawcy
sleep 2
send \n
# Nie wiem dlaczego musiałem dodać jeszcze "\n" przed wysłaniem mojego
# identyfikatora, ale inaczej nie działało
sleep 2
send zenon\n
print sent 'zenon', waiting for 'password' ...
wait ord: 30
if $errlvl != 0 goto password_trouble
# poniższe "blablabla" zamień na swoje hasło.
send blablabla\r
# Teraz jesteśmy już zalogowani - przypuszczalnie.
loggedin:
# Zamień poniższe na TWÓJ prompt (mój to zenon@netcomNN n% )
wait zenon 15
if $errlvl != 0 goto prompt_error
# SLiRP ustawia 10.0.2.2 jako adres odległego komputera.
get $remote 10.0.2.2
# Upewnij się, że "slirp" jest na ścieżce i że jest wykonywalny.
# W tym przykładzie zakładam, że slirp został zainstalowany w katalogu
# $HOME/bin
send exec bin/slirp\n
# Ustaw parametry CSLIP-a
get $mtu 1500
# Upewnij się, że polecenie "route add -net default $remote" jest wykonane
# W pakiecie dip-3.3.7n wystarczy wpisać "default"
default
# Powiedz "Cześć" i odpalaj.
done:
print CONNECTED local: $locip ---> remote: $rmtip
mode CSLIP
goto exit
prompt_error:
print TIME-OUT waiting for SLIPlogin to fire up...
goto error
login_trouble:
print Trouble waiting for the Login: prompt...
goto error
password_trouble:
print Trouble waiting for the Password: prompt...
goto error
modem_trouble:
print Trouble occurred with the modem...
goto error
dial_trouble:
print Trouble occurred while dialing...
error:
print CONNECT FAILED to $remote
quit
exit:
exit
#### end
KOMENTARZ: W powyższym przykładzie niektóre pozycje wymagają podania
danych specyficznych dla ciebie:
numer portu (ja używam ttyS2)
szybkość portu (ja używam 38400)
łańcuch inicjacyjny modemu (ja mam WordBlazer)
numer telefonu do twojego dostawcy (mam nadzieję, że twój jest
inny)
twój identyfikator u dostawcy
twój prompt (aby potwierdzić zalogowanie się)
lokalizacja "slirp-a" (mój jest w $HOME/bin)
33..66.. TTeessttoowwaanniiee DDIIPP--aa..
Polecenie _d_i_p _-_v _s_l_i_r_p_._d_i_p spowoduje uruchomienie ddiipp--aa w trybie
_v_e_r_b_o_s_e - czyli na ekranie będą pojawiać się informacje co się w danym
momencie dzieje.
Komunikaty pojawiające się na ekranie mogą zasugerować jakieś zmiany
do skryptu slirp.dip.
Jeśli wszystko poszło dobrze, to powinieneś zobaczyć taki komunikat na
końcu:
CONNECTED local: 192.168.1.100 ---> remote: 10.0.2.2
(albo CONNECTED local: 127.0.0.1 ---> remote: 10.0.2.2)
a ddiipp "zmienia" się teraz w proces-demon, zwracając ci dostęp do
prompt-a.
Przy okazji: teraz aby zakończyć działanie ddiipp--aa, wpisz po prostu _d_i_p
_-_k a działanie ddiipp--aa zostanie zakończone i połączenie modemowe
zamknięte.
44.. NNoorrmmaallnnee ddzziiaałłaanniiee..
Uruchom swoje połączenie dip+slirp pisząc _d_i_p _s_l_i_r_p_._d_i_p
Po udanym połączeniu się i po komunikacie _C_O_N_N_E_C_T_E_D_._._. masz już
działające połaczenie do Internet-u poprzez swojego dostawcę.
Najpierw spróbuj się połączyć z serwerem dostawcy poprzez telnet:
_t_e_l_n_e_t _1_0_._0_._2_._1
Dzięki konfiguracji z pliku .slirprc, połączenie to powinno wywołać
_t_c_s_h _-_l i powinieneś otrzymać login prompt.
Pisząc _p_s możesz zobaczyć coś takiego:
6019 s0 S 0:13 slirp
6075 sb IW 0:00 -/usr/bin/tcsh (tcsh)
16721 t6 R 0:00 ps
Możesz zakończyć to połączenie telnet-owe, albo z innego
wirtualnego terminala czy okienka w X-ach spróbować połączyć się
przez ftp: _f_t_p _1_4_8_._8_1_._1_2_3_._1_0_0.
Po udanym (?) połączeniu anonimowym, możesz odkryć, że jesteś... na
ssuunnssiittee..iiccmm..eedduu..ppll - polskiej kopii archiwum Linux-a.
Jeśli zaszedłeś już tak daleko, to możesz zacząć podziwiać możliwości
połączenia dip+slirp: jesteś na SSIIEECCII.
Rozłącz się z "sunsitem" tak szybko jak możesz, powracając do systemu
"moj-host".
Teraz pojawia się pytanie:
Czy możemy po prostu napisać: _f_t_p _s_u_n_s_i_t_e_._i_c_m_._e_d_u_._p_l?
Nie przed uaktywnieniem DNS-u (Domain Name Server).
W tym momencie możesz chcieć się rozłączyć. Wpisz w swoim lokalnym
prompcie _d_i_p _-_k.
44..11.. DDooddaawwaanniiee DDNNSS--uu..
Najprzypuszczalniej twój dostawca Internet-u ma serwis DNS (w
przeciwnym razie nie byłbyś w stanie używać połączeń Internet-owych w
normalny sposób). Połącz się raz jeszcze z serwerem dostawcy przy
pomocy _d_i_p _s_l_i_r_p_._d_i_p i _t_e_l_n_e_t _1_0_._0_._2_._1. Zajrzyj do pliku
/etc/resolv.conf.
Powinieneś zobaczyć tam kilka takich linijek:
nameserver
gdzie będzie miał konkretną wartość.
Skopiuj przynajmniej jedną z tych linijek do swojego pliku
/etc/resol.conf.
Teraz powróć do swojego lokalnego komputera (bez zamykania połączenia)
i sprawdź czy serwis DNS działa. Wpisz: _d_n_s_q_u_e_r_y _s_u_n_s_i_t_e_._i_c_m_._e_d_u_._p_l.
Jeśli na ekranie pojawi się numer IP powyższego adresu, to oznacza, że
twój DNS działa.
Teraz możesz używać takich narzędzi jak llyynnxx, mmoossaaiicc czy nneettssccaappee
bezpośrednio ze swojego Linux-a.
55.. KKoommeennttaarrzzee..
Ten uproszczony dokument został napisany raczej jako streszczenie
podstawowej instalacji dip+slirp, aniżeli podręcznik.
Zamysłem było pomóc potencjalnym użytkownikom CSLIP-a przy starcie.
Tekst ten jest wysyłany jako mini-HOWTO, dlatego, jeśli zobaczysz w
nim jakieś oczywiste błędy, daj mi znać, proszę.
Wszystkie wersję są dostępne u mnie w katalogu na ftp:
ftp.netcom.com
.
Chcę podziękować autorom narzędzi ddiipp i sslliirrpp za cudowne programy.
Jestem pod wrażeniem i bardzo wdzięczny.
Zenon Fortuna (zenon@netcom.com )
55..11.. OOdd ttłłuummaacczzaa..
Tłumaczenie to jest chronione prawami autorskimi Bartosza
Maruszewskiego. Dozwolone jest rozprowadzanie i dystrybucja na
prawach takich samych jak dokument oryginalny.
Jeśli znalazłeś jakieś rażące błędy ortograficzne, gramatyczne,
składniowe, techniczne to pisz do mnie:
B.Maruszewski@jtz.org.pl
Oficjalną stroną tłumaczeń HOWTO jest http://www.jtz.org.pl/
Aktualne wersje przetłumaczonych dokumentów znajdują się na tejże
stronie. Dostępne są także poprzez anonimowe ftp pod adresem
ftp.jtz.org.pl w katalogu /HOWTO/.
Przetłumaczone przeze mnie dokumenty znajdują się także na mojej
stronie WWW. Są tam
też odwołania do Polskiej Strony Tłumaczeniowej.
Kontakt z naszą grupą, grupą tłumaczy możesz uzyskać poprzez listę
dyskusyjną jtz@ippt.gov.pl. Jeśli chcesz się na nią zapisać, to wyślij
list o treści subscribe jtz Imię Nazwisko na adres
majordomo@ippt.gov.pl
Zmiany w tym dokumencie wprowadzone przez tłumacza to:
zmiana NET-2-HOWTO na NET-3-HOWTO
zmiana poleceń kompilacji jądra z "make dep make zImage" na "make
dep && make clean && make zImage"
info o polskim tłumaczeniu NET-3-HOWTO
zmiana wywołań ifconfig i route na /sbin/ifconfig i /sbin/route
zmiana adresu IP z sunsite.unc.edu na sunsite.icm.edu.pl (po co
łączyć się z USA skoro można z Polską?)
Wyszukiwarka
Podobne podstrony:
dip slirp cslip pl 5
dip slirp cslip pl 1
Dip SLiRP CSLIP pl (3)
Dip SLiRP CSLIP pl (2)
dip slirp cslip pl 2
dip slirp cslip pl 4
dip slirp cslip pl 3
TI 99 08 19 B M pl(1)
bootdisk howto pl 8
BORODO STRESZCZENIE antastic pl
notatek pl sily wewnetrzne i odksztalcenia w stanie granicznym
WSM 10 52 pl(1)
amd102 io pl09
PPP HOWTO pl 6 (2)
bridge firewall pl 3
NIS HOWTO pl 1 (2)
więcej podobnych podstron