- Раздача интернета с компьютера на Android через USB
- Телефон на базе Android как модем для Ubuntu
- Задача 1. Настройка браузера (Firefox) для выхода в интернет, используя телефон
- Шаг 2: Загрузка Android SDK (Software Development Kit или devkit — комплект средств разработки)
- Задача 2. Настройка всей системы (Gnome) для выхода в интернет, используя телефон
- Известные проблемы
- Как использовать смартфон на андроиде в качестве 2G/3G/LTE модема в Ubuntu
Раздача интернета с компьютера на Android через USB
Собственно сабж. Интернет мобильный тут очень дорогой и нет безлимитных тарифов, да и на компьютере интернет не быстрый, был бы быстрый — купил бы wi-fi роутер. Слышал вот о таком способе, но на Linux’e не пойму как такое сделать.
ОС на компьютере — Kubuntu, телефон — Samsung Galaxy Ace.
DLink DWA-140 или TP-LINK TL-WN821N/NC стоят порядка 500р, не вариант?
ИМХО, проще будет softAP поднять. Как конкретно — не подскажу.
без рута никак (рут нужен для смены default gateway) http://habrahabr.ru/post/101797/
Нет, я не собираюсь ничего покупать для такого медленного интернета. Оно того не стоит.
Очевидно же что это под M$ Шindows. Мне нужно тоже самое только под Linux.
А компьютер, часом, не ноутбук? Там нет Wi-fi?
backbone ★★★★★ ( 17.11.12 11:15:23 MSK )
Последнее исправление: backbone 17.11.12 11:16:05 MSK (всего исправлений: 1)
Ну тогда один путь. Получать Root на телефоне и прописывать ip, mask, gateway вручную.
Такс, Root умею получать, остальное не понимаю.
Анонимус ссылку подсказал http://habrahabr.ru/post/101797/. Пункт «Настраиваем коммуникатор». Это оно.
На компьютере настраивается netfilter: forwarding, nat; правил для iptables в сети много, к примеру у меня такие firewall.sh.
Ну что же, спасибо. Буду разбираться. 🙂
На компьютере настраивается netfilter: forwarding, nat; правил для iptables в сети много, к примеру у меня такие firewall.sh.
Я же новичок в этом. Ничего не понял.
Просто в том скрипте строки
EXTIF=eth0 INTIF=eth1 INTIF2=wlan0
EXTIF=ppp0 INTIF=usb0 INTIF2 можно вообще убрать, если раздаёте инет только по usb.
Запускать скрипт можно вручную (во время настройки), потом можно поместить в /etc/network/if-pre-up.d.
Что здесь первое и второе? Первое я так понимаю это подключение с которого раздается интернет что ли?
Ну EXT-внешний (провайдер), INT-внутренний(телефон). Запускать скрипт надо с правами root.
razip@Razip-Linux-Kubuntu:~$ sudo ./inet.sh [sudo] password for razip: Bad argument `ACCEPT’ Try `iptables -h’ or ‘iptables —help’ for more information. Bad argument `state’ Try `iptables -h’ or ‘iptables —help’ for more information. Bad argument `ppp0′ Try `iptables -h’ or ‘iptables —help’ for more information. Bad argument `ACCEPT’ Try `iptables -h’ or ‘iptables —help’ for more information. Bad argument `usb0′ Try `iptables -h’ or ‘iptables —help’ for more information. Bad argument `REJECT’ Try `iptables -h’ or ‘iptables —help’ for more information. razip@Razip-Linux-Kubuntu:~$
Вот выхлоп от запуска скрипта на компьютере. В чем проблема?
Если удалили строку INTIF2=. то удалять переменную $INTIF2 нужно отовсюду, так как она будет заменена пустой строкой.
#!/bin/sh EXTIF=ppp0 INTIF=usb0 # delete all existing rules iptables -F iptables -t nat -F iptables -t mangle -F iptables -X # Always accept loopback traffic iptables -A INPUT -i lo -j ACCEPT # Allow established connections, and those not coming from the outside iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A INPUT -m state --state NEW -i $INTIF -j ACCEPT iptables -A INPUT -m state --state NEW -i $INTIF2 -j ACCEPT iptables -A FORWARD -i $EXTIF -o $INTIF -m state --state ESTABLISHED,RELATED -j ACCEPT # Allow outgoing connections from the LAN side iptables -A FORWARD -i $INTIF -o $EXTIF -j ACCEPT # Connect LANs iptables -A FORWARD -i $INTIF -o $INTIF2 -j ACCEPT iptables -A FORWARD -i $INTIF2 -o $INTIF -j ACCEPT # Masquerade iptables -t nat -A POSTROUTING -o $EXTIF -j MASQUERADE # Don't forward from the outside to the inside iptables -A FORWARD -i $EXTIF -o $EXTIF -j REJECT iptables -A FORWARD -i $EXTIF -o $INTIF -j REJECT # masked for ssh to LAN # MTU iptables -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu echo 1 > /proc/sys/net/ipv4/ip_forward for f in /proc/sys/net/ipv4/conf/*/rp_filter ; do echo 1 > $f ; done
Вот так вот? Поправьте пожалуйста. Я вам буду очень благодарен.
Да, но надо убедиться, что интерфейсы называются именно ppp0 и usb0.
/sbin/ifconfig ppp0; /sbin/ifconfig usb0
В Network Manager’е посмотрел названия, все верно. И консоль тоже подтвердила наличие.
В каком порядке выполнять действия?
- Программа Wired Tether.
- Скрипт для программы Gscript Lite.
- Скрипт на компьютере.
Скрипт на компьютере —> Программа Wired Tether —> Скрипт для программы Gscript Lite
В таком порядке выполнять?
Да, главное, чтобы Wired Tether была до Gscript Lite, иначе маршруты собьются. А на телефоне нет встроенной функции USB Tethering, что пришлось использовать доп. программу?
Wired Tether это как понимаю расшифровывается как — «телефон как модем»? Если так, то есть такая функция.
Да, поэтому Wired Tether не нужен, в настройках телефона достаточно включить эту функцию (возможно, каждый раз при включении кабеля).
Запустил скрипт из которого я убрал не нужное. Не работает. Видимо что то не так сделал. :с Не могли бы взять оригинал и выпилить от туда переменную INTIF2 а то мои знания Bash не позволяют это корректно сделать.
Телефон на базе Android как модем для Ubuntu
Пользователи Android наверняка сталкивались с ситуацией, когда нужен Интернет на компьютер или ноут/нетбуке, а в качестве модема нyжно использовать свой телефон. У обладателей ОС Windows или Mac проблем с таким использованием телефона не возникало — для этих целей есть масса программ, например, одна из них — многим известная PdaNet.
А вот для Linux-систем такого очевидного и всем известного решения не было (во всяком случае, как показывает практика опросов «знатоков» на различных форумах). Пришлось искать ответ самостоятельно. Решение-таки было найдено — это программа Proxoid. Однако, если, например, выше упомянутый PdaNet устанавливается за один клик (в Windows — точно, про Mac не знаю, не пробовал), то установка Proxoid требует определенных знаний у неопытного Linux-пользователя, каковым я и являюсь.
Ниже идет мой дополненный и адаптированный под Linux-чайников перевод инструкции, как настроить Proxoid в ОС Ubuntu.
Данное руководство описывает, как установить и использовать Proxoid в Linux (проверено с Ubuntu 9.04.)
Задача 1. Настройка браузера (Firefox) для выхода в интернет, используя телефон
Шаг 0: Скачать и установить Proxoid на телефон
На своем Android заходим в Market, ищем в нем «Proxoid» и нажимаем «Установить». Или можно скачать приложение отсюда. Программе потребуется только доступ к Интерент (сетевое соединение). Никаких root прав не нужно!
Соединение будет осуществляться через USB. Для работы программы также необходимо включить «Отладку через USB». Для этого заходим в главном меню в раздел «Настройки» -> «Приложения» -> «Разработка» -> ставим галочку «Отладка по USB».
Шаг 1: Настройка udev (автомонтирование usb накопителей в Linux) для распознания вашего телефона
Первым делом подключаем телефон к компьютеру через USB. Затем создаем файл:
SUBSYSTEM==»usb», ATTR==»22b8″, MODE=»0666″, GROUP=»plugdev»
SUBSYSTEM==»usb», ATTR==»0bb4″, MODE=»0666″, GROUP=»plugdev»
SUBSYSTEM==»usb», SYSFS==»04e8″, MODE=»0666″, GROUP=»plugdev»
SUBSYSTEM==»usb», SYSFS==»18d1″, MODE=»0666″, GROUP=»plugdev»
Эти строки работают для всех протестированных телефонов: HTC (G1, Tatoo, Nexus One), Motorola Milestone, Samsung Galaxy (I7500), Acer Liquid (проверено мною).
Убедитесь, что ваша учетная запись в Ubuntu находится в группе «plugdev«. Добавить пользователя в эту группу можно командой:
useradd -g plugdev *user_name*
где *user_name* — имя пользователя.
Далее в командной строке проверьте состояние USB устройств:
Должен вернуться результат вроде такого:
Bus 001 Device 005: ID 0bb4:0c02 High Tech Computer Corp.
После этого перезапустите udev, используя следующую команду:
sudo /etc/init.d/udev restart
Шаг 2: Загрузка Android SDK (Software Development Kit или devkit — комплект средств разработки)
Загрузите Android SDK отсюда (для Linux — это файл «android-sdk_r06-linux_86.tgz»). Распакуйте файл командой:
где %downloadfile% — имя загруженного файла, или используя GUI — кому как привычнее.
Шаг 3: Туннелирование
Теперь вы можете настроить туннелирование между вашим телефоном и компьютером. Перейдите в поддиректорию инструментов (tools) директории загруженного вами Android SDK. Далее введите команду:
./adb forward tcp:8080 tcp:8080
Шаг 4: Настраиваем proxy-server в браузере
Ваш браузер должен использовать proxy-server, запущенный на localhost, порт: 8080. Для Firefox это делается так:
Инструменты –> Настройка –> Дополнительно –> Вкладка «Сеть» -> Настроить.
В открывшемся окне сделайте следующие настройки:
Наконец, отключите «работу в автономном режиме» в меню «Файл».
Шаг 5: запуск Proxoid на вашем телефоне
Запустите приложение proxoid на вашем телефоне и поставьте галочку в пункте «Start/Stop Proxoid».
На этом описание первой задачи завершено. Должно работать 🙂
Задача 2. Настройка всей системы (Gnome) для выхода в интернет, используя телефон
Запускаем сетевые настройки, используя команду:
Нажимаем «Ручная настройка Proxy» (1) (Manual Proxy Configuration) и отмечаем «Использовать этот Proxy для всех протоколов» (2) (Check Use the same proxy for all protocols). Затем заполняем поля (3):
HTTP Proxy: localhost
Port: 8080
Наконец, нажимаем «Применить ко всей системе» (4) (Apply System-wide).
Известные проблемы
Что бы проверить, правильно ли распознано ваше устройство с помошью ./adb, запустите следующую команду, находясь в поддиректории tools директории куда распакован Android SDK:
В ответ должна быть возвращена следующая форма:
* daemon not running. starting it now *
* daemon started successfully *
List of devices attached
HTXXNKFXXXXX device
Если ваш телефон не распознан системой — попробуйте перезагрузить (выключить и включить) ваш компьютер не отключая телефон от USB.
Надеюсь, данный мануал поможет пользователя Android и Ubuntu. Эта часть соединения Android -> Ubuntu мою решена. Следующая задача — наоборот, раздавать интернет с Ubuntu на Android — но это совсем другая история.
Как использовать смартфон на андроиде в качестве 2G/3G/LTE модема в Ubuntu
Всем привет. Вы наверное часто попадали в ситуацию, когда поблизости нет точки доступа Wi-Fi, а на руках у вас смартфон. Сегодня я расскажу, и покажу вам, как использовать смартфон в качестве 2G/3G/LTE модема в Ubuntu.
Нам понадобится смартфон (LG Optimus L7) и кабель для подключения к компьютеру (USB на microUSB). Приступим.
Подключите смартфон к компьютеру. Если появилось окошко с требованием выбрать тип подключения, то выбираем «Общий USB-модем» (остальные шаги вы можете пропустить и перейти к настройке на ПК). Если нет, то откройте шторку и выберите второе сообщение «Нажмите для других опций USB»
Далее откроется меню выбора тапа USB соединения. Выбираем «Общий USB-модем»
Соглашаемся использовать в режиме USB маршрутизатора.
Ждем окончания подключения.
Открываем шторку еще раз, и проверяем.
«Маршрутизация USB включена» — все сделано правильно.
Приступаем к настройке на ПК. После подключения откройте меню «Сеть» в трей. Нам нужно настроить новое соединение. Для этого из меню выберите пункт Новое подключение в мобильной сети GSM:
Нажмите на кнопку «Продолжить»
Из списка стран выберите «Российская Федерация«, и потом нажмите на кнопку «Продолжить«.
Если оператор не определился автоматически, то выбираем из списка.
Точку доступа APN и тарифный план не надо трогать. «Продолжить»
Проверьте правильность ввода настроек. Если все правильно, то «Применить»
Откройте еще раз меню «Сеть» в трей. Как видно, соединение у нас установлено успешно.
Попробуйте открыть какой-нибудь сайт в браузере.