Този материал е за всички новаци, които искат да ползват Интернет
от своята Linux машина, но нещо все не успяват да донастроят.
Това е кратичко ръководство, с което да накарате
pppd
да работи с вашият Интернет доставчик, използвайки
динамичен
IP адрес. Този материал е базиран на множество
HOWTO-та
и
FAQ-материали
, написани от много хора, много преди мен. Тук няма да ви занимавам
с протоколи, процеси, история и други досадни технически неща, присъщи на
инженерния ми поглед върху нещата. Само ще ви нахвърлям няколко идеи как
да накарате проклетия си компютър да ви служи и в Интернет. Естествено
ако направите всичко това сляпо голяма е вероятността да успеете да
постигнете целта си и съответно нищичко да не научите, но ако сте
късметлии нещо да не потръгне от първия път, тогава се разровете в посочените
по-горе истински HOWTO-та, поразмърдайте си мозъка и ще почувствате радостта
от знанието. Не ми задавайте въпроси -
получих вече стотици - няма да ви отговоря -
невъзможно ми е на всеки поотделно да
обяснявам как да си пусне ppp - ако досега не
сте успяли с шарените средства като kppp
и ако това статийче не ви помогне да
си решите проблема - припомнете си какво означава съкращението RTFM и кликнете
на горните хипервръзки. (За непосветените RTFM = Read The Fuckin' Manual)
Защо пък точно pppd? Linux притежава невероятно много мрежови
средства, никое от които не изисква задължително графичен режим (X-window).
Тъпо би
било да стартирате X-window всеки път, когато искате да направите telnet или
ftp. На всичко отгоре подготовката за ръчно стартиране на pppd ще ви отнеме
само няколко минути.
Едно уточнение:
Не ви обещавам, че скритовете, за които става въпрос по-долу се
намират на
същото място и във вашата Linux дистрибуция. Проверете това сами.
pppd
е самият демон, а ако не намерите скриптовете
ppp-on
,
ppp-off
и
ppp-on-dialer
можете да ги изкопирате от
/usr/doc/ppp-2.*/scripts или /usr/doc/ppp/examples
и да ги редактирате според нуждите си. Ако пък съвсем нищо не намирате
потърсете нещо подобно на това -
ppp-2.3.x.tar.gz
За фенове на RedHat като мен препоръчвам четивото
http://www.redhat.com/support/docs/rhl/PPP-Tips/PPP-Tips.html
, в него може да намерите полезни съвети.
-
1.
Редактирайте вашия
ppp-on
скрипт. Най-често се намира в директорията
/usr/sbin/
, но най-добре го потърсете с командата
find / -name ppp-on
подадена от вашата root директория. Ако липсва вероятно нямате
инсталиран
pppd
. Трябва да промените скрипта според необходимостите, които имате.
Ще видите полета като тези:
TELEPHONE=
ACCOUNT=
PASSWORD=
LOCAL_IP=
REMOTE_IP=
NETMASK=
Забележете
- важно е да няма празни интервали между цифрите на телефонния номер
на вашия Интернет доставчик (например:
62-78-29
, а
не
62 78 29
). Трябва също да оставите
LOCAL_IP
и
REMOTE_IP
със стойност
0.0.0.0
), те разбира се могат да бъдат конфигурирани, но само ако наистина
знаете какво правите.
NETMASK
в повечето случаи е
255.255.255.0
, но все пак една консултация с вашия Интернет доставчик няма да е
излишна. Трябва към края на файла да видите някъде и нещо такова:
/dev/ttys1
38400
Разбира се, че трябва да го промените според модема си и това
къде точно сте го инсталирали.
Нормален запис например е:
/dev/cua1 115200
което означава модем на COM2
и скорост на порта 115200.
/dev/ttys0
или
/dev/cua0
означава COM1,
/dev/ttys2
или
/dev/cua2
е COM3 и т.н. Разбира се, че
/dev/modem/
също може да ви свърши работа. Това е всичко, което трябва да направите
във вашия
ppp-on
файл. След като нещата потръгнат можете да опитате да оптимизирате
скоростта добавяйки
mru 296 mtu 296
. Това установява Maximum Receive Unit (максималния брой приети единици)
и Maximum Transmit Unit (максималния брой изпратени) на 296 байта. Може
би ще опитате и
asyncmap 0.
-
2.
Редактирайте
hosts
файла си. Намира се във вашата /etc/
директория. Почти абсурдно е да е някъде другаде, но ако не го намерите
пробвайте
find / -name hosts
от вашата root директория. Във въпросния файл задължително трябва да има:
127.0.0.1
localhost
0.0.0.0
host.domain host
Забележете, че трябва да замените
host
и
domain
съответно с името на хоста си (hostname) и домейна на вашата
машина. Възможно е правилните настройки вече да съществуват
благодарение на инсталатора на вашата Linux дистрибуция.
. Забележете също, че файловете
hosts.allow
и
hosts.deny
, които също се намират в директория
/etc/
нямат отношение към настройката на dialup комуникацията.
-
3.
Редактирайте вашият
resolv.conf
файл. Обикновено също в
/etc/
директорията.
Забележете
: настройките които следват са примерни - вие не трябва просто да
ги препишете
, а да въведете правилните данни на вашия Интернет доставчик
search
myisp.bg
nameserver
208.211.123.69
nameserver
208.211.123.68
Всичко това е за да имаме DNS.
myisp.bg
е името на примерния Интернет доставчик, а xxx.xxx.xxx.xxx
е адреса на Domain Name Server-а (DNS) на myisp.bg.
-
4.
Ако искате вярвайте, ама това си е направо почти всичко, което трябва да направите
за да имате Интернет под Linux. Ако не сте се log-нали като
root
, време е да го направите, да напишете в командния ред
ppp-on
и ще чуете модема си да набира за да разберете дали сте свързани
подайте командата
ifconfig
или
route
. Можете да ползвате Интернет колкото си искате - за да прекъснете
връзката ползвайте
ppp-off
.
-
Забележки:
Някои файлове, които имат отношение към ситуацията са
pppd, pppd-2.2, ppp-on-dialer. В последния например сменете ATDT на
ATPD ако си нямате цифров телефон и сте на стара аналогова линия
с импулсно набиране. А какъв трябва да е инициализационния стринг
на модема за да не чака dial tone - добавете X3 ;-)
Хайде да кажем две думи и за PAP и CHAP. Ако ще питате какво е това
по-добре потърсете и прочетете нещо по въпроса преди да пипате каквото
и да било. Идете в директория /etc/ppp/ и редактирайте pap-secrets
(или chap-secrets) като добавите
your_login_name * your_password
в първия нормален (а не коментарен) ред. Ако няма такъв файл просто
си създайте нов.
-
Ако получите грешка от вида
ppp service not available
значи нямате ppp - намерете си отнякъде ppp-2.2.0f.tar.gz или по-нов
(примерно от
ftp://ftp.cdrom.com/pub/linux/slackware-current/source/n/ppp/
). Linux ядрата с версия 2.0.29 и по-нови не работят с по-стара версия
на pppd от ppp-2.2.0.
-
Ако получите грешката
permission denied
трябва да проверите правата върху файловете, може да не са както трябва
дори и да сте се log-нали като root.
-
Ако модема ви набира, свързва се и веднага разпада след няколко секунди
вашият Интернет доставчик вероятно използва различена процедура
за оторизация. Пробвайте да наберете ръчно с програма като
seyon
или
minicom
и проследете внимателно всички промпт-запитвания от машината на
вашия доставчик. Файлът
etc/ppp/ppp-on-dialer
очаква последователността да бъде
Logon:
и
Password:
така, че ако във вашия случай не е точно такава ще се наложи да
промените въпросния файл.
-
Ако модема ви е plug-n-play възможно е той да отказва да се инициализира
коректно. Подайте командата
pnpdump
и след това
isapnp
за да инициализирате модема.
-
Ако случайно сте въвели IP адрес на gateway по време на инсталацията
на вашия Linux това е неправилно и трябва да редактирате файла
/etc/rc.d/rc.inet1
като коментирате или изтриете реда
GATEWAY=
ако съществува. В противен случай ще можете да осъществите връзка,
но вашите пакети няма да се маршрутизират коректно.
-
Linux съвсем не се побърква от щастие като работи с динамичен IP
адрес. Ако откриете примерно, че
talk
не работи както трябва да прочетете
Dynamic IP Hacks mini-HOWTO
(особено hack #5).
Важни подробности:
Може би е глупаво да го споменавам, но все пак надявам се ще се досетите,
че ядрото ви трябва да е компилирано с мрежова поддръжка за да ползвате
работещо PPP. Как се прекомпилира ядрото можете да прочетете на български
тук
и разбира се в оригинал
Linux Kernel HOW-TO. И по отношение на сигурността надявам се, че не сте оставили root да се
log-ва без парола и тя е достатъчно трудна да откриване освен web-сървъра ви
(който изисква малко по-особена конфигурационна намеса), всички други
услуги като
ftp, telnet, finger
и т.н. би трябвало да си работят. Lynx е фантастичен браузер, но за X може би
все пак ще си download-nete Netscape Communicator. Оставям на вас да прочетете останалите
документи и да помислите възможно ли е и как да стартирате ppp не само като
root.