Połączenie PPP z wykorzystaniem sieci GSM
Połączenie PPP z wykorzystaniem sieci GSM przy pomocy Bluetooth, IRDA, RS232C/USB lub kart pcmciaOstatnia zmiana: 2007-03-20 12:21
1. Bluetooth
1.1. Przygotowania
1.2. Uruchomienie
2. IrDA
2.1. SIR
2.2. FIR
3. RS232 / USB
4. Karty PCMCIA GPRS
5. Połączenie PPP
5.1. Skrypty
5.2. Uruchomienie pppd
"Internet bez granic" i "Mobilność bez ograniczeń" to ostatnio modne terminy przy promocjach bezprzewodowego dostępu do internetu. Niestety rzeczywistość nie jest już tak różowa; bardzo duże opóźnienia (do 2000ms), zrywanie połączeń, brak zasięgu/sygnału, brak sensownego QoS, ograniczenia ilości nawiązanych połączeń, limity transferu czy w końcu problemy techniczne po stronie operatorów mogą dość skutecznie odstraszyć od tego typu rowiązań. Ale gdy się nie ma co się lubi...
Przy tego typu połączniu można wyróznić dwa etapy: skonfigurowanie modemu (przy pomocy kabla, bluteooth, IrDA) i połączenie przy pomocy ppp (tu już standardowo jak przy połączniu ppp np. z TPSA - zminia się tylko numer i parę opcji dla pppd. Generlanie połączenie wygląda następująco (ASCII art rulez)
---- Bluetooth ----
/ \
Komputer - kabel (USB, RS232C) - GSM (telefon, PCMCIA) - internet
\ /
----- IrDA --------
Bluetooth
Specyfikacja Bluetooth obejmuje szybkość połączeń do 723kbps (z kompresją danych do 1.2Mb). Możliwe są interfejsy bluetooth występujące jako dongle USB (bardzo popularne ostatnio) lub widoczne jako port szeregowy (UART, w przypadku niektórych wbudowanych w notebooki lub kart PCMCIA)Połączenie wykonuje się bardzo prosto; w sumie prawie wszystko już jest w systemie. Ja użyłem Bluetooth Dongle USB Dlinka DBT-120 oraz Nokii 6310i.
Przygotowania
W telefonie: włączyć bluetootha oraz identyfikacje przez inne urządzenia (uwaga do nokii - firmware w wersji V5.52. W przypadku starszych wersji softu mogą być problemy z połączeniem poprzez bluetooth - w takim przypadku należy wykonać upgrade firmware). Trzeba przekompilować jajko z włączeniem blutetooth'a, ppp no i oczywiście USB. Moja przykładowa konfiguracja:
CONFIG_BT=m
CONFIG_BT_L2CAP=m
CONFIG_BT_SCO=m
CONFIG_BT_RFCOMM=m
CONFIG_BT_RFCOMM_TTY=y
CONFIG_BT_BNEP=m
CONFIG_BT_BNEP_MC_FILTER=y
CONFIG_BT_BNEP_PROTO_FILTER=y
CONFIG_BT_HIDP=m
CONFIG_BT_HCIUSB=m
CONFIG_BT_HCIUSB_SCO=y
# CONFIG_BT_HCIUART is not set
CONFIG_BT_HCIBCM203X=m
CONFIG_BT_HCIBPA10X=m
CONFIG_BT_HCIBFUSB=m
CONFIG_BT_HCIDTL1=m
CONFIG_BT_HCIBT3C=m
CONFIG_BT_HCIBLUECARD=m
CONFIG_BT_HCIBTUART=m
CONFIG_BT_HCIVHCI=m
CONFIG_PPP=m
# CONFIG_PPP_MULTILINK is not set
CONFIG_PPP_FILTER=y
CONFIG_PPP_ASYNC=m
CONFIG_PPP_SYNC_TTY=m
CONFIG_PPP_DEFLATE=m
CONFIG_PPP_BSDCOMP=m
CONFIG_PPPOE=m
CONFIG_PPPOATM=m
Uruchomienie
Sprawdzamy czy w ogóle bluetooth jest widoczny:
# hciconfig -a
hci0: Type: USB
BD Address: XX:XX:XX:XX:XX:XX ACL MTU: 192:8 SCO MTU: 64:8
UP RUNNING PSCAN ISCAN
RX bytes:5046 acl:147 sco:0 events:212 errors:0
TX bytes:3835 acl:127 sco:0 commands:52 errors:0
Features: 0xff 0xff 0x0f 0x00 0x00 0x00 0x00 0x00
Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3
Link policy: RSWITCH HOLD SNIFF PARK
Link mode: SLAVE ACCEPT
Name: 'localhost-0'
Class: 0x3e0100
Service Classes: Networking, Rendering, Capturing
Device Class: Computer, Uncategorized
HCI Ver: 1.1 (0x1) HCI Rev: 0x20d LMP Ver: 1.1 (0x1) LMP Subver: 0x20d
Manufacturer: Cambridge Silicon Radio (10)
Następnie:
# hcitool scan
Scanning ...
YY:YY:YY:YY:YY:YY Nokia 6310i
rfcomm0 {
bind yes;
device YY:YY:YY:YY:YY:YY;
channel 1;
comment "Nokia 6310i";
}
W innych dystrybucjach można też zrobić to "ręcznie":
# rfcomm bind rfcomm0 YY:YY:YY:YY:YY:YY
Numer kanału do usługi "Dial-up Networking" można uzyskać wydając polecenie:
# spdtool search DUN
Inquiring ...
Searching for DUN on YY:YY:YY:YY:YY:YY ...
Service Name: Dial-up networking
Service RecHandle: 0x10002
Service Class ID List:
"Dialup Networking" (0x1103)
"Generic Networking" (0x1201)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 1
Language Base Attr List:
code_ISO639: 0x656e
encoding: 0x6a
base_offset: 0x100
Profile Descriptor List:
"Dialup Networking" (0x1103)
Version: 0x0100
To wszystko. Modem powinien być widoczny pod /dev/rfcomm0 (lub /dev/bluetooth/rfcomm/0 - Radio Frequency COMM). Można wykonać dowiązanie symboliczne:
# ln -s /dev/rfcomm0 /dev/modem
lub
# ln -s /dev/bluetooth/rfcomm/0 /dev/modem
"Moduł BT, który używam to karta" PCMCIA Xircom Credit Card Bluetooth". Jest troche bardziej problematyczny niż wyżej opisany moduł USB.
Pierwszy problem to fakt że konieczne jest zainstalowanie paczki (Debian) bluez-pcmcia-support albo za każdym razem trzeba będzie spinać modem (u mnie ttyS2) ze sterownikiem xircom za pomocą hciattach bo inaczej nie powstanie urządzenie hci0.
Druga sprawa to fakt że ten moduł BT Xircoma używa sterownika hci-uart (ma "Type: UART" nie jak powyższy "Type: USB"). Dużo czasu mi zajeło, dojście do tego dlaczego urządzenie hci0 mi powstaje ale jest DOWN bo umiera na inicjalizacji. A problem rozwiązało resetowanie modułu BT przed jego inicjalizacją (parametr reset=1 modułu hci-uart).
I ostatnia i najważniejsza sprawa to konfiguracja RFCOMM. Urządzenie rfcomm0 tworzyło się ale ppp umierało z dziwnymi błędami I/O. Dogooglałem się w końcu do faktu, że przyczyna tkwi w moim telefonie, którego używałem do zestawiania GPRS. Mianowicie Sony-Ericsson P910i (jak i pewnie większość jak nie wszystkie telefony ze stajni S-E) nie daje możliwości zestawienia połączenia GPRS (a precyzyjnie to DUN - Dial-Up Networking) na dowolnym kanale. Najpierw trzeba sprawdzić na jakim kanale BT można zestawiać połączenia BT:
Skanowanie w poszukiwaniu sprzętu sinozębego:
# hcitool scan
Scanning ...
XX:XX:XX:XX:XX:XX P910i
# sdptool search DUN --bdaddr XX:XX:XX:XX:XX:XX
Inquiring ...
Searching for DUN on XX:XX:XX:XX:XX:XX ...
Service Name: Dial-up networking
Service RecHandle: 0x10000
Service Class ID List:
"Dialup Networking" (0x1103)
"Generic Networking" (0x1201)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 1
Language Base Attr List:
code_ISO639: 0x656e
encoding: 0x6a
base_offset: 0x100
Profile Descriptor List:
"Dialup Networking" (0x1103)
Version: 0x0100
Searching for DUN on XX:XX:XX:XX:XX:XX ...
Service Name: Dial-up Networking
Service Description: Dial-up Networking
Service Provider: Sony Ericsson
Service RecHandle: 0x10007
Service Class ID List:
"Dialup Networking" (0x1103)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 7
Language Base Attr List:
code_ISO639: 0x656e
encoding: 0x6a
base_offset: 0x100
Profile Descriptor List:
"Dialup Networking" (0x1103)
Version: 0x0100
rfcomm0 {
bind yes;
device XX:XX:XX:XX:XX:XX;
channel 7;
comment "P910i";
}
IrDA
Specyfikacja IrDA obejmuje dwie szybkości przesyłu danych: SIR (do 115200bps) i FIR (do 4Mbps). W pierwszym przypadku IrDA jest zwykłym portem szeregowym (nawet takim samodzielnego montażu). Można także kupić odpowiednie przejściówki z RS232C lub wpinane bezpośrednio w płytę główną. W drugim przypadku na płycie niezbędny jest odpowiedni chip.Uzyskanie połączenia poprzez IrDA jest stosunkowo proste: należy załadować moduł SIR lub FIR oraz uruchomić polecenie irattach.
Do przykładu wykorzystano telefon Nokia 6310i oraz notebooka wyposażonego w w IrDA FIR (ThinkPad 600, moduł nsc-ircc)
Konfiguracja jądra:
CONFIG_IRDA=m
CONFIG_IRLAN=m
CONFIG_IRNET=m
CONFIG_IRCOMM=m
# CONFIG_IRDA_ULTRA is not set
CONFIG_IRDA_CACHE_LAST_LSAP=y
CONFIG_IRDA_FAST_RR=y
# CONFIG_IRDA_DEBUG is not set
CONFIG_IRTTY_SIR=m
# CONFIG_DONGLE is not set
CONFIG_IRPORT_SIR=m
# CONFIG_DONGLE_OLD is not set
# CONFIG_USB_IRDA is not set
# CONFIG_SIGMATEL_FIR is not set
CONFIG_NSC_FIR=m
# CONFIG_WINBOND_FIR is not set
# CONFIG_TOSHIBA_FIR is not set
# CONFIG_SMC_IRCC_FIR is not set
# CONFIG_ALI_FIR is not set
# CONFIG_VLSI_FIR is not set
# CONFIG_VIA_FIR is not set
W pliku /etc/modules.conf (/etc/modprobe.d/*) powinny się znaleźć wpisy:
alias tty-ldisc-11 irtty
alias char-major-161 ircomm-tty
# aptitude install irda-utils
SIR
Aby skonfigurować interfejs IrDA w trybie SIR wystarczy podać port szeregowy. Jeżeli irda dołączona jest to portu ttyS1 to należy wydać polecenie:
# irattach /dev/ttyS1 none -s
FIR
Aby skonfigurować interfejs IrDA w trybie FIR należy załadować moduł sterownika danego chipa. W moim przypadku był to nsc-ircc:
# modprebe nsc_ircc
# irattach irda0 none -s
Należy pamiętać żeby sterownik FIR bezwzględnie załadować przed modułem obsługi portów szeregowych 8250. W przeciwnym przypadku IrDA zostanie zajęta przez zwykły port SIR i sterownik FIR nie będzie w stanie zainicjalizować chipa.
IrDA powinna być uruchomiona. Należy uaktywnić interfejs IrDA w telefonie a następnie przysunąć go na ok 10cm od interfejsu IrDA w notebooku. Jeżeli intefejs został uruchomiony i telefon został wykryty, to po wydaniu polecenia:
# cat /proc/net/irda/discovery
IrLMP: Discovery log:
nickname: Nokia 6310i, hint: 0xb125, saddr: 0xad550934, daddr: 0x0000f3ea
Na końcu można wykonać dowiązanie symboliczne:
# ln -s /dev/ircomm0 /dev/modem
# mknod /dev/ircomm0 c 161 0
Problemem może też być zbyt stara wersja firmware telefonu - niestety w tym przypadku należy udać się do serwisu i wgrać nowe firmware.
Należy równiez pamiętać, że w telefonach zwykle IrDA jest typu SIR, czyli 115200bps. Jeżeli telefon jest nowszej generacji i posiada np. EDGE, możemy zostać ograniczeni w transferze przez IrDĘ do 115200bps - w takim przypadku należy kupić kabel lub przejść na bluetooth'a.
RS232 / USB
W przypadku telefonów GSM zwykle istnieje także możliwość połączenia ich za pomocą odpowiedniego kabelka RS232C (np. Nokia 5110, 7110, 6310 itd.), za pomocą kabla USB (np. Nokia 6230(i)) lub kabla USB/RS (zwykła przejściówka z USB na RS232C). Jedyną konfiguracją jaką należy wykonać w systemie to skonfigurowanie portu szeregowego RS232C (ttySX) przy pomocy polecenia setserial lub portu USB (ttyACMX).Karty PCMCIA GPRS
Popularne ostatnio karty Sony Ericsson GC75, GC75e, GC85 czy BlueConnect są tak prawdę mówiąc zwykłymi modemami GSM widocznymi w systemie jako port szeregowy.Konfiguracja karty sprowadza się do włączenia w konfiguracji jądra obsługi portów szeregowych PCMCIA
Device Drivers --->
Character devices --->
Serial drivers --->
[*] 8250/16550 and compatible serial support
[M] 8250/16550 PCMCIA device support
Po włożeniu karty w logach powinna byś widoczna informacja o wykryciu następnego portu szeregowego, np:
ttyS3 at I/O 0x3f8 (irq = 3) is a 16550A
# setserial /dev/ttyS3 spd_vhi ustawia szybkość 115k zamiast 38.4k
# setserial /dev/ttyS3 spd_shi ustawia szybkość 230k zamiast 38.4k
# setserial /dev/ttyS3 spd_warp ustawia szybkość 460k zamiast 38.4k
Zwykle, aby można było nawiązać połączenie z modem GSM i wykonywać polecenia AT należy wydać do niego odpowiednie polecenia:
# minicom --noinit /dev/ttyS3
AT+CFUN=1,1
AT+CPIN=PIN
Po podaniu PINu należy odczekać ok 10 - 20 sekund, żeby terminal GSM zdążył zalogować się do sieci. W przypadku skryptów startowych można także dodać '\d' powodujące uśpienie demona pppd na sekundę. Przykładowy skrypt dla chat może wyglądać następująco:
# /etc/chatscripts/gprs
TIMEOUT 5
ECHO ON
ABORT '\nBUSY\r'
ABORT '\nERROR\r'
ABORT '\nNO ANSWER\r'
ABORT '\nNO CARRIER\r'
ABORT '\nNO DIALTONE\r'
ABORT '\nRINGING\r\n\r\nRINGING\r'
'' \rAT
TIMEOUT 30
OK 'AT+CFUN=1,1'
OK 'AT+CPIN="PIN"'
OK 'ATE1\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d'
OK 'AT+CGDCONT=1,"IP","www.plusgsm.pl","",0,0'
OK ATD*99***1#
CONNECT ""
Niekiedy warto dodać ATZ (zresetowanie modemu) przed ATE1.
Po poprawnym skonfigurowaniu karty należy wykonać (czysta kosmetyka)
# ln -s /dev/ttyS3 /dev/modem
Połączenie PPP
Połączenie pakietowe GPRS ma tą zaletę, że płaci się za ilość przesłanych danych a nie za czas połączenia. Operatorzy często udostępniają tez inny numer służący do połączeń internetowych; jednakże jest on "zwykłym" numerem, koszt naliczany jest za czas połączenia a prędkość tylko 9600bps. W przypadku GPRS szykość ograniczona jest do 56kbps (dla modemów GPRS klasy 10).W przpadku GPRS teoretycznie można zestawić połączenie i być online cały dzień. W praktyczne następuje dość często zerwanie lub zawieszenie połączenia.
Skrypty
Mając już działające i sprawdzone połączenie /dev/modem możemy napisać skrypty startowe do połączeniaMożna to wykonać przy pomocy pppconfig lub stworzyć je ręcznie:
# /etc/chatscripts/gprs
TIMEOUT 5
ECHO ON
ABORT '\nBUSY\r'
ABORT '\nERROR\r'
ABORT '\nNO ANSWER\r'
ABORT '\nNO CARRIER\r'
ABORT '\nNO DIALTONE\r'
ABORT '\nRINGING\r\n\r\nRINGING\r'
'' \rAT
TIMEOUT 30
OK ATZ
OK ATE1
OK 'AT+CGDCONT=1,"IP","www.plusgsm.pl","",0,0'
OK ATD*99***1#
CONNECT ""
Plus: (użytkownik: brak, hasło: brak): 'AT+CGDCONT=1,"IP","www.plusgsm.pl","",0,0'
Era: (użytkownik: erainternet, hasło: erainternet): 'AT+CGDCONT=1,"IP","erainternet","",0,0'
Heyah: (użytkownik: heyah, hasło: heyah): 'AT+CGDCONT=1,"IP","heyah.pl","",0,0'
Idea: (użytkownik: ppp, hasło: ppp): 'AT+CGDCONT=1,"IP","www.idea.pl","",0,0'
Użytkownika i hasło (o ile jest wymagane) należy umieścić w pliku /etc/ppp/pap-secrets, np:
ppp * ppp
OK ATD*99***1#
ATD*99[*APN[*Protocol[*CID]]]#
Niekiedy należy jeszcze dodać ATZ przed ATE1 w celu zresetowania modemu w telefonie.
# /etc/ppp/peers/gprs
/dev/modem
115200
connect '/usr/sbin/chat -v -f /etc/chatscripts/gprs'
noauth
defaultroute
debug
noipdefault
local
ipcp-accept-local
novj
novjccomp
lcp-echo-failure 4
lcp-echo-interval 65535
W zależności od operatora (rozłączanie się połączeń) konieczna może się okazać zmiana parametrów niektórych parametrów:
mtu 524
mru 524
nocrtscts
nocdtrcts
user "ppp"
Uruchomienie pppd
Zostaje tylko wykonanie połączenia. Na sposób debianowy jest to:
# pon gprs
# pppd
Jul 10 10:23:03 localhost pppd[6242]: pppd 2.4.3 started by root, uid 0
Jul 10 10:23:23 localhost chat[6246]: timeout set to 5 seconds
Jul 10 10:23:23 localhost chat[6246]: abort on (\nBUSY\r)
Jul 10 10:23:23 localhost chat[6246]: abort on (\nERROR\r)
Jul 10 10:23:23 localhost chat[6246]: abort on (\nNO ANSWER\r)
Jul 10 10:23:23 localhost chat[6246]: abort on (\nNO CARRIER\r)
Jul 10 10:23:23 localhost chat[6246]: abort on (\nNO DIALTONE\r)
Jul 10 10:23:23 localhost chat[6246]: abort on (\nRINGING\r\n\r\nRINGING\r)
Jul 10 10:23:23 localhost chat[6246]: send (^MAT^M)
Jul 10 10:23:23 localhost chat[6246]: timeout set to 12 seconds
Jul 10 10:23:23 localhost chat[6246]: expect (OK)
Jul 10 10:23:23 localhost chat[6246]: ^MAT^M^M
Jul 10 10:23:23 localhost chat[6246]: OK
Jul 10 10:23:23 localhost chat[6246]: -- got it
Jul 10 10:23:23 localhost chat[6246]: send (ATE1^M)
Jul 10 10:23:23 localhost chat[6246]: expect (OK)
Jul 10 10:23:23 localhost chat[6246]: ^M
Jul 10 10:23:23 localhost chat[6246]: ATE1^M^M
Jul 10 10:23:23 localhost chat[6246]: OK
Jul 10 10:23:23 localhost chat[6246]: -- got it
Jul 10 10:23:23 localhost chat[6246]: send (AT+CGDCONT=1,"IP","www.plusgsm.pl","",0,0^M)
Jul 10 10:23:24 localhost chat[6246]: expect (OK)
Jul 10 10:23:24 localhost chat[6246]: ^M
Jul 10 10:23:24 localhost chat[6246]: AT+CGDCONT=1,"IP","www.plusgsm.pl","",0,0^M^M
Jul 10 10:23:24 localhost chat[6246]: OK
Jul 10 10:23:24 localhost chat[6246]: -- got it
Jul 10 10:23:24 localhost chat[6246]: send (ATD*99***1#^M)
Jul 10 10:23:24 localhost chat[6246]: expect (CONNECT)
Jul 10 10:23:24 localhost chat[6246]: ^M
Jul 10 10:23:27 localhost chat[6246]: ATD*99***1#^M^M
Jul 10 10:23:27 localhost chat[6246]: CONNECT
Jul 10 10:23:27 localhost chat[6246]: -- got it
Jul 10 10:23:27 localhost chat[6246]: send (^M)
Jul 10 10:23:27 localhost pppd[6242]: Serial connection established.
Jul 10 10:23:27 localhost pppd[6242]: using channel 1
Jul 10 10:23:27 localhost pppd[6242]: Using interface ppp0
Jul 10 10:23:27 localhost pppd[6242]: Connect: ppp0 <--> /dev/modem
Jul 10 10:23:28 localhost pppd[6242]: sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xa0458d44> <pcomp> <accomp>]
Jul 10 10:23:28 localhost pppd[6242]: rcvd [LCP ConfRej id=0x1 <magic 0xa0458d44> <pcomp> <accomp>]
Jul 10 10:23:28 localhost pppd[6242]: sent [LCP ConfReq id=0x2 <asyncmap 0x0>]
Jul 10 10:23:28 localhost pppd[6242]: rcvd [LCP ConfAck id=0x2 <asyncmap 0x0>]
Jul 10 10:23:30 localhost pppd[6242]: rcvd [LCP ConfReq id=0x0 <auth pap> <mru 1500> <asyncmap 0xa0000>]
Jul 10 10:23:30 localhost pppd[6242]: sent [LCP ConfAck id=0x0 <auth pap> <mru 1500> <asyncmap 0xa0000>]
Jul 10 10:23:30 localhost pppd[6242]: sent [LCP EchoReq id=0x0 magic=0x0]
Jul 10 10:23:30 localhost pppd[6242]: sent [PAP AuthReq id=0x1 user="localhost" password=<hidden>]
Jul 10 10:23:30 localhost pppd[6242]: rcvd [LCP EchoRep id=0x0 00]
Jul 10 10:23:30 localhost pppd[6242]: lcp: received short Echo-Reply, length 1
Jul 10 10:23:30 localhost pppd[6242]: rcvd [PAP AuthAck id=0x1 ""]
Jul 10 10:23:30 localhost pppd[6242]: PAP authentication succeeded
Jul 10 10:23:30 localhost kernel: PPP BSD Compression module registered
Jul 10 10:23:30 localhost kernel: PPP Deflate Compression module registered
Jul 10 10:23:30 localhost pppd[6242]: sent [CCP ConfReq id=0x1 <deflate 15> <deflate(old#) 15> <bsd v1 15>]
Jul 10 10:23:30 localhost pppd[6242]: sent [IPCP ConfReq id=0x1 <addr 0.0.0.0>]
Jul 10 10:23:30 localhost pppd[6242]: rcvd [IPCP ConfReq id=0x0 <addr 10.6.6.6>]
Jul 10 10:23:30 localhost pppd[6242]: sent [IPCP ConfAck id=0x0 <addr 10.6.6.6>]
Jul 10 10:23:30 localhost pppd[6242]: rcvd [LCP ProtRej id=0x0 80 fd 01 01 00 0f 1a 04 78 00 18 04 78 00 15 03 2f]
Jul 10 10:23:30 localhost pppd[6242]: Protocol-Reject for 'Compression Control Protocol' (0x80fd) received
Jul 10 10:23:32 localhost pppd[6242]: rcvd [IPCP ConfNak id=0x1 <addr 172.17.66.153>]
Jul 10 10:23:32 localhost pppd[6242]: sent [IPCP ConfReq id=0x2 <addr 172.17.66.153>]
Jul 10 10:23:32 localhost pppd[6242]: rcvd [IPCP ConfAck id=0x2 <addr 172.17.66.153>]
Jul 10 10:23:32 localhost pppd[6242]: local IP address 172.17.66.153
Jul 10 10:23:32 localhost pppd[6242]: remote IP address 10.6.6.6
Jul 10 10:23:32 localhost pppd[6242]: Script /etc/ppp/ip-up started (pid 6276)
Jul 10 10:23:32 localhost pppd[6242]: Script /etc/ppp/ip-up finished (pid 6276), status = 0x0
Jeżeli wszystko działa to można usunąć opcje debug z ppp oraz -v z wywołania chat, będzie mniej informacji w logach.
Rozłączenie połączenia następuje po wywołaniu polecenia:
# poff gprs