___           ___           ___           ___           ___           ___     
     /\  \         /\__\         /\  \         /\__\         /\  \         /\  \    
    /::\  \       /:/  /        /::\  \       /:/  /        /::\  \       /::\  \   
   /:/\:\  \     /:/  /        /:/\:\  \     /:/__/        /:/\:\  \     /:/\:\  \  
  /::\~\:\  \   /:/  /  ___   /:/  \:\  \   /::\__\____   /::\~\:\  \   /::\~\:\  \ 
 /:/\:\ \:\__\ /:/__/  /\__\ /:/__/ \:\__\ /:/\:::::\__\ /:/\:\ \:\__\ /:/\:\ \:\__\
 \/_|::\/:/  / \:\  \ /:/  / \:\  \  \/__/ \/_|:|~~|~    \:\~\:\ \/__/ \/_|::\/:/  /
    |:|::/  /   \:\  /:/  /   \:\  \          |:|  |      \:\ \:\__\      |:|::/  / 
    |:|\/__/     \:\/:/  /     \:\  \         |:|  |       \:\ \/__/      |:|\/__/  
    |:|  |        \::/  /       \:\__\        |:|  |        \:\__\        |:|  |    
     \|__|         \/__/         \/__/         \|__|         \/__/         \|__|    
       

Обратный модем Android USB

Оглавление

Введение

Это руководство описывает метод получения Интернет соединения от ПК к смартфону/планшету на Android с помощью USB-кабеля. Эта техника называется обратным USB модемом. Она отличается от USB-модема, с помощью которого ты обычно проводишь Интернет с Android на ПК. Есть много причин, почему эта техника нужна:

Этот метод работает по принципу разделения доступа в Интернет. Если твоё Android-устройство способно подключаться к ПК с помощью USB в качестве модема, тогда будет работать и обратный USB модем.

Преимущества:

Недостатки:

Если готов, давай начнем!

Зависимости:

Шаг 1:

ifconfig usb0 10.42.0.1 netmask 255.255.255.0

(Предполагается что нет другого сетевого адаптера USB, в противном случае, твой Android может быть usb1, usb2…)

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:

Настройка твоего ПК завершена !

Шаг 3:

Открой эмулятор терминала на твоем Android. Введи:

su

Введи эти комманды в эмелятор терминала, одинаково для всех ПК ОС:

netcfg rndis0 dhcp

Название интерфейса USB внутри Android может отличаться. Обычно это 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, используй те же самые команды приведенные выше, но замени 10.42.0.2 на 192.168.137.2 (192.168.0.2 для Windows 10), и 10.42.0.1 на 192.168.137.1 (192.168.0.1 для Windows 10)

Для ПК с Mac, замени 10.42.0.2 на 192.168.2.2, и 10.42.0.1 на 192.168.2.1 Сейчас ты уже можешь закрыть эмелятор терминала и начать смотреть фотки котят в Интернете.

Некоторые приложения (скачаные в Google Play, GMail, Facebook…) не распознают подключение к Интернету. Можно попробовать следующий способ (ВНИМАНИЕ: НЕ ПРОВЕРЕНО):

ifconfig rmnet0 0.0.0.0

Имя твоего 3G интерфейса внутри Android может быть другим: ppp0, rmnet0… Введи:

busybox ifconfig

для определения имени.

перед ifconfig rmnet0 ... выше. Это заставит приложения видеть ваше интернет-соединение через USB как 3G!

Настройки USB-модема на Android будут автоматически изменены при отключении USB-кабеля. Чтобы вернуть обратно настройки на ПК, сними флажок «Разрешить другим пользователям сети подключаться через…» в Windows, «Общий доступ к Интернету» на Mac, измени «Общий доступ к другим компьютерам» обратно на «Автоматически (DHCP)» или просто удалите USB-соединение из NetworkManager в Linux.

Упрощенные инструкции (Mac OSX):

Mac: Установи HorNDIS пакет.
Android: Включи USB модем в Настройки > Больше настроек > Модем и точка доступа > USB модем
Подключи USB от Android к ПК.
Mac: Подключи Android в Системные Настройки > Сеть > SAMSUNG_Android
Mac: Добавь общий доступ к Интернету в Системные настройки > Общий доступ > Служба > Общий доступ в Интернет
Android: Рутируй свой Android
Android: “netcfg rndis0 dhcp”
Android: “netcfg” для того чтобы узнать адрес rndis0
Mac: “ifconfig” чтобы посмотреть IP-адрес ПК; используй этот адрес в качестве ввода URL для mc_creator