Android - раздаем 2G/3G интернет на Linux
Хочу поделиться своим опытом раздачи 3G интернета с Android устройств на хост Linux с использованием USB шнурка.
Козалось бы все очень просто: Заходим в настройки, режим устройства и включаем режим модема.
Я не знаю как это делать на винде, так и не получилось, но на Linux системе оказалось просто. Ядро само определило что к нему подключена сетевая и обозвала ее "usb0", затем в дело пошел dhclient, ктр получил ip адреса, маршруты и dns от телефона. И это все автоматически без танцев с бубнами.
Но вот незадача, интернет не заработал. Я начал проверять почему и оказалось, что сотовый оператор тупо блокирует DNS запросы от всех устройств, кроме самого телефона.
nslookup ya.ru
Server: 10.149.112.1
Address: 10.149.112.1#53
** server can't find ya.ru: REFUSED
ping 93.158.134.3
PING 93.158.134.3 (93.158.134.3) 56(84) bytes of data.
64 bytes from 93.158.134.3: icmp_seq=1 ttl=55 time=44.7 ms
64 bytes from 93.158.134.3: icmp_seq=2 ttl=55 time=44.4 ms
64 bytes from 93.158.134.3: icmp_seq=3 ttl=55 time=44.2 ms
^C
--- 93.158.134.3 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 44.277/44.493/44.742/0.191 ms
Ха, у нас же линукс. Редактируем файл /etc/dhcp/dhclient.conf и добавляем в него следующее:
interface "usb0"{
prepend domain-name-servers 77.88.8.8;
prepend domain-name-servers 77.88.8.1;
}
Выключаем режим модема, затем включаем и радуемся интернету :)))
П.С. Сервера днс я выбрал от яндекса, вы можете и мегалайновские поставить, главное не гугл. Они далеко и замедлица работа в браузере.
http://linuxcenter.kz/page/android-%D1%80%D0%B0%D0%B7%D0%B4%D0%B0%D0%B5%D0%BC-2g3g-%D0%B8%D0%BD%D1%82%D0%B5%D1%80%D0%BD%D0%B5%D1%82-%D0%BD%D0%B0-linux
|