A modemes kapcsolat konfigurálása Linux rendszerben

 

Előfeltételek:

- root jogosultság a beállítani kívánt gépen
- feltelepített, működő Linux, GNU C fordítóval stb. (standard kiépítés ezeket többnyire tartalmazza)
- ppp csomag feltelepítve
(standard kiépítés ezt szintén tartalmazza)
- Linux kernel forrás megléte, bekonfigurálva
(kernel forrás letölthető: ftp://ftp.kernel.org)
- "szoveg"vető Linux felhasználói ismeretek

 

 

1. Amennyiben a jelenlegi Linux kernelünk nem tartalmaz PPP támogatást:

- PPP támogatás beillesztése a kernelbe:

# cd /usr/src/linux

# make menuconfig

A megjelenő menüben a kurzormozgató gombokkal lehet navigálni. (le-fel menüpontok, jobbra-balra pedig az alul levő Select, Exit, Help stb. között válthatunk. Enter-el ezeket a 'gombokat' nyomhatjuk le, Space-el pedig az aktuális menüpontban végezhetünk változtatást ("Toggle"), illetve beléphetünk abba)

  • Válasszuk ki a Network device support menüt

 

 

  • Válasszuk ki a PPP (point-to-point) support menüpontot

 

- Itt két lehetőség van: vagy üzem közben betölthető modul formájában kívánjuk a PPP támogatást, vagy fixen beillesztjük azt a kernelbe, így induláskor már betöltődik.

- A Space lenyomására az M betű jelenik meg a menüpont előtt, ebben az esetben modult fogunk készíteni, a Space ismetelt lenyomására * jelenik meg, ekkor fixen beépíthetjük a kernelbe.
A Space újabb lenyomására megszüntethetjük a PPP támogatást.

 

- Válasszuk az Exit gombot, így visszajutunk a főmenübe, majd ismét az Exit gombot.

  • Mentsük el a kernel konfigurációt.

 

 

- Adjuk ki a következő parancsot:

 

# make dep clean modules modules_install bzImage

Megjegyzés: a bzImage opcióra csak abban az esetben van szükség, ha a kernelbe fixen beépítjük a PPP támogatást.

 

 

* a következő lépések kizárólag a fixen beépített PPP támogatásra vonatkonak *

 

 

Ha ezt az opciót választottuk, akkor a következő output jelenik meg a képernyőn.

  • A lefordított kernelt másoljuk rá a regi kernelre.

Megjegyzés: a regi kernel 'lelőhelyét' a /etc/lilo.conf file "image=" sora tartalmazza.(Előfordulhat, hogy zImage a regi kernel image neve. AzImage a bzImage elődje, azonban méretkorlátok miatt a legfrissebb kernelek esetében mar nem használható. Ebben az esetben a /etc/lilo.conf-ban módosítsuk az image sort. Általában az "szoveg" linux kiépítés a /boot/vmlinuz file-ban tárolja a kernelt, ebben az esetben is módosítsuk az /etc/lilo.conf-ot)

 

# cp arch/i386/boot/bzImage /boot/

 

  • Ezután adjuk ki a lilo parancsot: # lilo

- Ez után indítsuk újra a számítógépet.

- Újraindítás után újra root jogosultsággal belépve ellenőrizzük le a PPP támogatás meglétét:

 

# dmesg | grep PPP

 

 

* modul kiépítése esetén: *

Ha ezt az opciót választottuk, akkor a következő output jelenik meg a képernyőn.

 

- NINCS szükség a számítógép újraindítására. írjuk be:

 

# insmod ppp

- Majd ellenőrizzük az eredményt:

 

# lsmod

 

- A modult eltávolítani a következő paranccsal tudjuk:

# rmmod ppp

 

2. PPP, nameserver konfigurálása

- Először is állítsuk be a nameservereket. A nameserverek címeit, illetve a felhasználó domain nevét a /etc/resolv.conf fileban találjuk meg. A search sor a domain nevet tartalmazza (ha itt hu.inter.net áll, akkor a továbbiakban, ha csak host nevet adunk meg, automatikusan hozzáfűzi az hu.inter.net domaint, pl.: news !’ news.hu.inter.net

 

  • A PPP csomag tartalmaz előre elkészített scripteket, amelyek kis módosítással azonnal felhasználhatóak a PPP kapcsolat létrehozásához. Ezeket a scripteket a /usr/doc/ppp/examples alkönyvtárban találjuk: ppp-on, ppp-on-dialer, ppp-off.

- Másoljuk ezeket egy olyan könyvtárba, ahol könnyedén el tudjuk majd indítani őket a későbbiekben, például a root home alkönyvtára megfelel erre a célra:

# cp /usr/doc/ppp/examples/ppp-* /root

- A ppp-on és a ppp-on-dialer scriptekben kell módosítást végrehajtanunk. Először is a
ppp-on-dialer-t állítsuk be a képen láthatónak megfelelően.

  • A ppp-on-dialer felépítése a következő:
 

A chat nevű program magához veszi a modem vezérlését, és figyeli a modem felől érkező adatokat. Amennyiben valamelyik definiált karakterláncot kapja a modemtől, a hozza társított karakterláncot küldi ki rá válaszul. A modem inicializáló stringet a sorban találjuk, ezt írjuk át a modem leírásában szereplő init stringre (általában egy egyszerű ATX is megteszi, de lehetőség van a modem 'finomhangolására', lásd leírás). Az ATX egyébként azt eredményezi, hogy a modem ne várjon tárcsahangra, hanem 'dumb' módon álljon neki tárcsázni. Ez például olyan alközpontok esetén hasznos, amelyek nem adnak szabványos tárcsahangot.

  • Ez után a ppp-on nevű scriptet szabjuk át:

A TELEPHONE sor tartalmazza a telefonszámot, az ACCOUNT sor a login nevet, a PASSWORD sor a jelszót. A LOCAL_IP, REMOTE_IP, NETMASK sorokhoz nem kell nyúlnunk, azok 'gyárilag' megfelelően vannak beállítva.

 

- A DIALER_SCRIPT sort úgy kell módosítanunk, hogy a ppp-on-dialer elérési útvonala helyes legyen.

- A legutolsó exec direktíva indítja el tulajdonkeppen a folyamatot, meghívja a PPP daemont, illetve elindítja a ppp-on-dialer scriptet. Az itt esetlegesen módosítandó paraméter a COM port, amelyen a modemünk van, illetve a modem és gép közti kommunikáció sebessége. Rendre a /dev/ttyS0 a COM1, a /dev/ttyS1 a COM2, és így tovább.

Megjegyzés: ahhoz, hogy a scripteket futtathassuk, módosítani kell a file hozzáférési jogosultságokat:

# chmod u+x ppp-*

 

3. A kapcsolat létrehozása, bontása

- A kapcsolat létrehozása

# ./ppp-on

- Figyelemmel kísérhetjük a kapcsolat felépítését:

# tail -f /var/log/messages

megj.: a syslogd beállításától függően más file-ba is történhet naplózás, például: /var/log/syslog

Nagyjából a képen látható eredményt fogjuk kapni.

 

megj.: például Debian disztribúcióban némileg előre konfigurált PPP csomag van, ami meghiúsíthatja a kapcsolatfelvételt, ezen a /etc/ppp/ppp-options nevű file törlése segít.

 

- A kapcsolat bontása:

# ./ppp-off