2016-12-28, 12:34:18
Здравейте, колеги. Понеже има случаи, в които се налага да се свърже телефон или таблет към LAN, ще опиша тук моя случай и прогреса до момента.
Необходими са:
Да уточня още в началото – проложеният по-долу метод е далеч от завършено решение и надали някога ще бъде до степента Plug'n Play.
Ако някой иска да го приложи с цел да ползва интернет / мрежови достъп с минимални главоболия, бих му препоръчал да се сдобие с преносим рутер от типа на TP-Link WR-802N. Малко над цената на един качествен USB LAN е, но улеснението е огромно. Ако все пак целта е „твърда връзка“ – инструкциите са по-долу.
Android в масовите устройства е с непълна Ethernet поддръжка (ако не броим Nexus-ите), а някой производители стигат още по-нататък, като направо я „изключват“, освен в модели таблети само с WiFi (без 3G/4G) (10х Samsung). Други пък си работят нормално, доколкото това може да се каже. За тест имах под ръка таблет Lenovo A7600F с 4.4.2. В менюто си той има опция Ethernet, но тя остана неактивна и при двата адаптера, с които разполагам. Може бих имал успех с ASIX AX88772 (USB 2.0 10/100 LAN), но не разполагам с такъв.
Ако chipset-а не се поддържа има 2 опции: смяна на Kernel с такъв с включена поддръжка или компилиране на нов Kernel с включени в него необходимите драйвъри. В случая аз използвам адаптер с чипсет ASIX AX88179. Първоначално се спрях на него, понеже има драйвъри за почти всички OS. Впоследствие се оказа, че явно в Kernel-a на Android има определен набор от драйвъри, сред които са и ASIX. С оглед на това според мен е най-добре да се избере адаптер с чипсет от списъка, с цел да се осигури максимална съвместимост с различни устройства.
Доколкото разбирам е желателно да се прекъсне всякаква друга форма на комуникация – Wireless и Mobile Data, понеже водят до проблеми.
Наборът от команди, с които може да се работи, също е ограничен в Android 6. Например netcfg е премахната. Опитът ми се ограничава до Samsung Galaxy Note4 и S5Neo с Marshmallow, понеже към момента разполагам само с такива руутнати устройства.
За по-стари версии на Android може да се работи с приложението и иснтрукциите в тази тема: http://forum.xda-developers.com/showthre...?t=2706211 Съпорта на приложението спира при Lollipop, но пак зависи от телефона.
Първо трябва да се провери разпознава ли телефона LAN адаптера. За целта аз използвах USB Host Controller.
На вариант 1 се вижда, че адаптера е разпознат и показва модела на чипсета. На вариант 2 обаче много измамно показва, че става въпрос за 10/100 Ethernet адаптер, без обаче да можем да работим с него.
Приемаме, че адаптера се разпознава и продължаване с активирането му. В Terminal Emulator въвеждаме следните комадни:
За да проверим какво е положението при адаптерите в момента
Включва итерфейса. Ако не изпише нищо, значи всичко е ОК
Ако ще се взема автоматично IP адрес от DHCP сървър в мрежата
За статично IP
Резултат до момента
Необходими са:
- Android у-во с ROOT
- тествам с Samsung Galaxy Note 4 (6.0.1)
- Busybox
- USB LAN адаптер с chipset, поддържан от Kernel-а на Android устройството.
- тествам с ASIX AX88179 (USB Gigabit LAN + 3 port USB 3.0 Hub)
- USB OTG кабел
- LAN кабел
- USB Host Controller App – https://play.google.com/store/apps/detai...controller
- Terminal Emulator - Примерно https://play.google.com/store/apps/detai...term&hl=en
- Поне базови познания за Linux и Networking
Да уточня още в началото – проложеният по-долу метод е далеч от завършено решение и надали някога ще бъде до степента Plug'n Play.
Ако някой иска да го приложи с цел да ползва интернет / мрежови достъп с минимални главоболия, бих му препоръчал да се сдобие с преносим рутер от типа на TP-Link WR-802N. Малко над цената на един качествен USB LAN е, но улеснението е огромно. Ако все пак целта е „твърда връзка“ – инструкциите са по-долу.
Android в масовите устройства е с непълна Ethernet поддръжка (ако не броим Nexus-ите), а някой производители стигат още по-нататък, като направо я „изключват“, освен в модели таблети само с WiFi (без 3G/4G) (10х Samsung). Други пък си работят нормално, доколкото това може да се каже. За тест имах под ръка таблет Lenovo A7600F с 4.4.2. В менюто си той има опция Ethernet, но тя остана неактивна и при двата адаптера, с които разполагам. Може бих имал успех с ASIX AX88772 (USB 2.0 10/100 LAN), но не разполагам с такъв.
Ако chipset-а не се поддържа има 2 опции: смяна на Kernel с такъв с включена поддръжка или компилиране на нов Kernel с включени в него необходимите драйвъри. В случая аз използвам адаптер с чипсет ASIX AX88179. Първоначално се спрях на него, понеже има драйвъри за почти всички OS. Впоследствие се оказа, че явно в Kernel-a на Android има определен набор от драйвъри, сред които са и ASIX. С оглед на това според мен е най-добре да се избере адаптер с чипсет от списъка, с цел да се осигури максимална съвместимост с различни устройства.
Доколкото разбирам е желателно да се прекъсне всякаква друга форма на комуникация – Wireless и Mobile Data, понеже водят до проблеми.
Наборът от команди, с които може да се работи, също е ограничен в Android 6. Например netcfg е премахната. Опитът ми се ограничава до Samsung Galaxy Note4 и S5Neo с Marshmallow, понеже към момента разполагам само с такива руутнати устройства.
За по-стари версии на Android може да се работи с приложението и иснтрукциите в тази тема: http://forum.xda-developers.com/showthre...?t=2706211 Съпорта на приложението спира при Lollipop, но пак зависи от телефона.
Първо трябва да се провери разпознава ли телефона LAN адаптера. За целта аз използвах USB Host Controller.
На вариант 1 се вижда, че адаптера е разпознат и показва модела на чипсета. На вариант 2 обаче много измамно показва, че става въпрос за 10/100 Ethernet адаптер, без обаче да можем да работим с него.
Приемаме, че адаптера се разпознава и продължаване с активирането му. В Terminal Emulator въвеждаме следните комадни:
За да проверим какво е положението при адаптерите в момента
Код:
ifconfig
Включва итерфейса. Ако не изпише нищо, значи всичко е ОК
Код:
su
busybox ifconfig eth0 up
Ако ще се взема автоматично IP адрес от DHCP сървър в мрежата
Код:
dhcpcd eth0
За статично IP
Код:
ifconfig eth0 X.X.X.X netmask 255.255.255.0
route add default gw X.X.X.X dev eth0
setprop net.eth0.dns1 X.X.X.X
setprop net.eth0.dns2 X.X.X.X
Резултат до момента
- Адаптера е разпознат
- DHCP работи
- Ping имам само като root
- Интернет няма
- При сканиране на портовете на телефона (от друг телефон в мрежата) не открива отворени портове, дори когато е страртиран SSH Server (който функционира нормално по Wireless)
OnePlus 7T HD1900 256GB