Страница 5 из 8
Re: Подключение модемов напрямую через PPP при помощи скриптов.
Добавлено: 31 авг 2012, 12:36
Olej
dmitriev писал(а): вам его нужно поместить в /system/bin Android, а для этого вам нужен adb ...
У меня система Андроид смонтирована RO и ничего туда поместить не удается.
А перемонтировать нельзя, так как
Что-то я помню, что такой вопрос задавался при инсталляции, типа: смонтировать /system READ-ONLY ... с дефаултным ответом Yes.
Так, ничего не путаю?
(я точно помню, что на такое наглое предложение я отвечал No!
... но не сильно вспомню где это было - я могу повторить, в VirtualBox это ... "что 2 пальца..."
- и проверить)
Не исключено, что вам придётся переинсталлировать Android.
Re: Подключение модемов напрямую через PPP при помощи скриптов.
Добавлено: 31 авг 2012, 14:00
Olej
dmitriev писал(а):
Так удалось какой-нибудь сайт открыть в браузере Андроида?
Узнаёте?
Re: Подключение модемов напрямую через PPP при помощи скриптов.
Добавлено: 31 авг 2012, 14:14
Olej
Olej писал(а):Узнаёте?
А теперь по порядку...
1. пришлось приделать к Android ещё один сетевой интерфейс - внутренний, без выхода ни в LAN, ни внаружу... - именно для того, чтобы через него цепляться adb, но можно было DOWN основной Ethernet интерфейс, чтобы роутинг и трафик внаружу шли исключительно через ppp0 (USB модем):
- android-x86-4.0-RC2-eeepc.iso - Свойства.png (60.13 КБ) 8344 просмотра
Эта подсеть видится с хост-машины через интерфейс:
Код: Выделить всё
[olej@nvidia ~]$ ifconfig vboxnet0
vboxnet0 Link encap:Ethernet HWaddr 0A:00:27:00:00:00
inet addr:192.168.56.1 Bcast:192.168.56.255 Mask:255.255.255.0
inet6 addr: fe80::800:27ff:fe00:0/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:45 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 b) TX bytes:6095 (5.9 KiB)
Т.е. с этой сети адреса будут 192.168.56.*
2. можно запускать Android ...
Можно рассмотреть, что там я
через терминал Android:
2.1. подымаю eth1 с IP 192.168.56.20, теперь с хоста этот интерфейс доступен:
Код: Выделить всё
[olej@nvidia ~]$ ping 192.168.56.20
PING 192.168.56.20 (192.168.56.20) 56(84) bytes of data.
64 bytes from 192.168.56.20: icmp_req=1 ttl=64 time=0.383 ms
64 bytes from 192.168.56.20: icmp_req=2 ttl=64 time=0.279 ms
64 bytes from 192.168.56.20: icmp_req=3 ttl=64 time=0.277 ms
^C
--- 192.168.56.20 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 1999ms
rtt min/avg/max/mdev = 0.277/0.313/0.383/0.049 ms
2.2. останавливаю в DOWN eth0.
2.3. всё это видно
предпоследним netcfg ...
Re: Подключение модемов напрямую через PPP при помощи скриптов.
Добавлено: 31 авг 2012, 14:21
Olej
Olej писал(а):2.3. всё это видно предпоследним netcfg ...
Теперь начинаем подымать PPP ...
Я не люблю уродоваться в графике, с мышкой, да ещё и в виртуальном экране виртуальной машины.
Поэтому делаем это из
терминала Linux через вот тот новый интерфейс eth0:
3.
Код: Выделить всё
[olej@nvidia ~]$ adb connect 192.168.56.20
connected to 192.168.56.20:5555
[olej@nvidia ~]$ adb root
restarting adbd as root
[olej@nvidia ~]$ adb connect 192.168.56.20
connected to 192.168.56.20:5555
[olej@nvidia ~]$ adb devices
List of devices attached
192.168.56.20:5555 device
Именно так, в такой последовательности!
Чтобы попасть в Android как root.
Код: Выделить всё
[olej@nvidia ~]$ adb -s 192.168.56.20:5555 shell
root@eeepc:/ # whoami
root
4. скрипт pppd заготовлен:
Код: Выделить всё
root@eeepc:/ # cat /etc/ppp/peers/mts
ttyUSB0
460800
crtscts
defaultroute
modem
noauth
noipdefault
persist
updetach
usepeerdns
user mobile
password internet
connect '/system/bin/chat "" AT OK ATDT#777 CONNECT'
5. Коннект!
Код: Выделить всё
2|root@eeepc:/ # pppd call mts
root@eeepc:/ # netcfg
lo UP 127.0.0.1/8 0x00000049 00:00:00:00:00:00
ifb0 DOWN 0.0.0.0/0 0x00000082 4a:f4:6d:2f:a6:63
ifb1 DOWN 0.0.0.0/0 0x00000082 1a:65:7b:ca:da:1b
sit0 DOWN 0.0.0.0/0 0x00000080 00:00:00:00:00:00
ip6tnl0 DOWN 0.0.0.0/0 0x00000080 00:00:00:00:00:00
eth0 DOWN 192.168.1.20/24 0x00001002 08:00:27:eb:e0:88
eth1 UP 192.168.56.20/24 0x00001043 08:00:27:b8:10:bb
ppp0 UP 77.52.143.240/32 0x000010d1 00:00:00:00:00:00
root@eeepc:/ # ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=48 time=503 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=48 time=150 ms
64 bytes from 8.8.8.8: icmp_seq=3 ttl=48 time=135 ms
^C
--- 8.8.8.8 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 135.543/263.113/503.004/169.743 ms
Re: Подключение модемов напрямую через PPP при помощи скриптов.
Добавлено: 31 авг 2012, 14:29
dmitriev
Не исключено, что вам придётся переинсталлировать Android
А я его и не инсталлировал! Работаю в Live системе с флешки.
Инсталляция у меня на Toshibe не получается.
Узнаёте?
Ещё бы! Вы просто гений Олег!
Если нам удастся добиться такого же результата на реальном Андроне, то статья будет сенсационная. Все планшеты станут независимы от WIFI и будут работать с модемов!
Коннект!
Даешь коннект!
Re: Подключение модемов напрямую через PPP при помощи скриптов.
Добавлено: 31 авг 2012, 14:30
Olej
Olej писал(а):
5. Коннект!
Неожиданность ... приятная (хоть одна!):
Код: Выделить всё
root@eeepc:/ # nslookup rus-linux.net
Server: 80.255.64.23
Address 1: 80.255.64.23
Name: rus-linux.net
Address 1: 77.222.42.148 vip-49.sweb.ru
Смотрите через какой DNS разрешается имя в IP: 80.255.64.23 - это тот DNS (один из) который даёт мой провайдер (МТС)
при установлении PPP!
Смотрим (это уже чисто Android-ные штучки ... подсмотрел у кого-то в скриптах):
Код: Выделить всё
root@eeepc:/ # getprop net.dns1
80.255.64.23
root@eeepc:/ # getprop net.dns2
80.255.64.24
Вот они 2 DNS!
И
в итоге - картинка форума в браузере Android, которую я нарисовал выше, и повторять не буду...
Re: Подключение модемов напрямую через PPP при помощи скриптов.
Добавлено: 31 авг 2012, 15:08
Olej
dmitriev писал(а):Не исключено, что вам придётся переинсталлировать Android
А я его и не инсталлировал! Работаю в Live системе с флешки.
Инсталляция у меня на Toshibe не получается.
LiveUSB можно тоже попробовать загрузить с помощью QEMU...
Я посмотрю что получается.
Инсталляция у вас на Toshibe может не получаться и потому, что вы взяли не самый подходящий для неё образ из тех 5-6-ти, выложенных на сайте.
Я тоже сначала взял тот, что у вас, но потом сменил...
Re: Подключение модемов напрямую через PPP при помощи скриптов.
Добавлено: 31 авг 2012, 15:21
Olej
Olej писал(а):Неожиданность ... приятная (хоть одна!):
Никак не мог придумать посмотреть роутинг по интерфейсам (очень важно) ... достал
:
И с любыми опциями и параметрами вменяемыми - то же самое...
Но это из комплекта toolbox, а там нет никакого ни хэлпа, ни мана...
Код: Выделить всё
root@eeepc:/ # which route
/system/bin/route
root@eeepc:/ # ls -l /system/bin/route
lrwxrwxrwx root root 2012-08-30 17:05 route -> toolbox
Но такой же есть в комплекте busybox. Вот оно - что и требовалось доказать!:
Код: Выделить всё
root@eeepc:/ # busybox route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 80.255.73.34 0.0.0.0 UG 0 0 0 ppp0
80.255.73.34 0.0.0.0 255.255.255.255 UH 0 0 0 ppp0
192.168.56.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
Код: Выделить всё
root@eeepc:/ # which busybox
/system/xbin/busybox
root@eeepc:/ # ls -l /system/xbin/route
lrwxrwxrwx root root 2012-08-30 17:05 route -> busybox
root@eeepc:/ # echo $PATH
/sbin:/vendor/bin:/system/sbin:/system/bin:/system/xbin
Re: Подключение модемов напрямую через PPP при помощи скриптов.
Добавлено: 31 авг 2012, 15:35
Olej
dmitriev писал(а):
А я его и не инсталлировал! Работаю в Live системе с флешки.
Хорошо, уточняемся:
- каким способом вы делали флешку LibeUSB?
- вот так, как я
сейчас делаю (буду проверять)? :
Код: Выделить всё
[root@nvidia Android-x86]# ls -l android-x86-4.0-RC2-eeepc.iso
-rw-rw-r--. 1 olej olej 187695104 авг. 29 19:06 android-x86-4.0-RC2-eeepc.iso
[root@nvidia Android-x86]# time sudo dd if=android-x86-4.0-RC2-eeepc.iso of=/dev/sdc bs=10M
17+1 записей считано
17+1 записей написано
скопировано 187695104 байта (188 MB), 73,5477 c, 2,6 MB/c
real 1m13.584s
user 0m0.002s
sys 0m0.335s
Re: Подключение модемов напрямую через PPP при помощи скриптов.
Добавлено: 31 авг 2012, 17:37
dmitriev
Я делал флешку при помощи программы unetbootin, которая в одноименном пакете есть в репозитарии Федоры.
Кроме того, сделал также LiveCD для старого десктопа, не поддерживающего загрузку с USB (но на нем система почему-то не разворачивается).
И там и там файловая система RO.
Несколько лет назад, когда в моде был Knoppix, c ним было то же самое (RO). Но там легко побеждалось командой