среда, 23 сентября 2015 г.

Раздать интернет с пк на андроид по bluetooth

Рассмотрим способ получения интернета на Андроид устройство с компьютера через bluetooth.


 На Андроид нужны:

1.Root

2.busybox

3.Эмулятор терминала


Соединяем Андроид с ПК  при помощи bluetooth
На андроид девайсе находим настройки > Еще > Режим модема > Bluetooth-модем и ставим галку.
В Линукс заходим в Preferences > Networking и видим Bluetooth интерфейс изначально он выключен чтобы использовать его как сетевое устройство надо включить нажав на кнопку ON.

В андроид устройстве появится уведомление с иконкой bluetooth и надписью Включен режим модема.
ПК и Андроид устройству будут присвоены IP адреса.


Настраиваем Linux

sudo dhclient bnep0

Включаем пересылку пакетов между сетевыми интерфейсами

sudo sysctl -w net.ipv4.ip_forward=1

sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE


POSTROUTING — через эту цепочку проходят все исходящие пакеты, поэтому именно в ней целесообразно проводить операции маскарадинга. (SNAT и MASQUERADE).

MASQUERADE — подменяет адрес источника для исходящих пакетов адресом того интерфейса, с которого они исходят, то есть осуществляет маскарадинг. Такая операция позволяет, например, предоставлять доступ в Интернет целым локальным сетям через один шлюз.

 NAT (от англ. Network Address Translation — «преобразование сетевых адресов») — это механизм в сетях TCP/IP, позволяющий преобразовывать IP-адреса транзитных пакетов. Также имеет названия IP Masquerading, Network Masquerading и Native Address Translation.

iptables — утилита командной строки, является стандартным интерфейсом управления работой межсетевого экрана

eth0 - название интерфейса, через который доступен интернет.

bnep0 - название интерфейса bluetooth


На Android

В эмуляторе терминала наберите вместо 192.168.42.177 адрес bluetooth в Linux.

su

Смотрим название интерфейса bluetooth

netcfg

busybox route add default gw 192.168.42.177 dev bt-pan



Открываем браузер на устройстве Android и пользуемся интернетом.