Udostępnianie połączenia internetowego przy użyciu sieci wi-fi, które opisałem we wpisie Udostępnienie połączenia internetowego z Andorida poprzez sieć bezprzewodową ma w moim przypadku kilka wad:

  • pobiera tyle energii, że telefon podłączony do komputera przy użyciu kabla USB raczej się rozładowuje niż ładuje
  • w moim przypadku połączenie to także rozgrzewało telefon do 50 stopni, co prawdopodobnie powodowało, że czasem się po prostu wyłączał

Jeżeli posiadamy zrootowany telefon z zainstalowanym Cyanogenmod w wersji 5 (może wcześniejsze wersje też to obsługują, ja testowałem w tej) to istnieje możliwość udostępnienia połączenia internetowego poprzez kabel USB.

Konfiguracja telefonu

W telefonie należy właściwie zrobić tylko jedną rzecz, włączyć udostępnienia połączenia poprzez USB. A można to zrobić wybierając Ustawienia, następnie Sieci zwykłe i bezprzewodowe, a na końcu zaznaczyć opcję Internet Tethering.

I to właściwie tyle.

Konfiguracja komputera

W moim przypadku konfiguracja dotyczy systemu Ubuntu 10.4. Postaram się pokazać, jak należy ten system skonfigurować, aby automatycznie nawiązywał połączenie z telefonem i konfigurował odpowiednio połączenie sieciowe.

Wymogiem poprawnego działania tego połączenie jest obeność w jądrze modułu RNDIS, odpowiedzialnego za zestawienie połączenie sieciowego po łączu USB. W przypadku Ubuntu odpowiednie jądro zostało juz skompilowane z odpowiednimi modułami.

Po podłączeniu telefonu warto wydać polecenie:

# ip a s usb0

Jeżeli polecenie to wyświetli informacje o interfejsie usb0 to oznacza, że połączenie działa, pozostaje je tylko skonfigurować.

A konfiguracja polega tak naprawdę na pobraniu adres IP z serwera DHCP. Można zrobić w następująco:

# dhclient usb0

Komenda ta powinna pobrać dynamiczny adres IP, po jej wydaniu warto sprawdzić, czy możemy połączyć się z jakimiś zasobami.

I tak naprawdę to wszystko, po tych operacjach powinno działać połączenie z Internetem.

Automatyczna konfiguracja połączenia z telefonem

Konfiguracja automatycznej konfiguracji internfejsu usb0 jest stosunkowo prosta. Należy w pliku /etc/network/interfaces dopisać dwie linijki:

1
2
auto usb0
iface usb0 inet dhcp

Pierwsza linijka oznacza automatyczne konfigurowanie wybranego interfejsu sieciowego, a druga informuje, że należy pobrać informacje o sieci IP pobrać z serwera DHCP.

Pozstaje jeszcze tylko zrestartować sieć:

# /etc/init.d/networking restart

Od tej pory po podłączeniu telefonu sieć USB powinna automatycznie zostać skonfigurowana.

Źródła