O internecie komórkowym w linuksie słów kilka

Wszystko na temat internetu za pomocą sieci komórkowych pod systemem Linux.

Moderator: Moderatorzy

ODPOWIEDZ
boskar
Stały użytkownik forum
Posty: 68
Rejestracja: 2010-05-05, 10:24
Lokalizacja: Katowice

O internecie komórkowym w linuksie słów kilka

Post autor: boskar »

Analizując dział linuksowy na tutejszym forum stwierdziłem, że brakuje tutaj howto/faq wprowadzającego, jest kilka howto które wyjaśniają "jak uzyskać sieć" sposobem X, ale chyba żadne nie traktuje ogólnie co i jak.

Zacznijmy od początku - czyli od modemów/telefonów.
Prawdopodobnie każde urządzenie o charakterze modemu w Linuksie (hm, właśnie zacząłem się zastanawiać nad swoim modemem do neostrady, dobra, nie każde;) na pewnym etapie sprowadzi się do urządzenia o charakterze portu szeregowego, podobnie z resztą jak w Windowsie. (nie spotkałem tutaj czegoś analogicznego dla trybu NDIS, może dlatego że NDIS to standard sterownika charakterystyczny dla DOS/Windows - w zależności od wersji NDIS. Inną sprawą jest ndiswrapper, sterownik pozwalający użyć sterowników NDIS z Windowsa pod Linuksem, ale w kontekście modemów komórkowych to bez znaczenia).

Używamy zatem "trybu RAS".
W Windowsie porty komunikacyjne są numerowane jako COM1, COM2, jeżeli "do któregoś przyłączony jest modem" (co jest określeniem wirtualnym, bo i tak to tylko struktura logiczna, fizycznie to najczęściej i tak leci po USB ;) to port COM jest ukrywany, i widoczne jest urządzenie modemu pracujące na tym porcie.

W Linuksie sprzęt jest pogrupowany w zależności od typu, a ściślej - od sterownika jakiego używa dane urządzenie. Urządzenia siedzą w /dev, porty komunikacyjne to /dev/ttyCOŚTAM . /dev/tty0, /dev/tty1, /dev/tty2 itd to urządzenia odpowiadające konsolom, terminalom linuksowym, nie będą nas tutaj za bardzo interesować.

/dev/ttyS0 jest już bardziej interesujące - S to literka sugerująca że to rzeczywisty port komunikacyjny, wiecie, taki oldschoolowy, 9 pinowy ;) Może się przydać jak chcecie wykorzystać archaiczną komórkę jako modem, i macie do niego kabel COM, względnie kupiliście na allegro ciekawy modem podpinany pod COM. (Chyba kiedyś takie widywałem, siemensy czy coś... raczej tylko GPRS, o 3G zapomnijcie, ale mają ciekawe możliwości ;)
/dev/ttyS1,/dev/ttySn to oczywiście kolejne fizyczne porty komunikacyjne w systemie.
Za te porty odpowiada moduł jądra serio_raw. (chyba ;)


/dev/ttyUSB0, i /dev/ttyUSB1 i ogólnie /dev/ttyUSBn, to porty które będą nas interesować chyba najczęściej - strzelam że większość modemów jest podpinana przez USB i obsługiwana przez moduł usbserial - czyli moduł zaprojektowany żeby urządzenia mające działać jako porty szeregowe a podpinane przez USB były widziane jako porty szeregowe ;)
Należy w tym miejscu wspomnieć, że samo urządzenie jako urządzenie o charakterze USB również widnieje w /dev/ - w zależności od wersji jadra pewnie gdzieś w /dev/bus/usb/, ale to nie ma dla nas prawdopodobnie żadnego znaczenia.

Dosyć często można utknąć na etapie "braku urządzenia /dev/ttyUSBn", najczęściej z powodu funkcji ZeroCD, która w linuksie przysparza samych problemów, bo zawartość tego co tam dają i tak jest dla linuksa bezużyteczna. Do tego jak rozwiązać ten problem jeszcze wrócimy, bo metod jest kilka.
Domyślacie się pewnie, że takie urządzenia jak Huawei E160 będą działały właśnie za pośrednictwem tego sterownika - na dodatek portów powinno być tyle ile w windowsie - w Windowsie macie HUAWEI Mobile Connect - 3G PC UI Interface i HUAWEI Mobile Connect - 3G Application Interface, to tu będzie /dev/ttyUSB0 i /dev/ttyUSB1.

/dev/ttyHS0, /dev/ttyHSn - to chyba moje ulubione urządzenia, wszak korzystam z Optiona. Korzystają z modułu jądra hso, w moim GTM380 obecnie jeden modem daje aż 5 urządzeń, w tym jedno z nich daje sygnał GPS ;)
To co robią poszczególne porty jednak sobie podaruję, szukajcie opisów dla windowsa.

Łażąc chwilę po dziale dla linuksa można odkryć, że plik urządzenia może być jeszcze inny - dajmy na to /dev/noz0 i /dev/noz1 itd - dla jakichśtam modemów PCMCIA. Wszystko zależy od modułu jądra jakiego używamy.

W tym miejscu wrócę do problemów z ZeroCD - jak wiecie modemy dysponujące tą funkcją domyślnie po podpięciu zgłaszają się jako urządzenia klasy USB Mass Storage typu Napęd CD, i dopiero po otrzymaniu kodu sterującego ujawniają swoje prawdziwe zastosowanie odkrywając porty komunikacyjne.
Oczywiście w linuksie nie ma co liczyć na to, że oprogramowanie producenta modemu zrobi to tak jak powinno.
Obecnie najczęściej wysłaniem tego kodu sterującego zajmuje się udev - usługa która jest odpowiedzialna za to, żeby odpowiednie pliki urządzeń w /dev pojawiały się i znikały wtedy kiedy urządzenie jest podpinane i odpinane, ładując moduły jądra, kojarząc je z urządzeniami itd. Rozszerzono tą usługę o funkcję wysyłania takich kodów sterujących,czy na przykład firmware'ów do windrukarek czy modemów z neostrady ;)

Czasem jednak zdarzy się tak, że udev nie zadziała jak powinien - mamy starego udeva, albo w ogóle mamy dystrybucję która go nie używa, albo coś nie zadziała. Wtedy z pomocą przychodzą nam programy takie jak usb-modeswitch - ich jedyną funkcją jest wysyłanie takich właśnie kodów sterujących do modemów. Niegdyś była to jedyna opcja. Jak to ugryźć - szukajcie. Był jeszcze jakiś, jego nazwa gdzieś mi się tu przewinęła w tym dziale.
A, jeszcze jedną możliwością jest chyba skojarzenie urządzenia ze sterownikiem "na chama" poprzez użycie komendy modprobe <nazwa modułu> <jakiśtam identyfikator urządzenia> czy jakoś tak. Nie polecam.

jako przykład można podać rozwiązanie stąd: http://www.bez-kabli.pl/viewtopic.php?t=11239

Kod: Zaznacz cały

modprobe usbserial vendor=0xaf0 product=0x6971
Czyli ładujemy moduł jądra usbserial, przypisując go do urządzenia o VID (VendorID) 0af0 i PID (ProductID) 6971 (0x to przedrostek liczb szesnastkowych).
VID i PID można <font color="#FF00FF"><b>»»wziąć««</b></font> z programu lsusb.

Jeśli chcemy na sztywno przypisać moduł do urządzenia to faktycznie należałoby dodać do /etc/modules wpis

Kod: Zaznacz cały

usbserial vendor=0xaf0 product=0x6971
Tak jak mówiłem, rozwiązanie to nie jest zbyt eleganckie, jednak czasem to najprostsze wyjście.

Ale idźmy dalej - wszak wszystko co wyżej napisałem powinno wydarzyć się w czasie 1/10 sekundy po podpięciu modemu :D

Jako że używamy trybu odpowiadającego trybowi RAS, bezwzględnie potrzebujemy takiego wynalazku jakim jest PPP. Za połączenia wg Point to Point Protocol w linuksie odpowiada program/usługa pppd i moduł jądra ppp ( i inne z nim związane - polecam lsmod | grep ppp).
W większości wypadków jednak nie obchodzi nas że istnieje moduł ppp i pppd, bowiem jesteśmy już nieco ucywilizowani, i używamy różnego rodzaju nakładek na program pppd - jest ich dużo, i w różnych wypadkach różnie się sprawdzą. Generalnie jednak wszystkie robią to samo -> doprowadzają do wywołania pppd z odpowiednimi parametrami, co możemy oczywiście zrobić całkowicie ręcznie, jest to jednak niezbyt wygodne.

Można jednak na tym forum spotkać również rozwiązania niskopoziomowe bazujące właśnie na ustawieniach pppd. Poznacie je po tym, że zaleca się edycję plików /etc/ppp/, a w szczególności zawartość /etc/ppp/peers/, co można by porównać do zawartości folderu Połączenia sieciowe (ale tylko modemowe) z Windowsa. Można ich tam sobie stworzyć dużo, z różnymi configami, itd.
Jeżeli chcielibyśmy tak na próbę wywołać jakieś połączenie to możemy zrobić pppd call <nazwa pliku z /etc/ppp/peers/>, tylko że wtedy sesja pppd zostanie podpięta do konsoli. W każdym razie generalnie większość programów sprowadza się do tego żeby zrobić to za nas.

Skutkiem wywołania pppd będzie nawiązanie połączenia, co objawi się tym, że poleceniem ifconfig (jako root... generalnie większość rzeczy tutaj opisanych, zwłaszcza dot. pppd czy modułów jądra należy wykonywać jako root) ujrzymy połączenie typu Point-to-Point najczęściej nazwane ppp0. (i tutaj przyszła refleksja - u mnie na Optionie jest to hso0, muszę jeszcze looknąć jak to tam jest). Generalnie ethN to połączenia kablowe ethernetowe, wlanN, wifiN, raN albo inne syfy to WiFi, choć mogą tez wisieć pod ethN, lo to loopback, itd. Jakoś się połapiecie które połączenie jest wasze, modemowe.

Rozwińmy teraz troszkę to co w plikach w /etc/ppp/peers/.
Pozwolę sobie wykorzystać przyklejone howto: http://www.bez-kabli.pl/viewtopic.php?t=11239

W tym howto autorzy zeszli jeszcze niżej - napisali (a pewnie przerobili jakieśtam znalezione w necie ;) skrypty nawiązujące i rozłączające połączenie, i wykonują je z poziomu pppd za pośrednictwem /usr/sbin/chat - skrypty są w osobnych plikach, które sugeruje się zapisać w /etc/ppp, ale mogłyby sobie leżeć gdziekolwiek.

Generalnie wersja z użyciem bezpośrednio pppd powinna być używana tylko jeżeli mamy
a) dobre howto krok po kroku dla naszego urządzenia/łącza
b) nic innego nie działa.
c) lubimy to. ;D (zaśmierdziało facebookiem).



Zostawmy już to pppd na chwilę, niech coś je wywoła za nas, możliwości jest wiele.
Opcją wartą uwagi w tym miejscu jest wvdial - programik o sporych możliwościach, daje sobie radę chyba ze wszystkim. Często polecany na tym forum, generalnie można zmieścić wszystkie ustawienia w jednym pliku tekstowym i on już za nas zrobi wszystko.
Czyli jak już mamy odpowiedni plik konfiguracyjny to robimy wvdial w konsoli i nas łączy. Czasem wvdial wymaga parametru będącego nazwą połączenia. Po więcej odsyłam do szukaczki forumowej i google'a.

Jego zalety to, to że nie wymaga niczego poza pppd i istniejącym urządzeniem modemowym, jest samodzielny, działa w trybie tekstowym, więc nadaje się na urządzenia robiące za routery, gdzie nie ma środowiska graficznego.

A, nie byłbym debianowcem, gdybym nie wspomniał o pliku /etc/network/interfaces, obecnym w debianie i służącym konfiguracji sieci. Plik ma naprawdę ogromne możliwości, ale dla zastosowań ppp (a takie nas tutaj interesują) wystarczy że będzie zawierał

Kod: Zaznacz cały

auto ppp0
iface ppp0 inet ppp
	provider <nazwa pliku z /etc/ppp/peers/>
	name Nasz dostawca
Spowoduje to automatyczne nawiązanie połączenia ppp0 poprzez wywołanie pppd <nazwa pliku z /etc/ppp/peers/> i utrzymanie tego połączenia w tle (jeśli nie chcemy automatycznego nawiązywania należy wywalić linijkę auto ppp0)
Połączenia nawiązane poprzez ten plik obsługuje się komendami ifdown <nazwa interfejsu> oraz ifup <nazwa interfejsu>, czyli dajmy na to ifup ppp0.

Uwaga, można tu wpaść w pewną pułapkę - nazewnictwo z /etc/network/interfaces NIE MUSI pokrywać się z tym z ifconfig. Lepiej więc nadawać ładne nazwy (ppp0) i się ich trzymać.

Generalnie /etc/network/interfaces jest raczej rozwiązaniem pozwalającym nam na ucywilizowanie tego co osiągnęliśmy pracując bezpośrednio z pppd.


Idźmy dalej, czas już na rozwiązania łatwe "lekkie" (choć w gruncie rzeczy ciężkie dla systemu) i przyjemne, czyli graficzne.

Słowo klucz - NetworkManager. Jest to stosunkowo młode rozwiązanie, które powstało po to, żeby w jakiś sposób ustandaryzować bajzel jaki powstał w obsłudze WiFi w linuksie - moim zdaniem rozwiązanie to jest obleśne, obrzydliwe, okropne, zasobożerne, idiotyczne, itd, ale ma tą zaletę, że działa, i jest standardowe.

Od jakiejśtam NetworkManager wersji obsługuje połączenia pakietowe - na jego potrzeby powstała nawet baza providerów i parametrów połączeń (dla gsm i cdma - więc pewnie cdma też obsługuje ;) -> http://live.gnome.org/NetworkManager/Mo ... eProviders

NetworkManager najczęściej wpieprza się do naszego systemu przy instalacji, wraz z Gnomem, w wielu dystrybucjach, które uważam za uszkodzone, nie da się go wywalić całkowicie, co najwyżej wyłączyć. Najczęściej obsługuje się go klikając "w ikonkę sieci w trayu". Istnieją odpowiednie frontendy dla Gnome'a i KDE. Generalnie ma to do siebie, że jak nic nie nawaliło na poziomie udeva (czy tam, pożal się boże, devkita) to NM wykryje modem, czy komórkę podpiętą kabelkiem, i klikając dalej dalej dalej i wybierając ISP z listy/wpisując ręcznie (właśnie pragnę uzupełnić bazę polskich ISP) nawiążemy połączenie.

jest także tekstowy klient NetworkManagera, cnetworkmanager, jednak ten program to porażka - czasem jednak się przydaje. Warto wspomnieć że NM zrywa połączenie wraz z wylogowaniem się (domyślnie w debianie).

W tym miejscu rozpocznę wywód na temat programów o których nie mam pojęcia.
Te programy to graficzny HSOConnect, tekstowy hsolink - jak mniemam zastępują funkcje NM, należy zatem zadbać o to żeby wcześniej NM wyłączyć - no i oczywiście hso w nazwie jasno daje do zrozumienia że programy te tyczą modemów obsługiwanych sterownikiem hso - czyli Optionów.

Są też programy działające niejako podobnie do ifdown && ifup z /etc/network/interfaces, omijające NetworkManagera a nawiązujące połączenie ppp. Szczerze - odpuście je sobie. Najczęściej powstały dla modemów analogowych i niewiele wam dadzą. Są to kppp, gnome-ppp i inne.

Chwilowo brakło mi pomysłów co jeszcze byłoby istotne - czekam na sugestie.
Tak, wiem, że przydałoby się jakieś formatowanie - niech każdy czuje się upoważniony je wprowadzić ;)
Ostatnio zmieniony 2010-07-22, 20:48 przez boskar, łącznie zmieniany 1 raz.
zDaleKi
Stary bywalec bezprzewodowy
Posty: 11508
Rejestracja: 2005-10-12, 11:18
Lokalizacja: Wrocław

Re: O internecie komórkowym w linuksie słów kilka

Post autor: zDaleKi »

boskar pisze:Analizując dział linuksowy na tutejszym forum stwierdziłem, że brakuje tutaj howto/faq wprowadzającego, jest kilka howto które wyjaśniają "jak uzyskać sieć" sposobem X, ale chyba żadne nie traktuje ogólnie co i jak.
[...]
To be continued. Soon.
Dziekuje bardzo w imieniu spolecznosci forum. :ok:
Pozdr, (R) BliSki. (tm)
Pytania dotyczące kwestii technicznych tylko na forum. Pamiętaj PW to nie helpdesk.
Awatar użytkownika
Patryk
Guru bezprzewodowy
Posty: 6692
Rejestracja: 2007-09-12, 21:16
Lokalizacja: Z dziczy

Re: O internecie komórkowym w linuksie słów kilka

Post autor: Patryk »

boskar pisze:Był jeszcze jakiś
huaweiaktbbo
boskar
Stały użytkownik forum
Posty: 68
Rejestracja: 2010-05-05, 10:24
Lokalizacja: Katowice

Re: O internecie komórkowym w linuksie słów kilka

Post autor: boskar »

huaweiaktbbo
Chyba chodziło mi o jeszcze inny, w każdym razie najwyraźniej jest tego od groma. ;)

//edit - rezero i ozerocdoff ;)
Dziekuje bardzo w imieniu spolecznosci forum.
Mam nadzieję, że ktoś to w ogóle przeczyta ;)
boskar
Stały użytkownik forum
Posty: 68
Rejestracja: 2010-05-05, 10:24
Lokalizacja: Katowice

Re: O internecie komórkowym w linuksie słów kilka

Post autor: boskar »

Trochę wody w Wiśle upłynęło - czas na poprawki.

Tryb analogiczny do trybu NDIS w Linuksie jednak istnieje - dowodem na to jest mój własny działający Option - Moduł jądra hso poza tym że obsługuje urządzenia klasy tty to daje także urządzenie klasy net, które widnieje przyzwoicie w ifconfig, a także w /sys/bus/usb/devices/itd

Anatomii procesu nawiązania połączenia w tym trybie jeszcze nie rozgryzłem.


Teraz parę słów więcej na temat NetworkManagera i podystemu sieci w kontekście zaleceń freedesktop.org

Obecnie z naszego punktu widzenia sprawa wygląda tak - od najniższej warstwy
1) Urządzenie fizyczne
2) Sterownik
3) ModemManager
4) NetworkManager
5) Applet NetworkManagera (ta ikonka koło zegara).

Każde z wymienionych jest w dużej mierze niezależne.

ModemManager komunikuje się z urządzeniem głównie za pomocą portów komunikacyjnych opisanych szczegółowo na początku wątku, obsługuje także pluginy specyficzne dla danych urządzeń pozwalające na obsługę na przykład trybu urządzenia sieciowego a nie modemowego (jak w hso).

Między ModemManagerem a NetworkManagerem komunikacja następuje poprzez dbus, tak samo dzieje się między appletem NM a samym NM. (Warto tutaj wspomnieć, że cnetworkmanager o którym wspominałem jest raczej właśnie konsolowym substytutem appletu NM, a nie samego NM).

Dbus jest otwarty i ustandaryzowany, nic nie stoi na przeszkodzie żeby napisać własne programy korzystające z ModemManagera - przykład dostępny tutaj: http://www.bez-kabli.pl/viewtopic.php?t=30587 .

Poprzez dbus możemy obejść bezpośrednie połączenie z urządzeniem, nie będzie wtedy również żadnego konfliktu z NetworkManagerem - programy mogą równocześnie korzystać w ramach jednej szyny z jednego zasobu.
Awatar użytkownika
ra-v
Mistrz bezprzewodowy
Posty: 1529
Rejestracja: 2009-11-08, 22:59
Lokalizacja: Fryzjer City

Re: O internecie komórkowym w linuksie słów kilka

Post autor: ra-v »

NetworkManager najczęściej wpieprza się do naszego systemu przy instalacji, wraz z Gnomem, w wielu dystrybucjach, które uważam za uszkodzone, nie da się go wywalić całkowicie, co najwyżej wyłączyć.
U mnie to chodzi od 2 lat, kiedyś kombinowałem jeszcze z wvdial i pppd. Na ostatnich 3 dystrybucjach kończyło się to na klikaniu 4-5x przycisku dalej, 1x wybór operatora (+1x w moim przypadku innego APN niż standardowy). Potem "Połącz" i już chodzi. Kartę SD do 4GB włożoną do modemu też widzi bez problemu (już nawet raz odzyskiwałem dane z SD).

Podłączyłem Nokie E50 i Samsunga i5800 to wykrył bez problemu modem. Na LG Cookie jeszcze nie próbowałem.

W openSUSE można przełączyć zarządzenia siecią z NM na ifup.

W tym miejscu wrócę do problemów z ZeroCD - jak wiecie modemy dysponujące tą funkcją domyślnie po podpięciu zgłaszają się jako urządzenia klasy USB Mass Storage typu Napęd CD, i dopiero po otrzymaniu kodu sterującego ujawniają swoje prawdziwe zastosowanie odkrywając porty komunikacyjne.
Głównie usb_modeswitch odpowiada za ZeroCD w modemach USB.




Z innych sposobów łączenia dobry jest KPPP (KDE), KNetworkManager (to chyba nakładka na NM dla KDE, ale głowy nie dam) oraz Global3G (kiedyś był płatny). Pewnie można próbwać łączyć się minicom-em ale to chyba dla masochistów którym pppd nie wystarcza.
Internet 70GB/nolimit: Huawei E3372s-153+TP-LINK MR3420 v2
Telefon: Moto G 1gen / Lumia 625 / iPhone 4 / Nokia 6310i
boskar
Stały użytkownik forum
Posty: 68
Rejestracja: 2010-05-05, 10:24
Lokalizacja: Katowice

Re: O internecie komórkowym w linuksie słów kilka

Post autor: boskar »

Nie twierdzę że NM nie działa - przez ten rok jakoś się do niego przekonałem, choć nadal mam go tylko na laptopie.
I faktycznie wykrywa dużo sprzętu. ;)
Moja niechęć do automatycznego instalowania NM wynikła głównie z tego, że używam przede wszystkim jednak komputerów stacjonarnych które raczej są w jednej sieci i to kablowej - stąd uważam że powinien być opcjonalny.

a usb_modeswitch w obecnym kształcie jest właściwie biblioteką udeva - polecam zajrzeć do /lib/udev/rules.d/**-usb_modeswitch.rules.

Oczywiście można wywoływać go ręcznie, gdyby udev zawiódł, sam usb-modeswitch raczej nie zawiedzie ;)

Połączenie czystym minicomem jest o tyle niemożliwe, o ile nasz modem (a właściwie jego sterownik) nie obsługuje urządzenia logicznego typu 'net' (analogicznie do NDIS). W każdym innym wypadku na jakimś poziomie pppd jest wymagane - po prostu odpowiada za stworzenie interfejsu pppX.

KNetworkManager tym samym co NetworkManager applet w gnome - czyli nakładką na właściwe usługi NM.
Awatar użytkownika
ra-v
Mistrz bezprzewodowy
Posty: 1529
Rejestracja: 2009-11-08, 22:59
Lokalizacja: Fryzjer City

Re: O internecie komórkowym w linuksie słów kilka

Post autor: ra-v »

To ja po dłuższym czasie dorzucę też słów kilka.

Modemy na nowych Linux'ach

Od 2010 roku się dużo zmieniło pod względem obsługi modemu w Linux. Generalnie każdy nowy GNU/Linux ma wbudowane sterowniki do wielu modemów, ma usb_bodeswitch, posiada programy do łączenia się z internetem przez GUI. Dość dużo urządzeń, również telefonów, zostaje rozpoznanych i działa jako modem bez większego problemu.

W standardowym Linux zwykle po włożeniu modemu po czasie do 60 sekund albo wyskakuje przewodnik dodawania modemu, czasem jednak trzeba ręcznie go uruchomić (czyli dodać nowe połączenie).
W GNOME i KDE jesteśmy pytani, które urządzenie będziemy konfigurować (można wszystkie), w jakim kraju jesteśmy, w jakiej sieci jesteśmy, jaki rodzaj APN wybieramy (np. w PLUS czy mamy usługę zewnętrznego IP lub Optimizer), PIN i na tym się nasze problemy generalnie powinny skończyć.
Prawda, że nie trzeba za dużo wiedzieć?

Niestety rzeczywistość pokazała, że nie zawsze to działa na zasadzie dalej, dalej, dalej.

Przyjęty standard a openSUSE 12.2

Szczerze to ja nie wiem czy da się w "klikalny" sposób ustawić połączenie modemowe przez to coś co jest standardowo (bodajże ifup), w każdym razie mnie się nie udało.
Warto więc przełączyć sposób kontroli połączeń sieciowych na Network Manager, co można zrobić już podczas instalacji.

Nie wiem czemu w openSUSE tak jest, ale po podłączeniu modemu system korzysta m.in. ze sterownika qmi_wwan (standardowo w starszych linuxach to usb_wwan), który pokazywał u mnie modem pod wwan0 zamiast ppp0. NetworkManager miał z tym problemy. Wystarczy dodać sterownik qmi_wwan do tzw. czarnej listy i wszystko wróci do normy.

Jak to najprościej zrobić? Poniższych poleceniem będąc na uprawnieniach administratora

Kod: Zaznacz cały

echo "blacklist qmi_wwan" >> /etc/modprobe.d/99-local.conf
Potem tylko restart systemu i można próbować robić to ponownie.



Testowanie szybkości ruchu sieciowego
  • iftop - uniwersalne narzędzie do Linuxa, monitorujące ruch na każdym urządzeniu, wraz źrodłami i celami tego ruchu. Ruszy wszędzie, nie wymaga GUI.
  • Network Managera - jest to narządzie do łączenia się z Internetem, przy okazji monitoruje system w GNOME 2 i KDE 4 (*). Niestety nie działa w GNOME 3, w tym środowisku zubożyli programy na maxa - ładnie wygląda, do niczego się nie przydaje.
  • NetSpeed Applet. - przede wszystkim dla GNOME 2, dla GNOME 3 również jest, ale u mnie nie działa
  • Network Monitor / Monitor sieci - plasmoid (widżet) dla KDE 4 (*)
(*) - u mnie jest jakiś bug, dla ppp0 działa tylko gdy podczas startu KDE połączenie już jest


Ktoś coś dorzuci od siebie, np. jakieś doświadczenia z Ubuntu, Fedory, Minta, Debiana? Może coś w innym środowisku niż GNOME i KDE?
Ostatnio zmieniony 2013-01-27, 20:56 przez ra-v, łącznie zmieniany 1 raz.
Internet 70GB/nolimit: Huawei E3372s-153+TP-LINK MR3420 v2
Telefon: Moto G 1gen / Lumia 625 / iPhone 4 / Nokia 6310i
berni
Specjalista bezprzewodowy-senior
Posty: 496
Rejestracja: 2009-06-14, 22:21
Lokalizacja: PL

Re: O internecie komórkowym w linuksie słów kilka

Post autor: berni »

boskar pisze:Między ModemManagerem a NetworkManagerem komunikacja następuje poprzez dbus, tak samo dzieje się między appletem NM a samym NM. (Warto tutaj wspomnieć, że cnetworkmanager o którym wspominałem jest raczej właśnie konsolowym substytutem appletu NM, a nie samego NM).

Dbus jest otwarty i ustandaryzowany, nic nie stoi na przeszkodzie żeby napisać własne programy korzystające z ModemManagera
Czy w najnowszych wersjach NetworkManagera są zaimplementowane nowe funkcje, które po uaktywnieniu dodawałyby obsługę nowych funkcji modemów GSM? W openSUSE 12.3 z Gnome 3.6.2 ustawionym w trybie "Forced Fallback Mode" po podłączeniu iCONa 711 i ustanawianiu połączenia z netem poprzez NM w logach systemowych pojawiły się takie komunikaty:

Kod: Zaznacz cały

2013-04-04T21:03:45.270928+02:00 linux-zbgz dbus-daemon[387]: modem-manager[510]: <info>  (ttyUSB1): using PDU mode for SMS
2013-04-04T21:03:45.271469+02:00 linux-zbgz modem-manager[510]: <info>  (ttyUSB1): using PDU mode for SMS
2013-04-04T21:03:46.267952+02:00 linux-zbgz dbus-daemon[387]: modem-manager[510]: <info>  Modem /org/freedesktop/ModemManager/Modems/0: state changed (enabling -> enabled)
Może już jest obsługa SMS-ów, tylko jak ją uaktywnić?
Awatar użytkownika
ra-v
Mistrz bezprzewodowy
Posty: 1529
Rejestracja: 2009-11-08, 22:59
Lokalizacja: Fryzjer City

Re: O internecie komórkowym w linuksie słów kilka

Post autor: ra-v »

Internet 70GB/nolimit: Huawei E3372s-153+TP-LINK MR3420 v2
Telefon: Moto G 1gen / Lumia 625 / iPhone 4 / Nokia 6310i
boskar
Stały użytkownik forum
Posty: 68
Rejestracja: 2010-05-05, 10:24
Lokalizacja: Katowice

Re: O internecie komórkowym w linuksie słów kilka

Post autor: boskar »

Pierwsze fragmenty kodu dotyczące obsługi smsów w ModemManagerze pochodzą z 23 marca 2009 roku, i te funkcje są cały czas rozwijane.

Można więc spokojnie przyjąć, że w podstawowym zakresie ta funkcja działa - pytanie który program to obsługuje. Obstawiałbym Empathy z gnome3, ale jak dla mnie używanie tego to masochizm.

Własnie przetestowałem na Debianie sid - obecnie da się odebrać smsa poprzez network manager i programem D-feet do zabawy mechanizmami d-bus. Wysłać już mi się nie udało, chwilowo, na GTM382.


berni, co rozumiesz przez "obsługę nowych funkcji modemów GSM"? To te modemy mają jakieś nowe funkcje? ;) Natomiast Twój modem-manager ewidentnie krzyczy, że zamierza obsługiwać smsy.


Odnosząc się jeszcze do tego co napisał ra-v jakiś czas temu - to jaki sterownik dostanie które urządzenie obecnie zależy głównie od udeva bądź devkita. Blacklistowanie jest skuteczne, jednak w regułach udeva można to zrobić bardziej elegancko ;)
berni
Specjalista bezprzewodowy-senior
Posty: 496
Rejestracja: 2009-06-14, 22:21
Lokalizacja: PL

Re: O internecie komórkowym w linuksie słów kilka

Post autor: berni »

boskar pisze:berni, co rozumiesz przez "obsługę nowych funkcji modemów GSM"? To te modemy mają jakieś nowe funkcje?
Np. przałączenie w UMTS na pasmo 900 MHz, łączenie z netem poprzez LTE o ile dany modem obsługuje te funkcje.
W Susku 12.3 ten NM sprawia kłopoty z GlobeSurferami. Po podłączeniu, po odczekaniu kilkunastu sekund diodki w tych GS zaczynają b. szybko migotać i nie można ustanowić połączenia poprzez NM. Tych problemów nie ma gdy w YaST ustawię połączenie sieciowe poprzez ifup, wtedy bezproblemowo można się połączyć z netem przez np. wvdial.
Co do obsługi SMS-ów to przydała by się w prepaidzie Blueconnect Starter. Tutaj aby sprawdzić ile zostało bonusu trzeba się zalogować na iblueconnect podając swój nr simki. Operator po zweryfikowaniu nr wysyła SMS-em jednorazowe hasło, które jest wymagane do zalogowania i tu właśnie jest potrzebna obsługa SMS-ów w trakcie aktywnego połączenia. W Linuksie loguję się do iblueconnecta poprzez linuksową wersję MP.
ra-v pisze:Można to robić już dawno w Wammu.
Jeśli ten program też to potrafi (ważne aby cały czas było aktywne połączenie z netem) to super :ok:
boskar pisze:Tryb analogiczny do trybu NDIS w Linuksie jednak istnieje - dowodem na to jest mój własny działający Option - Moduł jądra hso poza tym że obsługuje urządzenia klasy tty to daje także urządzenie klasy net, które widnieje przyzwoicie w ifconfig, a także w /sys/bus/usb/devices/itd

Anatomii procesu nawiązania połączenia w tym trybie jeszcze nie rozgryzłem.
Jak znajdę swoje notatki dotyczące uruchomienia iCONa 505 w Linuksie to opiszę je.
Awatar użytkownika
ra-v
Mistrz bezprzewodowy
Posty: 1529
Rejestracja: 2009-11-08, 22:59
Lokalizacja: Fryzjer City

Re: O internecie komórkowym w linuksie słów kilka

Post autor: ra-v »

ważne aby cały czas było aktywne połączenie z netem
Niestety trzeba się rozłączyć, przynajmniej jeśli jestem połączony przy pomocy Network Managera. Może gammu to potrafi, to taki wammu w konsoli.
Internet 70GB/nolimit: Huawei E3372s-153+TP-LINK MR3420 v2
Telefon: Moto G 1gen / Lumia 625 / iPhone 4 / Nokia 6310i
berni
Specjalista bezprzewodowy-senior
Posty: 496
Rejestracja: 2009-06-14, 22:21
Lokalizacja: PL

Re: O internecie komórkowym w linuksie słów kilka

Post autor: berni »

Połączenie z netem w NDIS poprzez iCONa 505 i hso na podstawie tego opisu
http://www.shapeshifter.se/code/hso/
praca w dwóch konsolach zalogowanych na koncie roota:
1 konsola: wysyłanie komend AT do portu Control (/dev/ttyHS1) poprzez picocom

Kod: Zaznacz cały

:~ # picocom /dev/ttyHS1
picocom v1.6
...
Terminal ready
at+cgdcont=1,"IP","internet"
OK
at_owancall=1,1,1
OK

_OWANCALL: 1,2

_OWANCALL: 1,1
at_owandata=1
_OWANDATA: 1, 46.112.35.92, 0.0.0.0, 89.108.195.21, 89.108.202.21, 0.0.0.0, 0.0.0.0, 144000

OK
2 konsola

Kod: Zaznacz cały

:~ # ifconfig hso0 46.112.35.92 netmask 255.255.255.255 up
:~ # route add default dev hso0
:~ # echo "nameserver 89.108.195.21" >> /etc/resolv.conf
:~ # echo "nameserver 89.108.202.21" >> /etc/resolv.conf
jest połączenie z netem.
Rozłączenie:
1 konsola:

Kod: Zaznacz cały

at_owancall=1,0,0
OK

Thanks for using picocom
2 konsola:

Kod: Zaznacz cały

:~ # ifconfig hso0 down
Awatar użytkownika
Pijo
Stary wyga bezprzewodowy
Posty: 677
Rejestracja: 2009-07-06, 12:16
Lokalizacja: Podlasie/Mazowsze

Re: O internecie komórkowym w linuksie słów kilka

Post autor: Pijo »

Z odbiorem i wysyłaniem SMS w trakcie połączenia przez wvdial radzi sobie Modem Manager GUI (działa na Huwaei E3131) - http://linuxonly.ru/cms/page.php?7
Odinstalowałem nawet linuksowego MP, bo MMGui obsługuje też kody USSD, a to było mi najbardziej potrzebne. Gdyby tylko obsługiwał wybór trybu pracy sieci 2G/3G byłoby super. Nie wiem jak współpracuje z innymi modemami.
berni
Specjalista bezprzewodowy-senior
Posty: 496
Rejestracja: 2009-06-14, 22:21
Lokalizacja: PL

Re: O internecie komórkowym w linuksie słów kilka

Post autor: berni »

Pijo pisze:Odinstalowałem nawet linuksowego MP, bo MMGui obsługuje też kody USSD, a to było mi najbardziej potrzebne.
Linuksowy Mobile Partner też obsługuje kody USSD - znalazłeś i opisałeś sposób aby je uaktywnić, u mnie sprawują się bez zarzutu.
W którym Linuksie instalowałeś ten Modem Manager GUI i w jaki sposób, czy z pakietu czy też ze źródła? Co do połączenia poprzez wvdial to nie wszystkie modemy to obsługują np. iCON 225, którego miałem z T-Mobile DE, był tylko w trybie k.siec. i nie łączył poprzez ppp. Najnowszy Huawei E3276 jak wynika z opisów forumowiczów też już nie posiada portu modemowego i w tradycyjny sposób np. wvdialem nie uruchomi się go już w Linuksie. U mnie w Susku 12.2 gdzie mam zainstalowany MP Huaweie E173s-1 i E3131 łączą do wyboru RAS lub NDIS a z E367 jest zonk - łączy tylko w RAS, a po podłączeniu modemu są ładowane jakieś nowe moduły

Kod: Zaznacz cały

:~ # usb-devices
...
I:  If#= 0 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=01 Prot=01 Driver=option
I:  If#= 1 Alt= 0 #EPs= 1 Cls=ff(vend.) Sub=01 Prot=09 Driver=cdc_wdm
I:  If#= 2 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=01 Prot=08 Driver=qmi_wwan
I:  If#= 3 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=01 Prot=03 Driver=option
I:  If#= 4 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=01 Prot=02 Driver=option
I:  If#= 5 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage
I:  If#= 6 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage
nie ładuje się ten który umożliwia połączenie przez NDIS

Kod: Zaznacz cały

I:  If#= 1 Alt= 1 #EPs= 3 Cls=02(commc) Sub=06 Prot=ff Driver=huawei_ether
Awatar użytkownika
Pijo
Stary wyga bezprzewodowy
Posty: 677
Rejestracja: 2009-07-06, 12:16
Lokalizacja: Podlasie/Mazowsze

Re: O internecie komórkowym w linuksie słów kilka

Post autor: Pijo »

berni pisze:Linuksowy Mobile Partner też obsługuje kody USSD - znalazłeś i opisałeś sposób aby je uaktywnić, u mnie sprawują się bez zarzutu.
Tak. Działają USSD w MP, ale ten huweiowy NDIS driver ciągle loguje coś do /var/log/syslog. Denerwujące to jest.

berni pisze:W którym Linuksie instalowałeś ten Modem Manager GUI i w jaki sposób, czy z pakietu czy też ze źródła?
Kubuntu 12.10, z PPA: https://launchpad.net/~linuxonly/+archi ... anager+gui
berni
Specjalista bezprzewodowy-senior
Posty: 496
Rejestracja: 2009-06-14, 22:21
Lokalizacja: PL

Re: O internecie komórkowym w linuksie słów kilka

Post autor: berni »

Pijo pisze:Kubuntu 12.10, z PPA: https://launchpad.net/~linuxonly/+archi ... anager+gui
W Susku 12.3 przerobiłem pakiet deb na rpm

Kod: Zaznacz cały

 # alien --to-rpm modem-manager-gui_0.0.15.4~quantal0_i386.deb
modem-manager-gui-0.0.15.4-2.i386.rpm generated
ale przy instalacji pokazał się komunikat o braku pliku

Kod: Zaznacz cały

 # zypper install modem-manager-gui
Loading repository data...
Reading installed packages...
Resolving package dependencies...

Problem: nothing provides libgdbm.so.3 needed by modem-manager-gui-0.0.15.4-2.i386
 Solution 1: do not install modem-manager-gui-0.0.15.4-2.i386
 Solution 2: break modem-manager-gui-0.0.15.4-2.i386 by ignoring some of its dependencies

Choose from above solutions by number or cancel [1/2/c] (c): c
czyli trzeba będzie sprawdzić instalację w Ubuntu.
moher
Specjalista bezprzewodowy-senior
Posty: 379
Rejestracja: 2011-02-02, 15:43
Lokalizacja: Szczecin

Re: O internecie komórkowym w linuksie słów kilka

Post autor: moher »

A nie możesz sobie tego po prostu skompilować, zamiast przeszczepiać paczki?
berni
Specjalista bezprzewodowy-senior
Posty: 496
Rejestracja: 2009-06-14, 22:21
Lokalizacja: PL

Re: O internecie komórkowym w linuksie słów kilka

Post autor: berni »

moher pisze:A nie możesz sobie tego po prostu skompilować, zamiast przeszczepiać paczki?
Wypróbuję również samą kompilację, tylko obawiam się, że trzeba będzie ją zrobić w starszej wersji Suska.
moher
Specjalista bezprzewodowy-senior
Posty: 379
Rejestracja: 2011-02-02, 15:43
Lokalizacja: Szczecin

Re: O internecie komórkowym w linuksie słów kilka

Post autor: moher »

Nie wiem dlaczego tak twierdzisz.
berni
Specjalista bezprzewodowy-senior
Posty: 496
Rejestracja: 2009-06-14, 22:21
Lokalizacja: PL

Re: O internecie komórkowym w linuksie słów kilka

Post autor: berni »

Udało mi się zainstalować ten Modem Manager GUI w Kubuntu 12.04. Pierwsze podejście z tym managerem bez sukcesu:

Kod: Zaznacz cały

new@new-n:~$ sudo apt-get install modem-manager-gui
[sudo] password for new: 
Czytanie list pakietów... Gotowe
Budowanie drzewa zależności       
Odczyt informacji o stanie... Gotowe
Nie udało się zainstalować niektórych pakietów. Może to oznaczać,
że zażądano niemożliwej sytuacji lub użyto dystrybucji niestabilnej,
w której niektóre pakiety nie zostały jeszcze utworzone lub przeniesione
z katalogu Incoming ("Przychodzące").
Następujące informacje mogą pomóc rozwiązać sytuację:

Następujące pakiety mają niespełnione zależności:
 modem-manager-gui : Wymaga: libglib2.0-0 (>= 2.32.3) ale 2.32.1-0ubuntu2 ma zostać zainstalowany
                     Wymaga: libgtk-3-0 (>= 3.4.2) ale nie zostanie zainstalowany
E: Nie udało się naprawić problemów, zatrzymano uszkodzone pakiety.
Doinstalowałem z repo pakiet libgtk-3-0 i zaktualizowałem do nowszej wersji pakiet libglib2.0-0 (oryginalnie była wersja 2.32.1 , a po aktualizacji już 2.32.4).
Kolejna próba instalacji Managera przebiegła już pomyślnie

Kod: Zaznacz cały

new@new-n:~$ sudo apt-get install modem-manager-gui
[sudo] password for new: 
Czytanie list pakietów... Gotowe
Budowanie drzewa zależności       
Odczyt informacji o stanie... Gotowe
Zostaną zainstalowane następujące dodatkowe pakiety:
  libnotify4 pkg-config
Zostaną zainstalowane następujące NOWE pakiety:
  libnotify4 modem-manager-gui pkg-config
0 aktualizowanych, 3 nowo instalowanych, 0 usuwanych i 543 nieaktualizowanych.
Konieczne pobranie 143 kB archiwów.
Po tej operacji zostanie dodatkowo użyte 543 kB miejsca na dysku.
Kontynuować [T/n]? t
Pobieranie:1 http://extras.ubuntu.com/ubuntu/ precise/main modem-manager-gui i386 0.0.13-extras12.04.1 [83,0 kB]
Pobieranie:2 http://pl.archive.ubuntu.com/ubuntu/ precise/main libnotify4 i386 0.7.5-1 [19,3 kB]
Pobieranie:3 http://pl.archive.ubuntu.com/ubuntu/ precise/main pkg-config i386 0.26-1ubuntu1 [40,3 kB]
Pobrano 143 kB w 2s (50,0 kB/s)                                            
Selecting previously unselected package libnotify4.
(Odczytywanie bazy danych ... 91571 files and directories currently installed.)
Rozpakowanie libnotify4 (z .../libnotify4_0.7.5-1_i386.deb) ...
Selecting previously unselected package pkg-config.
Rozpakowanie pkg-config (z .../pkg-config_0.26-1ubuntu1_i386.deb) ...
Selecting previously unselected package modem-manager-gui.
Rozpakowanie modem-manager-gui (z .../modem-manager-gui_0.0.13-extras12.04.1_i386.deb) ...
Przetwarzanie wyzwalaczy dla man-db...
Konfigurowanie libnotify4 (0.7.5-1) ...
Konfigurowanie pkg-config (0.26-1ubuntu1) ...
Konfigurowanie modem-manager-gui (0.0.13-extras12.04.1) ...
Przetwarzanie wyzwalaczy dla libc-bin...
ldconfig deferred processing now taking place
Dodatkowo doinstalowałem network-manager-gnome i w Kubuntu można było już korzystać z System -> Modem Manager GUI. Jednak u mnie sprawdzanie kodów USSD działa tylko gdy jestem rozłączony z netem, podobnie jest z SMS-ami. Może trzeba zmienić pliki konigurowacyjne do Managera, tylko gdzie to znaleźć?
berni
Specjalista bezprzewodowy-senior
Posty: 496
Rejestracja: 2009-06-14, 22:21
Lokalizacja: PL

Re: O internecie komórkowym w linuksie słów kilka

Post autor: berni »

Pijo pisze:Z odbiorem i wysyłaniem SMS w trakcie połączenia przez wvdial radzi sobie Modem Manager GUI (działa na Huwaei E3131)
Porobiłem kilka testów i mam takie spostrzeżenia:
u mnie w Ubuntu 12.04 gdy jestem połączony z netem poprzez wvdial to Modem Manager GUI nie rozpoznaje modemów. W trakcie połączenia poprzez NM ten Manager GUI prawidłowo wykrywa modemy (m.in. wyświetla moc odbieranego sygnału w %) ale z Huaweiem E3131 nie działają kody USSD
http://www.fotosik.pl/pokaz_obrazek/e77 ... 9d9b6.html
Z ZTE MF636DB jest gorzej gdyż nawet przy nieaktywnym połączeniu nie działąją kody USSD - podobnie jest z iCONem 711.
Natomiast z iCONem 505 wszystko jest OK i w trakcie połączenia można wysyłać kody USSD, odbierać SMS - to przydaje mi się gdy jest potrzeba zalogowania do www.iblueconnect.pl i sprawdzenia szczegułów stanu konta.
Awatar użytkownika
Pijo
Stary wyga bezprzewodowy
Posty: 677
Rejestracja: 2009-07-06, 12:16
Lokalizacja: Podlasie/Mazowsze

Re: O internecie komórkowym w linuksie słów kilka

Post autor: Pijo »

berni pisze:W trakcie połączenia poprzez NM ten Manager GUI prawidłowo wykrywa modemy (m.in. wyświetla moc odbieranego sygnału w %) ale z Huaweiem E3131 nie działają kody USSD
U mnie kody USSD w MMGui działają na E3131 w trakcie połączenia przez wvdial (modem w trybie RAS widziany jako ppp0, a nie ndis - wwan0 ) . Kubuntu 12.10, modemmanager 0.6. Network Managera nie używam, nie wiem czy nie blokuje postępu do portu aplikacji dla MMGui, gdy przez NM jest zestawione połączenie.

http://img194.imageshack.us/img194/5492/e3131v1.jpg
berni
Specjalista bezprzewodowy-senior
Posty: 496
Rejestracja: 2009-06-14, 22:21
Lokalizacja: PL

Re: O internecie komórkowym w linuksie słów kilka

Post autor: berni »

Pijo pisze:modem w trybie RAS widziany jako ppp0
W Ubuntu 12.04 i w innych Linuksach iCONy 225, 411 i 505 łączą z netem poprzez interfejs hso0 (tak opisuje to NM a MMGUI nazywa to portem) i dlatego nie ma problemu z kodami USSD i SMS w trakcie połączenia internetowego, natomiast Huaweie (pomijając łączenie poprzez linuksowy MP), ZTE, GlobeSurfery i iCON 711 łączą poprzez któryś z portów /dev/ttyUSBx i tak to opisuje NM.
Nie mam jeszcze zainstalowanego Kubuntu 12.10 aby sprawdzić w nim ten MMGUI, w Susku 12.2 po kombinacjach z alienem udało mi się uruchomić tego Managera ale tam też na razie pełny sukces jest tylko z Optionami korzystającymi z hso.
berni
Specjalista bezprzewodowy-senior
Posty: 496
Rejestracja: 2009-06-14, 22:21
Lokalizacja: PL

Re: O internecie komórkowym w linuksie słów kilka

Post autor: berni »

moher pisze:A nie możesz sobie tego po prostu skompilować
Tutaj
http://www.patenpisan.com/2013/03/modem ... modem.html
jest opis jak to wykonać w Fedorze.
Tym sposobem w Fedorce 18 z KDE

Kod: Zaznacz cały

[new@localhost ~]$ uname -r
3.6.10-4.fc18.i686.PAE
gdzie miałem już zainstalowane gcc , make i te dodatkowe pakiety

Kod: Zaznacz cały

[root@localhost ~]# yum install gtk3-devel gdbm-devel libnotify-devel
skompilowałem ten MM GUI

Kod: Zaznacz cały

[new@localhost modem-manager-gui-0.0.15.4]$ ./configure

[new@localhost modem-manager-gui-0.0.15.4]$ make

[root@localhost modem-manager-gui-0.0.15.4]# make install
(cd src && make install)
make[1]: Wejście do katalogu `/home/new/Dokumenty/_test/modem-manager-gui-0.0.15.4/src'
install -d /usr/bin
install modem-manager-gui /usr/bin
install modem-manager-gui.ui /usr/bin
(...)
make[1]: Wejście do katalogu `/home/new/Dokumenty/_test/modem-manager-gui-0.0.15.4/po'
for f in pt_BR.mo uz.mo uk.mo tr.mo ru.mo; do install -d /usr/share/locale/`basename $f .mo`/LC_MESSAGES; \
        cp $f /usr/share/locale/`basename $f .mo`/LC_MESSAGES/modem-manager-gui.mo; done
make[1]: Opuszczenie katalogu `/home/new/Dokumenty/_test/modem-manager-gui-0.0.15.4/po'
(cd man && make install)
make[1]: Wejście do katalogu `/home/new/Dokumenty/_test/modem-manager-gui-0.0.15.4/man'
install -d /usr/share/man/man1; 
for f in modem-manager-gui.1; do install -m 644 $f /usr/share/man/man1; gzip -f --best /usr/share/man/man1/$f; done
make[1]: Opuszczenie katalogu `/home/new/Dokumenty/_test/modem-manager-gui-0.0.15.4/man'
Ten Manager GUI sprawdziłem z E3131 , E367 i iCON 411 - bez zarzutu realizuje swoje funkcje, w trakcie aktywnego połączenia internetowego, poprzez wbudowany Network Manager, odpowiada prawidłowo na kody USSD i odbiera SMSy. Na razie jedyną wadą jaką do tej pory znalazłem, jest fakt, iż doładowanie jest prawidłowo wykonane tylko gdy połączenie jest nieaktywne.
berni
Specjalista bezprzewodowy-senior
Posty: 496
Rejestracja: 2009-06-14, 22:21
Lokalizacja: PL

Re: O internecie komórkowym w linuksie słów kilka

Post autor: berni »

Połączenie z netem w NDIS z Huawei E367 w Linuksie Mint 15 na podstawie tego opisu
http://compgroups.net/comp.os.linux.har ... in/1283418
w autostarcie wyłączony NM, praca w dwóch konsolach zalogowanych na koncie roota, modem rozpoznawany w systemie

Kod: Zaznacz cały

new-n new # usb-devices
(...)
T:  Bus=01 Lev=01 Prnt=01 Port=02 Cnt=01 Dev#=  4 Spd=480 MxCh= 0
D:  Ver= 2.00 Cls=ef(misc ) Sub=02 Prot=01 MxPS=64 #Cfgs=  1
P:  Vendor=12d1 ProdID=1506 Rev=00.00
S:  Manufacturer=Huawei Technologies
S:  Product=HUAWEI Mobile
C:  #Ifs= 7 Cfg#= 1 Atr=c0 MxPwr=500mA
I:  If#= 0 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=01 Prot=01 Driver=option
I:  If#= 1 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=01 Prot=02 Driver=option
I:  If#= 2 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=01 Prot=03 Driver=option
I:  If#= 3 Alt= 0 #EPs= 1 Cls=ff(vend.) Sub=01 Prot=09 Driver=qmi_wwan
I:  If#= 4 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=01 Prot=08 Driver=qmi_wwan
I:  If#= 5 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage
I:  If#= 6 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage

new-n new # ls /dev/ttyUSB*
/dev/ttyUSB0  /dev/ttyUSB1  /dev/ttyUSB2
pierwsza konsola:

Kod: Zaznacz cały

new-n new # picocom /dev/ttyUSB1
(...)
at^ndisdup=1,1,"internet"
OK
druga konsola:

Kod: Zaznacz cały

new-n new # ifconfig wwan0 hw ether 00:01:02:03:04:05
new-n new # dhclient wwan0
Rather than invoking init scripts through /etc/init.d, use the service(8)
utility, e.g. service smbd reload

Since the script you are attempting to invoke has been converted to an
Upstart job, you may also use the reload(8) utility, e.g. reload smbd
jest połączenie z netem

Kod: Zaznacz cały

at^dhcp?
^DHCP:ed4b4c2e,fcffffff,ee4b4c2e,ee4b4c2e,356002d4,366002d4,28800000,0

Kod: Zaznacz cały

new-n new # ifconfig
lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:8 errors:0 dropped:0 overruns:0 frame:0
          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:400 (400.0 B)  TX bytes:400 (400.0 B)

wwan0     Link encap:Ethernet  HWaddr 00:01:02:03:04:05  
          inet addr:46.76.75.237  Bcast:46.76.75.239  Mask:255.255.255.252
          inet6 addr: fe80::201:2ff:fe03:405/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:26960 errors:0 dropped:0 overruns:0 frame:0
          TX packets:17385 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:34891349 (34.8 MB)  TX bytes:1466205 (1.4 MB)
Rozłączenie:
1 konsola

Kod: Zaznacz cały

at^ndisdup=1,0
OK

^NDISEND:1,0

Thanks for using picocom
2 konsola

Kod: Zaznacz cały

new-n new # ifconfig wwan0 down
Ciekawe informacje są też tutaj
https://mail.gnome.org/archives/network ... 00127.html
berni
Specjalista bezprzewodowy-senior
Posty: 496
Rejestracja: 2009-06-14, 22:21
Lokalizacja: PL

Re: O internecie komórkowym w linuksie słów kilka

Post autor: berni »

Czy udało się już komuś uruchomić w NDIS modem Option Beemo

Kod: Zaznacz cały

:~ # lsusb
Bus 001 Device 004: ID 106c:3721 Curitel Communications, Inc. Option Beemo (GI0801) LTE surfstick

:~ # usb-devices
T:  Bus=01 Lev=01 Prnt=01 Port=02 Cnt=01 Dev#=  4 Spd=480 MxCh= 0
D:  Ver= 2.00 Cls=02(commc) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
P:  Vendor=106c ProdID=3721 Rev=00.00
S:  Manufacturer=Pantech, Incorporated
S:  Product=PANTECH P4200
C:  #Ifs= 7 Cfg#= 1 Atr=c0 MxPwr=500mA
I:  If#= 0 Alt= 0 #EPs= 1 Cls=02(commc) Sub=02 Prot=01 Driver=cdc_acm
I:  If#= 1 Alt= 0 #EPs= 2 Cls=0a(data ) Sub=00 Prot=00 Driver=cdc_acm
I:  If#= 2 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=qcaux
I:  If#= 3 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=fd Prot=ff Driver=qcaux
I:  If#= 4 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=fe Prot=ff Driver=qcaux
I:  If#= 5 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=f0 Prot=ff Driver=qmi_wwan
I:  If#= 6 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage

:~ # ls /dev/ttyUSB*
/dev/ttyUSB0  /dev/ttyUSB1  /dev/ttyUSB2

:~ # ls /dev/ttyACM0
/dev/ttyACM0

:~ # ls /dev/ttyHS*
ls: cannot access /dev/ttyHS*: No such file or directory

Kod: Zaznacz cały

:~ # picocom /dev/ttyACM0
picocom v1.6

port is        : /dev/ttyACM0
(...)
ati
Manufacturer: PANTECH
Model: P4200
Revision: P4200TEC351F.165  1  [Mar 26 2012 11:07:24]
SVN: 01
IMEI: xxx
+GCAP: +CIS707-A, CIS-856, CIS-856-A, +CGSM, +CLTE2

OK

at+clac
(...)
$QCPDPIMSCFGE
_OWANCALL
_OWANDATA
_OERCN
_OZERO
_OSQI
_OEANT
_OUWCTI
_OHWV
_OCTI
_OHSPACAT
_OISOV
_OGACT
_OWCTI
_OHCIP
_OPSYS
_OSSYS
_OSKTNRM
_ORESET
_OAIR
_OBLS
_OSWLED
_LEDSET
_TEST


OK
at_opsys?
_OPSYS: 8, 2

OK
Połączenie w RAS wvdialem

Kod: Zaznacz cały

[Dialer Defaults]
Modem = /dev/ttyACM0
Dial Command = ATDT
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2
Init3 = AT+CGDCONT=1,"IP","internet"
Phone = *99#
Username = "blank"
Password = "blank"
Stupid Mode = yes
jest bez sukcesu

Kod: Zaznacz cały

:~ # wvdial
--> WvDial: Internet dialer version 1.60
--> Initializing modem.
--> Sending: ATZ
ATZ
OK
--> Sending: ATQ0 V1 E1 S0=0 &C1 &D2
OK
--> Sending: AT+CGDCONT=1,"IP","internet"
AT+CGDCONT=1,"IP","internet"
OK
--> Modem initialized.
--> Sending: ATDT*99#
--> Waiting for carrier.
ATDT*99#
CONNECT 100000000
--> Carrier detected.  Starting PPP immediately.
--> Starting pppd at Sun Feb  9 12:29:48 2014
--> Pid of pppd: 5027
--> Using interface ppp0
--> Disconnecting at Sun Feb  9 12:30:06 2014
--> The PPP daemon has died: A modem hung up the phone (exit code = 16)
--> man pppd explains pppd error codes in more detail.
--> Try again and look into /var/log/messages and the wvdial and pppd man pages for more information.
--> Auto Reconnect will be attempted in 5 seconds
--> Cannot open /dev/ttyACM0: No such file or directory
--> Cannot open /dev/ttyACM0: No such file or directory
--> Cannot open /dev/ttyACM0: No such file or directory
--> Disconnecting at Sun Feb  9 12:30:07 2014
Dopiero skryptami ppp, jest pełny sukces

Kod: Zaznacz cały

:~ # pppd call gsm

Start Net 

Dialing...

Script /usr/sbin/chat -v -f /etc/ppp/gsm-connect finished (pid 5759), status = 0x0
Serial connection established.
Using interface ppp0
Connect: ppp0 <--> /dev/ttyACM0
Could not determine remote IP address: defaulting to 10.64.64.64
local  IP address 46.215.89.247
remote IP address 10.64.64.64
primary   DNS address 212.2.96.51
secondary DNS address 212.2.96.52
Script /etc/ppp/ip-up finished (pid 5773), status = 0x0
Awatar użytkownika
ra-v
Mistrz bezprzewodowy
Posty: 1529
Rejestracja: 2009-11-08, 22:59
Lokalizacja: Fryzjer City

Re: O internecie komórkowym w linuksie słów kilka

Post autor: ra-v »

Jak mi powiesz jak rozpoznać czy np. mój modem działa w trybie NDIS czy RAS to może na coś wpadniemy;-).

Z tego co piszesz rozumiem, żę wvdial uruchamia NDIS a pppd RAS?

Ja mam tego typu problem, że kiedyś próbowałem uruchomić modem Huawei tymi samymi poleceniami AT co ZTE, jednak z jakichś względów nie mogłem dojść dlaczego się nie łączy - może właśnie z tego względu że nie obsługuje RAS?
Internet 70GB/nolimit: Huawei E3372s-153+TP-LINK MR3420 v2
Telefon: Moto G 1gen / Lumia 625 / iPhone 4 / Nokia 6310i
berni
Specjalista bezprzewodowy-senior
Posty: 496
Rejestracja: 2009-06-14, 22:21
Lokalizacja: PL

Re: O internecie komórkowym w linuksie słów kilka

Post autor: berni »

ra-v pisze: jak rozpoznać czy np. mój modem działa w trybie NDIS czy RAS
Najprościej (openSUSE 12.3 - kontrola sieci przez ifup, NetworkManager nie zawsze działa tak jak powinien) to przykład połączenia w RAS Optiona Beemo:

Kod: Zaznacz cały

:~ # ifconfig
lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:4 errors:0 dropped:0 overruns:0 frame:0
          TX packets:4 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:200 (200.0 b)  TX bytes:200 (200.0 b)

ppp0      Link encap:Point-to-Point Protocol  
          inet addr:46.169.104.178  P-t-P:10.64.64.64  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1500  Metric:1
          RX packets:21538 errors:0 dropped:0 overruns:0 frame:0
          TX packets:12150 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:3 
          RX bytes:28683420 (27.3 Mb)  TX bytes:911598 (890.2 Kb)
Co do wvdial to jest to nakładka na pppd, czyli też RAS, ułatwiająca skonfigurowanie łącza internetowego, nie każdy modem połączy w ten sposób.
ODPOWIEDZ