от Димитър Василев(21-04-2003)

рейтинг (8)   [ добре ]  [ зле ]

Printer Friendly Вариант за отпечатване

Глава 18: PPP и SLIP

Превод: Димитър Василев ака botzko/FreeJak
12/2002-04/2003 за нуждите на FreeBSD-BG documentation project
Реорганизирана, преструкрирана и обновена от Jim Mock

18.1.Предговор

FreeBSD разполага с множество начини за свързване на един компютър с друг. За установяването на мрежова или интернет връзка чрез модем или да разрешите на други да направят същото чрез вас, изисква употребата на PPP или SLIP. Тази глава описва настройката на тези две услуги, базирани на модем в подробности.

След прочита на тази глава, вие ще знаете:

  1. Как да настроите потребителската PPP програма.
  2. Как да използвате PPP възможностите на ядрото.
  3. Как да настроите PPPoE (PPP през Ethernet).
  4. Как да настроите PPPoA (PPP през ATM).
  5. Как да настроите SLIP клиент и сървър машина.
Преди да продължите с четенето, вие трябва да:
  1. бъдете запознати с основната мрежова терминология.
  2. Разбирате същността и целта на дайъл-ъп връзките, PPP и/или SLIP.
Може би се чудите каква е основната разлика между обикновеното (потребителското) PPP и това в ядрото. Отговорът е прост: потребителското PPP обработва входя-щите и изходящи данни вън от ядрото. Това е прахосничество, в смисъл, че данните се копират между ядрото и програмата, но позволява ppp решение с много повече характеристики.

Обикновеното PPP използва специалните устройства tun да общува с външния свят, докато ppp от ядрото използва ppp устройствата.

Забележка: Потребителското ppp ще бъде преименувано за краткост на ppp, освен ако не е нужно да се разграничи от друг PPP софтуер като pppd. Ако не е указано по друг начин, всички команди разяснени в този раздел трябва да бъдат изпълнявани като root.

18.2 Употреба на обикновеното PPP

Обновено и подобрено от Tom Rhodes. Първоначално написано от Brian Somers. С добавки от Nik Clayton, Dirk Frumberg и Peter Childs.

18.2.1 Потребителско PPP

18.2.1.1 Предположения

Този документ прави допускания, че разполагате със следното:

  • * Акаунт към Интернет доставчик (ISP), която използвате да се връзвате към Интернет
  • * Правилно настроен модем или друго устройство, свързано с вашия компютър, който ви позволява да се свържете с вашия ISP.
  • * Номерата за достъп на вашия доставчик.
  • * Потребителско име и парола. (Дали обикновена Юникс двойка име и парола или PAP/CHAP такава.)
  • * IP адресите на един или повече домейн сървъри. Обикновено, ще ви бъдат дадени за ползване 2 IP адреса от вашия доставчик. Ако не са ви дали поне един, тогава можете да използвате командата enable dns в ppp.conf и ppp ще настрои нейм сървърите вместо вас. Това зависи от наличието на функция, предаваща DNS информацията в PPP софтуера използван от вашия доставчик.

Следната информация може дави бъде предоставена от вашия ISP, но не е напълно задължително:

  • * IP адреса на шлюза (gateway). Шлюзът е машината, към която ще се свържете и ще бъде зададена като default route (път по подразбиране). Ако нямате тази информация, можем да си измислим такъв и шлюзът на доставчика ви ще каже коя е правилната стойност при свързване. Този адрес се възприема от ppp като HISADDR.
  • * Мрежовата маска , която би трябвало да използвате. Ако не са ви дали такава, можете спокойно да използвате 255.255.255.255.
  • * Ако вашият доставчик ви даде статичен адрес и име на машината, можете да го въведете. Иначе просто чакаме отсрещната страна да ни даде IP адрес, който й е удобен.
Ако нямате някоя подробност от нужната информация, свържете се с доставчика си.

Забележка: В този раздел, много от примерите визиращи конфигурационните файлове имат номерирани редове. Тези редове служат за подпомагане на презентацията и не се предназначени да присъстват в действителния файл. Употребата на TAB клавишите и интервала също е важна.

18.2.1.2 Ръчна настройка на ppp

При нормални обстоятелства, повечето потребители ще използват само едно tun устройство (/dev/tun0). Препратките към tun0 могат да бъдат сменени към tunN, където N е номера съответстващ на вашата система.

При FreeBSD инсталации, които нямат активирана devfs(5) (FreeBSD 4.X и по-ранни), съществуването на устройството tun0 трябва да се провери (това не е необходимо при FreeBSD 5.x, на които има активирана devfs(5)).

Най-лесният начин за проверка е да създадете устройствата наново. За да стане това, въведете:

# sh MAKEDEV tun0

18.2.1.2.1 Проверка на модема

Ако сте прекомпилирали ядрото си, тогава си спомняте за устройството sio. Ако модемът ви действа като стан-дартен сериен порт, тогава вероятно ще ви се наложи да създадете серийното устройство. Можете да го сторите като отидете в /dev и стартирате скрипта MAKEDEV както по-горе. Сега създайте серийните конзоли с:

# sh MAKEDEV cuaa0 cuaa1 cuaa2 cuaa3
което ще създаде серийните устройства на вашата система. Ако вашият модем е на sio1 или COM2, ако сте под ДОС, тогава модемът ви ще бъде /dev/cuaa1.

Ако се нуждаете от 16 тунелни устройства във вашето ядро, можете да ги съдадете чрез следните команди:

# cd /dev
# sh MAKEDEV tun15

18.2.1.2.1 Проверете модема

Ако сте прекомпилирали ядрото, тогава си спомняте за устройството sio (туй го пишеше и по-горе, но по-добре е да се повтори за затвърждаване на знанията, бел.прев.). Ако вашият модем действа като стандартен сериен порт, тогава най-вероятно ще ви се наложи единствено да създа-дете серийните устройства. Можете да го направите като отидете в /dev и изпълните скрипта MAKEDEV както по-горе. Сега създайте серийните устройства с:

# sh MAKEDEV cuaa0 cuaa1 cuaa2 cuaa3
което ще създаде аналозите на COM портовете под FreeBSD. Ако модемът ви е на sio1 или COM2 под ДОС, тогава комуникационното устройство за вашия модем трябва да е /dev/cuaa1.

18.2.1.3 Ръчно свързване

Ръчното свързване към Интернет е страхотен начин да откриете проблемите или да получите информация за това как вашия доставчик обработва входящите връзки.

Нека стартираме ppp от команден ред. Моля да имате в предвид, че във всички наши примери ще използваме localhost като име на машината, на която върви ppp. Стартирайте ppp просто като въведете ppp:

# ppp
Сега сме стартирали ppp.
ppp ON example> set device /dev/cuaa1
Указали сме кой порт ще ползваме, в този случай cuaa1.
ppp ON example> set speed 115200
Задаваме скоростта на връзката, в този случай използваме 115,200 kbps.
ppp ON example> enable dns
Указва на ppp да настрои нашия именен преобразувател и да добави получената информация за DNS към /etc/resolv.conf. Ако ppp не може да определи името на нашия хост, можем да зададем такова по-късно.
ppp ON example> term
Превключва към ''терминален'' режим, така че да можем ръчно да контролираме модема.
deflink: Entering terminal mode on /dev/cuaa1
type '~h' for help
at
OK
atdt 123456789
Използвайте at да проверите модема, после atdt и номерът за достъп на вашия доставчик ISP за да започнете набирането.
CONNECT
Потвърждение на връзката, ако ще има някакви проблеми с нея, необвързани с хардуер, тук е мястото където ще се опитаме да ги разрешим.
ISP Login: myusername
Тук сте запитвани за потребителско име, въведете това дадено ви от вашия интернет доставчик.
ISP Pass: mypassword
Този път ще трябва да въведем парола, просто отговорете с паролата към потребителското ви име. Подобно на влизане във FreeBSD, паролата няма да бъде изведена.
Shell or PPP: ppp
В зависимост от вашия ISP, този промпт може никога да не се появи. Тук сме запитвани дали желаем да използваме командния интерпретатор на отдалечената машина или да стартираме ppp. В този пример, сме избрали ppp, тъй като искаме интернет връзка.
Ppp ON example>
Успешно сме разпознати от нашия ISP и чакаме да ни бъде зачислен IP адрес.
PPP ON example>
Разбрали сме се за адреса и сме се вързали успешно.
PPP ON example> add default HISADDR
Тук добавяме нашия път по подразбиране, трябва да го направим преди да можем да комуникираме с външния свят, тъй като за момента единствената установена връзка е с отдалечената машина. Ако задаването на подразбиращия се път (route) се провали поради наличието на съществуващи такива, можете да поставите ''!'' знак пред новата добавка.

Алтернативно, можете да зададете маршрута по подразбиране преди фактическото установяване на връзката и програмата ще ''намести'' стойностите вместо вас при свързването, ако е необходимо.

Ако всичко е минало добре, трябва да имаме активна връзка с Интернет, която може да бъде пратена във фонов режим, използвайки CTRL+z. Ако забележите PPP да се връща към ppp, тогава сме изгубили връзката. Това е добре да се знае, тъй като показва статуса на връзката. Главните P-та показват, че имаме връзка с ISP-то и малките p-та, че връзката е била загубена по някакви причини. Програмата ppp има единствено тези две състояния.

18.2.1.3.1 Отстраняване на проблеми при ръчно свързване

Подобно на всичко останало, от време на време може да се появи проблем. PPP не е изключение от тази теория. Ако ppp случайно спре да отговаря, има някои неща, които можем да опитаме.

Ако имате директна линия и не можете да се свържете, тогава изключете хардуерния (CTS/RTS) контрол върху потока от информация с опцията set ctsrts off. Това е основната причина, ако сте свързани към терминални сървъри с PPP възможности, където PPP увисва при опит да пише данни върху вашата линия, очаквайки CTS (Clear To Send) сигнал, който може изобщо да не се появи. Ако използвате хардуерен контрол, трябва също да използвате set accmap опцията, нужна да прескочи определени знаци, зависими от хардуерния контрол – XON/XOFF в повечето от случаите. Вижте man ppp за повече информация по този параметър и как се използва.

Ако имате по-стар модем, може да се наложи да използвате set parity even. Паритетът е зададен като нула по подразбиране, но се използва за проверка на грешки (с горямо увеличение на трафика) върху по-старите модеми и някои доставчици. Може да се нуждаете от тази опция, ако ползвате Compuserve. PPP може да не се върне към команден режим, което обикновено е комуникационна грешка, където ISP-то ви чака да започнете сесията. В такива случаи, използването на ~p ще принуди ppp да изпрати информацията за вашата конфигурация.

Ако никога не получите логин промпт, тогава вероятно се нуждаете от PAP или CHAP разпознаване вместо това в стил Юникс, както е в горния пример. За да използвате PAP или CHAP, само добавете следните опции към PPP преди да преминете в терминален режим:

ppp ON localhost> set authname myusername
Заместете myusername с това, което вашият доставчик ви е дал.
ppp ON localhost> set authkey mypassword
Заместете mypassword с това, което вашият доставчик ви е дал. Ако се връзвате добре, но не можете да откриете нито един домейн, опитайте да използвате ping(8) с IP адрес и вижте дали получавате отговор. Ако имате 100% загуба на пакети, тогава вероятно не са ви дали път по подразбиране. Проверете много внимателно дали add default HISADDR е била зададена по време на свързването. Ако можете да се свържете с отдалечена машина, използвайки IP адреса й, тогава е възможно адресът на преобразуващата машина не е бил добавен към /etc/resolv.conf. Този файл изглежда по този начин:
domain example.com
nameserver x.x.x.x
nameserver y.y.y.y
x.x.x.x и y.y.y.y трябва да бъдат заменени с IP адресите на DNS сървърите на вашия доставчик. Тази информация може да (не) ви е дадена, когато сте се вързали към тях, но едно бързо обаждане ще оправи работата.

Може да използвате syslog(3), за да подсигурите записваща функция към PPP връзката. Просто добавете:

!ppp *.* /var/log/ppp.log
към /etc/syslog.conf. В повечето случаи, такава фукционалност съществува.


Страници: [1] 2 3 4 5

<< Инсталация и стартиране на debian dosemu paradox4.5 | Как да си подкарате скенер Acer S2W 3300U под Дебиан/GNU >>