Figyelem: A FreeBSD 8.0 kiadásától kezdődően a sio(4) meghajtó szerepét a uart(4) veszi át. Emiatt a soros vonali eszközöket /dev/cuadN és /dev/cuauN helyett /dev/ttydN és /dev/ttyuN néven lehet elérni. A FreeBSD 7.X változatok felhasználóinak ennek megfelelően kell olvasniuk ezt a leírást.
Ebben a szakaszban összefoglalunk néhány olyan problémát, ami a PPP modemen keresztüli használata során keletkezhet. Például pontosan tisztában kell lennünk azzal, hogy a tárcsázott rendszer milyen adatokat és hogyan fog tőlünk bekérni. Egyes szolgáltatók egy ssword promptot, míg mások egy password promptot adnak. Ha a ppp szkript nem illeszkedik ezekhez az elvárásokhoz, akkor nem tudunk bejelentkezni. A ppp csatlakozások nyomonkövetésének egyik leggyakoribb módja a manuális kapcsolódás. A következőkben ezért a manuális csatlakozásokra vonatkozó legszükségesebb ismereteket mutatjuk be lépésről lépésre.
Ha saját rendszermagot használunk, ne felejtsük el felvenni a következő sort a konfigurációs állományba:
device uart
A GENERIC rendszermag az uart eszközt már alapértelmezés szerint tartalmazza, ezért ilyenkor már nincs több teendőnk. Egyszerűen csak a dmesg parancs kimenetében keressük meg a modemes eszközhöz tartozó adatokat:
# dmesg | grep uart
Ennek eredményeképpen kapunk egy rövid összefoglalást a uart típusú eszközökről. Ezek lesznek a számunkra fontos COM portok. Amennyiben a modemünk egy szabványos soros portként működik, akkor a uart1 vagy COM2 néven kell keresnünk. Ha megtaláltuk, akkor nem kell új rendszermagot fordítanunk. Amikor a soros vonali modemünk a uart1 vagy COM2 porton csatlakozik DOS-ban, akkor itt a neki megfelelő eszköz a /dev/cuau1 lesz.
A ppp kézi irányításával gyorsan, egyszerűen és minden fájdalomtól mentesen tudunk csatlakozni az internethez, de olyankor is hasznos, ha ki akarjuk deríteni, hogy az internet-szolgáltatónk milyen módon kezeli a kliensek ppp csatlakozásait. Nos, akkor ehhez indítsuk is el a PPP alkalmazást a paranccsorból. Az alábbi példákban rendre a pelda névvel hivatkozunk a PPP-t működtető gépre. A ppp tehát a ppp parancs begépelésével indítható:
# ppp
Ezzel elindítottuk a ppp programot.
ppp ON pelda> set device /dev/cuau1
Beállítjuk a modemünket, ami ebben az esetben a cuau1.
ppp ON pelda> set speed 115200
Beállítjuk a csatlakozás sebességét, ami ebben az esetben 115 200 kbit/mp.
ppp ON pelda> enable dns
Azt mondjuk a ppp programnak, hogy állítsa be a névfeloldót és az /etc/resolv.conf állományt egészítse ki a megfelelő névszerverekkel. Ha a ppp nem képes megállapítani a gépünk nevét, akkor később ezt még kézzel is be tudjuk állítani.
ppp ON pelda> term
Váltsunk “terminál” módba, így mi irányítjuk a modemet.
deflink: Entering terminal mode on /dev/cuau1 type '~h' for help
at OK atdt123456789
Az at paranccsal hozzuk alaphelyzetbe a modemet, majd a atdt paranccsal és egy telefonszám megadásával megkezdjük a szolgáltató tárcsázását.
CONNECT
Ezzel jelez vissza a kapcsolódás megkezdéséről. Ha itt bármilyen hardvertől független csatlakozási probléma merülne fel, akkor ezen a ponton tudunk ellene tenni valamit.
ISP Login:felhasznalonev
Itt kell megadnunk a felhasználói nevünket, ami megegyezik a szolgáltató által adott azonosítónkkal.
ISP Pass:jelszo
Ezúttal a jelszavunkat kell megadni, amit szintén a szolgáltató bocsátott rendelkezésünkre az azonosító mellett. Akárcsak amikor bejelentkezünk a FreeBSD-be, itt sem fog látszódni a jelszavunk.
Shell or PPP:ppp
Szolgáltatótól függően előfordulhat, hogy ez a sor soha nem is jelenik meg. Itt kérdezik meg, hogy a szolgáltatónál egy shellt akarunk használni, vagy csak elindítani egy ppp kapcsolatot. Ebben a példában természetesen a ppp opciót választjuk, mivel egy internet-előfizetés birtokosai vagyunk.
Ppp ON pelda>
Figyeljük meg, hogy az első p
nagybetűssé vált. Ezzel jelzi a program,
hogy sikeresen csatlakoztunk a
szolgáltatónkhoz.
PPp ON pelda>
Sikeresen azonosítottuk magunkat a szolgáltató felé és várjuk az IP-címünket.
PPP ON pelda>
Megkaptuk az IP-címünket és ezzel sikeresen felépült a kapcsolat.
PPP ON pelda>add default HISADDR
Itt adjuk hozzá az alapértelmezett
útvonalat, amire mindenképpen
szükségünk van ahhoz, hogy a
külvilággal is kapcsolatban tudjunk lépni,
mivel jelenleg csak a vonal másik végén
lévő gépet érjük el. Ha ezt
bizonyos, már meglevő útvonalak miatt nem
sikerül felvenni, akkor az add
elé
tegyünk egy ! jelet. Ezt viszont a
kapcsolat felépítése előtt is
megtehetjük, így menet közben az új
útvonalat felveszi a többi közé.
Ha eddig minden remekül ment, akkor ezen ponton már egy élő internet-kapcsolattal rendelkezünk, és a programot a CTRL+z lenyomásával a háttérbe is tehetjük. Ha a PPP felirat ismét a ppp feliratra váltana, akkor az arra utal, hogy elvesztettük a kapcsolatot. Erre nem árt figyelni, mivel ezzel jelzi az aktuális kapcsolat állapotát. A nagybetűs P-k jelölik, hogy az adott szinten megvan a kapcsolat a szolgáltató felé, a kisbetűs p-k pedig arra utalnak, hogy azon a szinten a kapcsolat valamiért megszűnt. A ppp csak ezt a két állapotot ismeri.
Ha közvetlen vonalunk van és mégsem
sikerül kapcsolatot létesíteni, akkor
tiltsuk le a hardveres CTS/RTS
forgalomirányítást a set ctsrts
off
paranccsal. Ez leginkább akkor fordul
elő, ha csatlakoztunk egy olyan
terminálszerverhez, amely valamennyire képes
kezelni a PPP kapcsolatokat, de a
PPP megáll, mikor adatot
próbál írni a kommunikációs
csatornára, mivel arra a CTS (Clear
To Send — “lehet küldeni”)
jelzésre vár, amely soha nem fog
megérkezni. Ha mégis ezt a
beállítást akarjuk használni,
akkor a set accmap
beállításra is
szükségünk lesz, mivel ez kell bizonyos
karakterek hardverfüggő
átküldésének
felülbírálásához,
legtöbb esetben a XON/XOFF miatt. A ppp(8) man
oldalon találhatunk erről és ennek
használatáról részletesebb
leírást.
Ha egy régebbi gyártmányú
modemünk van, akkor a set parity even
beállítás alkalmazása is javasolt.
Alapértelmezés szerint ugyanis nincs
paritás, de a régebbi modemek és (a
forgalom növekedésével) egyes
szolgáltatók még használják
hibaellenőrzésre. Ha Compuserve
előfizetésünk van, mindenképpen
kapcsoljuk be.
Amikor a PPP nem tér vissza parancs módba, akkor gyaníthatóan az egyeztetésben lesz valahol probléma, mivel a szolgáltató a kliensüktől várja a kezdeményezését. Ezen a ponton a ~p paranccsal utasíthatjuk a ppp programot a konfigurációs információk átküldésének megkezdésére.
Ha egyáltalán nem kapunk promptot a bejelentkezéshez, akkor nagy a alószínűsége, hogy az iménti UNIX® stílusú hitelesítés helyett PAP vagy CHAP protokollt kell használnunk. A PAP vagy CHAP használatához mindössze a következő beállításokat kell megadnunk PPP programnak a terminál mód aktiválása előtt:
ppp ON pelda> set authname felhasznalonev
ahol a felhasznalonev helyett a szolgáltatótól kapott azonosítót kell beírnunk.
ppp ON pelda> set authkey jelszo
ahol a jelszo helyett a szolgáltatótól kapott jelszót kell megadnunk.
Ha sikeresen csatlakoztunk, de még nem
találunk semmilyen tartománynevet, akkor a
ping(8) és IP-cím
segítségével tudjuk megvizsgálni,
hogy működőképes-e a kapcsolat. Ha
100 százalékos (100%) csomagvesztést
(packet loss) tapasztalunk, akkor szinte biztos, hogy nincs
meg az alapértelmezett útvonal.
Nézzük meg újra, hogy az add
default HISADDR
beállítást
megadtuk-e a kapcsolat felépítésekor. Ha
viszont már el tudunk érni egy távoli
IP-címet, akkor nagyon valószínű,
hogy az /etc/resolv.conf
állományba nem került bele a megfelelő
névfeloldó címe. Az említett
állománynak valahogy így kellene
kinéznie:
domain minta.com nameserver x.x.x.x nameserver y.y.y.y
Ahol az x.x.x.x és y.y.y.y címeket a szolgáltatónk névszervereinek címével kell behelyettesíteni. Ez nem minden esetben található meg az előfizetői szerződésben, de ha felhívjuk a szolgáltatónkat, akkor minden bizonnyal elárulják ezeket a címeket.
A syslog(3) is alkalmas a PPP kapcsolatok naplózására. Ehhez csupán ennyit kell megadnunk az /etc/syslog.conf állományban:
!ppp *.* /var/log/ppp.log
A legtöbb esetben ez a lehetőség már eleve adott.
Ha kérdése van a FreeBSD-vel kapcsolatban, a következő
címre írhat (angolul): <freebsd-questions@FreeBSD.org>.
Ha ezzel a dokumentummal kapcsolatban van kérdése,
kérjük erre a címre írjon: <gabor@FreeBSD.org>.