Как раздать интернет с компьютера на телефон через usb linux
Когда мы говорим о расшаривании Интернет, обычно имеем в виду подключение своего локального компьютера или ноутбука к Интернет с помощью мобильного устройства, например телефона или планшета. Но иногда бывают и обратные ситуации, когда надо подключится к Интернет с мобильного устройства, а WiFi точек доступа нет, или тарифный план не позволяет этого сделать, тогда приходится действовать с точностью до наоборот: шарить интернет из своего стационарного ПК на мобильный девайс. Такой метод ещё называется “USB Reverse Tethering”, где Reverse и означает “обратный”.
Процедура эта необычная, но благодаря ребятам из XDA Forum можно расшарить Интернет с ПК на рученый Android девайс без лишнего ПО. Такой метод работает для всех операционных систем: Windows, Linux и Mac. Хоть он и не требует лишних программ, зато понадобится немного поработать с терминалом.
Как я уже оговорился, устройство обязательно должно быть рученым, плюс поддерживать USB сопряжение и возможность создания точки доступа. Обычно, на стоковых прошивках эта опция отключена, но включается она очень просто и без проблем. Помимо этого, Вам понадобится ПК с рабочим Интернет соединением, USB кабель и эмулятор терминала для Android. Как альтернатива эмулятору, можно воспользоваться ADB.
Требования
1. Рученый Android смартфон/планшет с возможностью USB подключения и создания точки доступа. Это можно проверить в настройках устройства: Settings - Wireless & networks - Tethering & portable hotspot. Во многих стоковых прошивках эта функция отключена, поэтому её надо включить. Например, у CyanogenMod эта опция всегда присутствует. Помните, что когда Вы подключаете устройство и активируете точку доступа, устройство определяется как сетевой USB адаптер, а не дисковый накопитель или медиа устройство.
2. ПК с рабочим Интернет соединением.
3. USB кабель для подключения устройства к компьютеру.
4. Эмулятор терминала на Android устройстве. Если Вы не хотите вводить команды с тачскрина, тогда можете вводить их с компьютера, используя "adb shell", которая есть частью Android SDK.
5. По желанию, BusyBox на Android устройстве.
Инструкция
1. Подключаем устройство к ПК при помощи USB кабеля и активируем точку доступа. Эту опцию можно включать даже когда 3G или WiFi выключены.
1.1 Если Вы используете Linux (Ubuntu), Вам не надо ничего устанавливать. NetworkManager апплет всё сделает за Вас.
1.2 Если Вы используете Windows, он автоматически найдет Windows Update и установит нужный драйвер. Можно конечно избежать Windows Update и установить нужный драйвер вручную, который уже имеется в пакете Microsoft.
1.3 Если используете Mac, установите драйвер HoRNDIS. Вы будете уведомлены о новом сетевом интерфейсе. Нажмите на “Сетевые настройки” в диалоговом окне и добавьте его в список интерфейсов.
1.4 Если Вы используете Linux без графического интерфейса или NetworkManager, выполните эти команды от имени root (или используйте sudo):
ifconfig usb0 10.42.0.1 netmask 255.255.255.0
echo 1 > /proc/sys/net/ipv4/ip_forward
Команда для sudo:
sudo 'echo 1 > /proc/sys/net/ipv4/ip_forward'
iptables -t nat -F
iptables -t nat -A POSTROUTING -j MASQUERADE
2. В случаи с Linux, нажмите на NetworkManager -> "Edit Connections". Во вкладке "Wired" выберите новое соединение (не Ethernet LAN) и нажмите "Edit". Во вкладке "IPv4 Settings" выберите "Shared to other computers" и нажимаем Сохранить. NetworkManager переустановит соединение и назначит компьютеру новый IP адрес по умолчанию: 10.42.0.1. Пока интернет соединение не трогаем.
3. Если это Windows, открываем в панели управления “Сетевые настройки”. Делаем правый клик по Интернет соединению и выбираем “Свойства”. Переходим во вкладку “Доступ” и ставим галочку в поле “Разрешить другим пользователям сети использовать подключению к Интернет данного компьютера”, затем выбираем USB подключение в выпадающем списке ниже. Нажимаем ОК, и Windows автоматически установит соединение и назначит IP адрес. Для Windows 7: 192.168.137.1, а для Windows XP: 192.168.0.1.
4. Для Mac системы выбираем System Preferences –> Network. Если Вы установили HoRNDIS, тогда увидите новый сетевой интерфейс, соответствующий Вашему USB подключению. Возвращаемся к System Preferences, нажимаем "Sharing" и выбираем "Internet Sharing". Выбираем Интернет соединение (Ethernet или Airport) в "Share your connection from" и указываем наш USB интерфейс в "To computers using". Mac назначит вашему USB соединению IP адрес: 192.168.2.1.
На этом этапе с настройками компьютера покончено. Теперь открываем эмулятор терминала на Android устройстве и выполняем команду:
su
Следующая команда тоже вводится в терминале и работает для всех операционных систем:
netcfg rndis0 dhcp
Название USB интерфейса может быть разным, но обычно это rndis0 или usb0. Вводим следующую команду чтобы определить интерфейс:
busybox ifconfig
Всё, с этого момента, если всё прошло гладко, Интернет должен появиться на Вашем мобильном устройстве.
Если DHCP по каким либо причинам не заработал, тогда можно сделать всё вручную. Открываем эмулятор терминала на Android устройстве и выполняем команды.
Для Linux:
ifconfig rndis0 10.42.0.2 netmask 255.255.255.0
route add default gw 10.42.0.1 dev rndis0
Если маршрут не был подхвачен:
busybox route add default gw 10.42.0.1 dev rndis0
Для Windows системы выполняем все те же команды, только заменяем IP адреса: 10.42.0.2 на 192.168.137.2 (192.168.0.2 для Windows XP). Для Mac заменяем 10.42.0.2 на 192.168.2.2, и 10.42.0.1 на 192.168.2.1.
Некоторые приложения, как Google Play, GMail, Facebook, могут не распознать Интернет соединения, тогда включите на время 3G соединение и выполните команды:
ifconfig rmnet0 0.0.0.0
3G интерфейс может иметь разные названия, обычно это ppp0 или rmnet0, но чтобы узнать точно выполняем:
busybox ifconfig
Собственно говоря это всё. Вот такая не хитрая процедура позволит Вам расшарить Интернет со своего компьютера на мобильный Android девайс. Если возникли проблемы, или вопросы, пишите, будем рады ответить.
Авторизуясь в LiveJournal с помощью стороннего сервиса вы принимаете условия Пользовательского соглашения LiveJournal
Дневник злостного критика-рецидивиста - жуткого зануды Подключение Linux Ubuntu к Интернету через мобильный телефон.Вступление
Подключение к Интернету через мобильный телефон используется либо как резервный вариант, когда основное подключение недоступно, либо при необходимости подключения в местах, где отсутствуют другие способы подключения, например в дороге или на даче.
Настройки самого мобильного телефона мы не рассматриваем. Как правило, их можно найти на сайте вашего сотового оператора. Они не зависят от операционной системы, с помощью которой осуществляется выход в Интернет, и, как правило, одинаковы для всех моделей мобильных телефонов.
Мобильный телефон можно соединить с компьютером несколькими различными способами: через вай-фай, блю туз, инфракрасный порт, кабель USB или COM порта. Мы рассмотрим подключение через USB-кабель. Сделать это в Убунту даже проще, чем в Виндоус. Не надо даже ставить драйвер USB-кабеля, превращающего его в дополнительный COM-порт. Кабель определяется самостоятельно при физическом подключении, а телефон и часть его модемных настроек — при запуске соответствующей утилиты wvdialconf.
Настройка wvdial
Вообще в Ubuntu существует штатная утилита Network Manager, в которой предусмотрен необходимый функционал для подключения Интернета через мобильный телефон, но в Ubuntu 8.10 эта утилита не работает как положено, и проще настроить соединение через wvdial. Единственная польза, которую мы можем извлечь из Network Manager — это информация о специфичных настройках для разных сотовых операторов, которые автоматически подставляются в соответствующие поля в процессе её настройки, избавляя от необходимости лезть за ними на сайт сотового оператора.
- Берём USB-кабель, подходящий к вашему телефону и подключаем его к компьютеру. Ubuntu опознаёт это устройство как ttyUSBх, где х — номер USB-устройства в системе. Если других устройств нет, то это будет цифра ноль. Напомню, что список опознанных Ubuntu устройств можно увидеть в папке /dev в виде списка файлов. Другой конец кабеля подключаем к включенному телефону.
- Открываем «Система → Администрирование → Программа управления пакетами Synaptic» и устанавливаем пакет wvdial, если он ещё не установлен. Эта программа осуществляет управление модемами, и организует соединение с Интернетом по протоколу ppp. Телефон в нашем случае как раз и используется компьютером в качестве модема.
- Теперь открываем терминал суперпользователя и запускаем утилиту wvdialconf, набрав её имя в командной строке и нажав ввод. Можно запустить утилиту и в обычном терминале, предварив её имя командой sudo и введя на запрос пароля ваш системный пароль. Далее мы будем описывать работу в терминале суперпользователя, но имейте ввиду, что всё то же самое можно сделать и в обычном терминале с помощью команд sudo для консольных приложений и команды gksudo для графических.
Итак, после запуска утилита wvdialconf просканирует порты компьютера в поисках модема. Затем она определяет максимальную скорость интерфейса компьютер-модем. Эта скорость ограничивается, как правило, пропускной способностью соединительного кабеля и портом телефона, и выбирается из следующих значений: 4800, 9600, 19200, 38400, 57600, 115200, 230400, 460800 или 921600 бит в секунду. Также этой утилитой определяется имя файла, соответствующее найденному модему, например /dev/ttyUSB0. Затем вся полученная информация записывается в конфигурационный файл /etc/wvdial.conf.
Внимание! Если вы запустите утилиту сканирования не в терминале суперпользователя, а в обычном терминале без префикса sudo, то она не сможет записать найденную информацию в конфигурационный файл /etc/wvdial.conf, поскольку права доступа к этому файлу позволяют запись туда только от имени суперпользователя. - Запускаем редактор gedit от имени суперпользователя и открываем в нём конфигурационный файл. Для этого в терминале суперпользователя набираем:
а также снимаем комментарии со строчек Phone, Username и Password, и заполняем их значениями, предоставляемыми также вашим сотовым оператором. Для Мегафон-Москва это:
В итоге, в случае подключения к оператору Мегафон-Москва, у вас должно получиться что-то типа этого:
Частые ошибки при подключении Интернета через модем
- Во время попытки соединения в терминал выводятся фразы:
--> Warning: Could not modify /etc/ppp/pap-secrets: Permission denied
--> --> PAP (Password Authentication Protocol) may be flaky.
--> Warning: Could not modify /etc/ppp/chap-secrets: Permission denied
--> --> CHAP (Challenge Handshake) may be flaky.
Это означает, что вы пытаетесь соединиться не от имени суперпользователя. Запустите команду с префиксом sudo или наберите её в терминале суперпользователя. - Во время попытки соединения в терминал выводятся фразы:
--> Unable to run /usr/sbin/pppd.
--> Check permissions, or specify a "PPPD Path" option in wvdial.conf.
Это означает, что вы не установили себе привилегию «Соединяться с Интернет, используя модем». Смотрите пункт 6 вышеизложенной методики подключения. Кроме того, в связи с уже описанной выше путаницей с правами, следует запускать модемное соединение с Интернетом от имени суперпользователя. - При попытке соединения в терминале выводится
--> Cannot open /dev/ttyUSB0: Permission denied
--> The PPP daemon has died: A modem hung up the phone (exit code = 16)
--> Modem not responding.
Иногда нужно подключить какой-нибудь компьютер с Linux на борту к сети Интернет, причем никаких устройств кроме Android-смартфона и USB-кабеля под рукой нет. Хорошо если компьютер - это ноутбук с встроенным WiFi, тогда на смартфоне можно было бы поднять WiFi точку доступа (APN), и подключиться к ней. А что делать, если WiFi в компьютере просто нет? В такой ситуации можно подключиться к сети Интернет через Андроид-смартфон и USB-кабель.
Вначале надо соеденить USB-кабелем смартфон и комптьютер. Затем на смартфоне необходимо активировать USB-модем. В разных телефонах эта активация расположена в разных пунктах меню. Например, в Huawei Honor 6 включение USB-модема происходит так:
Настройки - Еще - Режим модема - USB-модем
А в Samsung Galaxy Tab 4 включение модема расположено в следующем меню:
Настройки - Подключения - Модем и точка доступа - 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.534466] rndis_host 1-1.4:1.0 usb0: register 'rndis_host'
RNDIS device, 76:d4:94:e8:51:98
[ 5945.537574] rndis_host 1-1.4:1.0 enp0s26u1u4 : renamed from usb0
Из этой информации видно, что по USB-интерфейсу было подключено устройство usb0 , которое, видимо, для удобства пользователя было переименовано в enp0s26u1u4 .
Далее надо дать команду ifconfig -a или ip addr , и посмотреть на сетевые устройства, которые видит Linux:
enp0s26u1u4 : flags=4098<BROADCAST,MULTICAST> 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
enp5s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.1.95 netmask 255.255.255.0 broadcast 192.168.1.255
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
2: enp5s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
3: enp0s26u1u4 : <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether 5e:b8:41:95:5c:04 brd ff:ff:ff:ff:ff:ff
Здесь видно, что сетевое устройство enp0s26u1u4 присутсвует в системе, но еще не настроено для возможности передачи данных. Чтобы интернет заработал через это устройство, необходимо выполнить следующие команды (от рута):
ifconfig enp0s26u1u4 up
Все! После такой настройки, интернет через USB-кабель, подключенный к мобильному телефону, должен работать. Настройки USB-модема изменятся следующим образом:
enp0s26u1u4: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> 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<link>
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
Проверить соединение можно командой:
Если ответы от сайта есть, значит все настроено и работает.
Внимание! Многие операторы сотовой связи блокируют траффик, идущий не с телефона, а с устройства, подключенного к телефону. Зачем операторы так поступают - это большая загадка. Операторы определяют такой траффик, обычно, по значению TTL. Для того, чтобы операторское оборудование не воспринимало траффик с компьютера как "неправильный", можно глобально изменить значение TTL на то, которое генерирует сам смартфон. TTL смартфона и компьютера отличаются на единицу. Как это сделать, написано в следующей статье:
Необходимо раздать интернет с компьютера на Android по USB кабелю без root прав? Это довольно просто!
Несмотря на то, что есть технология беспроводной передачи данных Wi-Fi, многие пользователи иногда спрашивают «как раздать интернет с компьютера на телефон Android?». Поэтому было решено написать вам эту подробную статью.
Как раздать интернет с компьютера по USB
Содержание - Как раздать интернет с компьютера по USB:
Есть платная и бесплатная программы. Платная, Reverse +1 — запускает интернет с компьютера на Android в один клик. Бесплатная, ADB RUN — adb комбайн, требует больше действий, для того чтобы активировать раздачу интернет.
Раздать интернет с компьютера на Android по USB кабелю — Reverse +1
Стоимость программы Reverse +1 составляет $3. Для того чтобы купить ее, пишите на e-mail.
1. Активируйте на Android « Отладку по USB «
2. Установите программу Reverse +1 на компьютер
3. Усатновите JAVA на компьютер
4. Подключите Android к компьютеру
5. Запустите программу Reverse +1 и на телефоне разрешите « авторизацию «, если телефон подключался к компьютеру первый раз
6. Разрешите установку приложения на телефон
7. Разрешите передачу интернет к телефону по кабелю
Ваш Android использует интернет с компьютера!
Раздать интернет с компьютера на Android по USB кабелю — Adb Run
1. Активируйте «Меню разработчика» в настройках и далее включите «Отладку по USB» на Android, о том как это сделать читайте здесь
2. Скачайте и установите программу ADB RUN c нашего сайта и ознакомьтесь как она работает
3. Подключите Android к компьютеру
4. Перейдите в раздел «Other command» -> «Reverse tethering (PC Internet to Android)»
5. Дальше некоторые действия необходимо выполнить однократно
- Кликните по пункту «Install Java» и вас перебросит в браузер, установите Java
- Кликните по пункту «Install APK» и на телефоне подтвердите установку приложения
6. Выберите пункт «Run Reverse tethering» для передачи интернета с компьютера по кабелю на Android
ReverseTethering NoRoot PRO
Раздать интернет с компьютера на Android по USB кабелю — ReverseTethering NoRoot PRO
Для того чтобы было более понятно что и как настраивать разделим статью на две части — настройки для Android и для ПК.
Настройки на Android
Установите приложение ReverseTethering NoRoot PRO
Активируйте «Меню разработчика» в настройках и далее включите «Отладку по USB», о том как это сделать читайте здесь
Собственно это все что необходимо сделать на Android устройстве.
Настройки на Компьютере
1. Скачайте ReverseTethering Server на компьютер (версия для Windows, Linux, MacOS). Распакуйте архив с программой
3. Для компьютеров с Windows возможно! Понадобиться установить драйвера Android
Настройка на компьютере завершена.
Раздаем интернет по кабелю на Android
1. Подключаем Android по USB к компьютеру
2. Запускаем на компьютере ReverseTethering Server
3. Интернет по usb на Android уже работает!
Стоить отметить, что приложение ReverseTethering NoRoot имеет ограничения, поэтому в дальнейшем рекомендуется купить полную версию, чтобы пользоваться интернет на телефоне с компьютера, через кабель USB.
Читайте также: