Návod na zprovoznění připojení k Internetu na Nokii 6310i přes GPRS a tarif Eurotel Data Nonstop. Návod popisuje nastavení připojení jak v příkazové řádce, tak i v grafickém prostředí v programu kppp.
18.5.2004 08:00 | o.k. | přečteno 22629×
Níže popisovaný návod bude víceméně univerzální a bude prakticky nezávislý na použité distribuci Linuxu. Co se týče konkrétního softwarového vybavení, tak je zapotřebí mít nainstalovaný program/démon pppd, případně program kppp pro konfiguraci v grafickém prostředí a samozřejmě příslušné moduly do jádra (či danou podporu zakompilovanou přímo v jádře), které umožní oboustrannou komunikaci přes sériový port mezi PC a mobilním telefonem.
Veškerá nastavení konfiguračních souborů budeme provádět v adresáři
/etc/ppp
, samozřejmě jako uživatel root
.
Pokud v tomto adresáři nemáme vytvořen podadresář
peers
, tak jej vytvoříme, konkrétně pak příkazem
cd /etc/ppp mkdir peers
Toto je defaultní adresář ve kterém démon pppd
hledá příslušné
konfigurační soubory, pokud jej voláme se jménem odpovídajícím jménu daného
souboru, který jsme si v tomto adresáři vytvořili. Já zde vytvořím například
soubor s názvem gprs
, takže se pak budu připojovat příkazem
pppd call gprs
Samozřejmě, že existují i předzpracované skripty pro vytáčení/připojení
(ve Slackwaru
to jsou skripty ppp-on
a ppp-off
a věřím, že v
dalších distribucích lze podobné skripty také nalézt). Abych tento postup
udělal co nejuniverzálnější, tedy nezávislý na použité distribuci, tak tyto
skripty nevyužiji a vytvořím jednodušší skripty pro náš účel připojení plně
postačující.
Vytvořme si tedy v adresáři /etc/ppp/peers
soubor s názvem
gprs
, který bude obsahovat následující položky:
/dev/ttyS0 # seriovy port ke kteremu mame pripojen datovy kabel od Nokie 115200 # prenosova rychlost mezi PC a Nokii (staci i 57600) crtscts # hardwarove rizeni toku dat nodetach # nechceme, aby pppd presel na praci v pozadi noauth # protistrana spojeni nevyzaduje autentizaci # skript pro vytoceni spojeni connect '/usr/sbin/chat -v -f /etc/ppp/peers/gprs-on' noipdefault # nepouzije se lokalne nastavena IP adresa, ale adresa ziskana # pres IPCP od protistrany local # ignorace CD, nemenime stav DTR novj # zakazana komprese TCP/IP hlavicek v obou smerech novjccomp # zakazana komprese Bytu ID TCP/IP spojeni nobsdcomp # zakazana BSD komprese # skript pro ukonceni spojeni disconnect '/usr/sbin/chat -v -f /etc/ppp/peers/gprs-off' defaultroute # prida defaultni routu do routovaci tabulky usepeerdns # ziska od protistrany 2 DNS zaznamy a preda je skriptu ip-up, # ktery je docasne zapise do souboru /etc/resolv.conf lock # zamek na seriovem zarizeni #debug # vhodne pro ladeni
Rád bych k výše uvedenému konfiguračnímu skriptu zmínil, že volba
defaultroute
nepřepíše defaultní routu v systému. Existují
novější/patchované verze démona pppd
, které mají volbu
replacedefaultroute
, která defaultní volbu přepisuje. Pokud tuto
verzi nemáte, tak si stačí napsat skript, který defaultní routu smaže a vytvoří
novou a tento skript pak volat ve skriptu ip-up
, který se aktivuje při úspěšném
připojení.
Aby vše správně fungovalo, tak musíme ještě vytvořit spouštěcí a ukončovací
skript, které voláme v hlavním skriptu gprs
. Vytvoříme si tedy
spouštěcí skript, který se bude jmenovat gprs-on
, bude také v
adresáři /etc/ppp/peers/
a bude vypadat následovně
TIMEOUT 10 ABORT BUSY ABORT "NO CARRIER" ABORT VOICE ABORT "NO DIALTONE" "" '\rATZ' OK ATX1 OK AT+CGDCONT=1,"IP","internet" OK "ATD*99***1#" CONNECT
Skript pro ukončení spojení bude ve stejném adresáři, nazveme jej
gprs-off
a jeho obsahem bude
"" "\K" "" "+++ath"
Ještě nastavíme vlastníka a práva na všech třech skriptech na
chown root.root /etc/ppp/peers/gprs* chmod 755 /etc/ppp/peers/gprs*a už nám nic nebrání v tom se přes GPRS připojit na Internet.
Připojení ukončíme klávesami CTRL-C.
Samozřejmě je výhodné nastavit si vytáčení tak, abychom ho nemuseli provádět
přímo jako uživatel root
, ale jako obyčejný uživatel. Některé
samointeligentní distribuce to již mají nastavené, ale bohužel tak, že program
pppd
má nastaven suid bit na roota :-( Toto bych doporučil
přenastavit - tedy nastavit práva na 755. Spouštění pppd
je lepší
provádět přes program sudo
. Povolení spouštění pppd
pro uživatele ondra
a počítač s IP adresou 192.168.1.11 by
vypadalo následovně:
# visudo ondra 192.168.1.11=NOPASSWD: /usr/sbin/pppd
Vytáčení se potom bude pod uživatelem ondra
provádět
následujícím způsobem
sudo /usr/sbin/pppd call gprs
Pokud někdo z vás nemá rád příkazovou řádku a ruční editaci konfiguračních
souborů, tak zde níže přikládám ještě i pár screenshotů z programu
kppp
, které potřebují minimální komentář :-)
Nejdříve nastavíme název účtu (gprs), telefonní číslo, které budeme vytáčet (*99***1#) a IP adresu (dynamická IP adresa).
Následovat bude nastavení brány a nastavení DNS. Tímto máme jednotlivé volby
pro náš účet gprs
nastaveny. Přepneme se ze záložky "Účet" na
záložku "Zařízení" ve které nastavíme sériový port na kterém máme datový kabel
připojen nebo můžeme ponechat defaultní volbu /dev/modem
a
vytvořit si příslušný link na zařízení /dev/modem
(samozřejmě jako uživatel root
) takto:
ln -s /dev/ttyS0 /dev/modem
kde /dev/ttyS0
odpovídá sériovému portu číslo 1, tedy známému
jako COM1 s DOSu, či Windows.
Přejdeme do záložky "Modem", kde můžeme vyzkoušet komunikaci s telefonem -
tlačítko "Dotázat se modemu..." a kde hlavně musíme
změnit inicializační řetězec 2 - tlačítko "Příkazy modemu..." jak je patrné z
obrázku, který by měl vypadat
následovně: AT+CGDCONT=1,"IP","internet"
.
To je vše a nezbývá nám již nic jiného než vyzkoušet připojení (uživatelské jméno a heslo je libovolné) - doufám, že s úspěchem.