[Howto] Dial UP (DUN) przez bluetooth i network manager (np. Nokia)

frytek
Wytworny Kaczor
Wytworny Kaczor
Posty: 330
Rejestracja: 06 sty 2006, 00:03
Płeć: Mężczyzna
Wersja Ubuntu: 10.04
Środowisko graficzne: GNOME
Architektura: x86
Kontakt:

[Howto] Dial UP (DUN) przez bluetooth i network manager (np. Nokia)

Post autor: frytek » 12 mar 2013, 18:34

Temat może nie jest najświeższy, bo np. telefony z Androidem udostępniają neta po wifi, ale jeśli ktoś ma starszy telefon, to może skorzysta.

Opisuję jak to zrobić, bo w historii Ubuntu, Dial Up Networking (DUN) za pośrednictwem Network Managera w niektórych wersjach działał, a w niektórych nie. Ostatnią działającą u mnie była 12.04, a po uaktualnieniu do nowszej wersji funkcjonalność ta nagle zniknęła: applet bluetooth nie pyta na końcu o DUN, w konsekwencji czego Network Manager, mimo, że ma opcje połączeń komórkowych, nie potrafi się połączyć.

Rozwiązanie poniższe wymaga przestawienia się z gnome-bluetooth-applet na blueman'a oraz rekompilacji Network Managera po poprawieniu kodu źródłowego tak, aby widział interfejs modemowy generowany przez blueman'a. Jest więc szansa, że rozwiązanie będzie trwałe, niezależnie od tego, co wymyślą w nowszych wersjach systemu.


Na tej stronie:
https://bbs.archlinux.org/viewtopic.php?id=147880
autor mówi dlaczego Network Manager nie chce pracować z Bluemanem. Musimy skompilować Network Manager z obsługą modemu Bluetooth.

Oto jak to zrobić (dziękuję Ethanakowi za pomoc w kompilacji)
Przypominam - poradnik przeznaczony jest dla Ubuntu 12.10!

musimy dodać repo źródeł:

Kod: Zaznacz cały

sudo gedit /etc/apt/sources.list
dodaj linię:

Kod: Zaznacz cały

deb-src http://archive.ubuntu.com/ubuntu/ quantal main restricted

Kod: Zaznacz cały

sudo apt-get update
sudo apt-get install build-essential blueman dpkg-dev
sudo apt-get build-dep network-manager

Kod: Zaznacz cały

mkdir ~/tmp
cd ~/tmp
bez sudo:

Kod: Zaznacz cały

apt-get source network-manager
cd network-manager-numer_wersji
(Wymienić numer_wersji na numer wersji rzeczywistej nazwy foldera)

teraz możemy wyedytować plik network-manager-numer_wersji

Kod: Zaznacz cały

gedit src/nm-manager.c
w sposób opisany w wyżej wspomnianej stronie. mianowicie, musimy usunąć ! przed strcmp w tej lokalizacji:

Kod: Zaznacz cały

if (driver && strcmp (driver, "bluetooth")) {
nm_log_info (LOGD_MB, "ignoring modem '%s' (no associated Bluetooth device)", ip_iface);
return;
}
i zapisać plik

teraz:

Kod: Zaznacz cały

dpkg-source --commit
poprosi o podanie nazwy patch, dajemy dowolną, otworzy się edytor - możemy zapisać plik (jeśli jest to vi, wpisz :wq)

Kod: Zaznacz cały

dpkg-buildpackage -us -uc
Teraz jest dobry moment na zatrzymanie network managera:

Kod: Zaznacz cały

sudo /etc/init.d/network-manager stop
cd ..
sudo dpkg -i network-manager-numer_wersji.deb
i uruchomienie nowego menedżera sieci:

Kod: Zaznacz cały

/etc/init.d/network-manager start
teraz,
zatrzymujemy bluetooth aplet gnome:

Kod: Zaznacz cały

killall mate-bluetooth-applet
(I usuwamy go z programów startowych w menu)

i uruchamiamy blueman'a:

Kod: Zaznacz cały

blueman
(I dodajemy go do programów startowych, jeśli go tam nie ma)

prawym przyciskiem myszy na ikonie -> blueman urządzenia
Wyszukaj
dodaj urządzenie - paruj > Kod PIN i ten sam w telefonie

teraz nasz nowy Network Manager:
prawy przycisk myszy -> edytuj połączenia

trzecia zakładka - mobilne -> kreator dla kraju, operatora i planu.
Nowe połączenie pojawia się w liście sieci (lewy przycisk myszy), gdzie wcześniej był tylko LAN i wifi. w nowo skompilowanym managerze pojawi się wybrana sieć, np. u mnie T-mobile.

teraz kliknij prawym przyciskiem myszy na urządzenie w Blueman -> porty szeregowe -> dial-up networking. Należy potwierdzić na telefonie nawiązanie połączenia.

następnie kliknij na usługi lokalnie w menu blueman'a -> sieć i wybierz w PAN i DUN opcję Network Manager. (To okno jest trochę skaszanione, ponieważ przycisk Apply jest nieaktywny po zmianie parametru. trzeba wyłączyć opcję główną na samej górze, wcisnąć apply i znowu ją włączyć - tym razem z Network Managerem.

teraz kliknij urządzenia -> telefon -> Port szeregowy -> DUN.
potwierdź połączenie na telefonie i obserwowuj ikonę połączenia z gprs.

w moim przypadku Network Manager połączył się automagicznie ze zdefiniowanym połączeniem komórkowym. ale tylko za pierwszym razem. jeśli tego nie zrobi, kliknij zdefiniowane połączenie komórkowe w menu.

To wszystko. :)
ODPOWIEDZ

Wróć do „Software-Sieć”