# Как использовать смартфон с Android как USB-модем в Linux Если у компьютера нет Wi-Fi адаптера или для него не установлены драйверы, то компьютер можно подключить к мобильному Интернету с помощью Android-смартфона подсоединенного посредством USB кабеля. Кроме того, есть веские причины использовать именно USB-модем: * Более надежное сетевое подключение * Поддержка телефона заряженным * Предотвращение беспроводных помех * Предотвращение перехвата данных беспроводными снифферами ## Настройка подключения на стороне смартфона Краткий порядок действий: * Подключите USB-кабель к вашему телефону и ПК с Linux. * Android обнаружит соединение — когда будет предложено //Разрешить доступ//, выберите //Разрешить//. * В //Уведомлениях// найдите сообщение //USB// и коснитесь его. * В разделе //Использовать USB для// выберите //USB-модем//. (**!**) Следует иметь ввиду, что в разных телефонах эта активация расположена в разных пунктах меню. В момент, когда USB-модем подключается, на шине USB компьютера должно появиться новое USB-устройство. Увидеть его можно через команду dmesg, запускаемую от рута. В конце выдаваемого этой командой сообщения должны быть примерно такие строки: ``` [ 5945.395052] usb 1-1.4: new high-speed USB device number 6 using ehci-pci [ 5945.504945] usb 1-1.4: New USB device found, idVendor=12d1, idProduct=1050 [ 5945.504948] usb 1-1.4: New USB device strings: Mfr=2, Product=3, SerialNumber=4 [ 5945.504950] usb 1-1.4: Product: H60-L04 [ 5945.504952] usb 1-1.4: Manufacturer: HUAWEI [ 5945.504954] usb 1-1.4: SerialNumber: X9L021493123456789 [ 5945.531053] usbcore: registered new interface driver cdc_ether [ 5945.534466] rndis_host 1-1.4:1.0 usb0: register 'rndis_host' at usb-0000:00:1a.0-1.4, RNDIS device, 76:d4:94:e8:51:98 [ 5945.534494] usbcore: registered new interface driver rndis_host [ 5945.537574] rndis_host 1-1.4:1.0 enp0s26u1u4: renamed from usb0 ``` Здесь видно, что по USB-интерфейсу было подключено устройство usb0, которое, видимо, для удобства пользователя было переименовано в **enp0s26u1u4**. Чтобы проверить IP-адрес устройства надо от лица рута выполнить команду ifconfig -a и посмотреть на сетевые устройства, которые видит Linux, среди них надо искать устройство определившееся при подключении USB-модема: ``` # ifconfig -a enp0s26u1u4: flags=4098 mtu 1500 ether 5e:b8:41:95:5c:04 txqueuelen 1000 (Ethernet) RX packets 0 bytes 0 (0.0 B) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 0 bytes 0 (0.0 B) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 ... ``` В данном случае видно, что сетевое устройство enp0s26u1u4 присутствует в системе, но параметры его автоматически не настроились. Следовательно возможности передачи данных через него нет, и в таком случае придётся настраивать его дополнительно. ## Настройка подключения на стороне ПК ### Вариант 1 Для настройки параметров сетевого подключения на стороне компьютера можно использовать "Апплет NetworkManager". Порядок действий при этом будет таким: - Добавить новое сетевое (Ethernet) подключение - В параметрах подключения выбрать устройство определившееся при подключении USB-модема (enp0s26u1u4) - В параметрах подключения для IPv4 выбрать "Автоматический (DHCP)" ### Вариант 2 Либо можно это сделать из консоли. Для этого от рута необходимо выполнить следующие команды: ``` # ifconfig enp0s26u1u4 up # dhclient enp0s26u1u4 ``` После вышеуказанной настройки, интернет через USB-кабель, подключенный к мобильному телефону, должен заработать. При этом настройки USB-модема изменятся следующим образом: ``` # ifconfig -a enp0s26u1u4: flags=4163 mtu 1500 inet 192.168.42.208 netmask 255.255.255.0 broadcast 192.168.42.255 inet6 fe85::1cb8:41ff:fe95:c98 prefixlen 64 scopeid 0x20 ether 5e:b8:41:95:5c:04 txqueuelen 1000 (Ethernet) RX packets 31 bytes 3233 (3.1 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 61 bytes 11452 (11.1 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 ... ``` ## Что делать, если пункт USB-модем на смартфоне не активен или отсутствует Пункт USB-модем может быть неактивен в двух случаях: - Телефон не подключён к компьютеру USB кабелем - USB кабель не поддерживает передачу данных Попробуйте другой USB кабель — тот который шёл в комплекте с телефоном должен поддерживать передачу данных.