Isso não é possível. Mas se você tiver um Android enraizado, existe um truque, chamado tethering USB reverso . Confira este artigo , o autor fez isso no Fedora , mas eu acho que não deve haver problemas em conseguir o mesmo no Ubuntu.
Eu tenho um sistema Ubuntu 12.10 no meu PC e um sistema Android 4.1 no meu Galaxy Nexus. Agora eu gostaria de compartilhar a conexão com a Internet do meu PC via USB com o meu telefone. Tenho pesquisado muito com o Google, mas só encontrei respostas sobre como você pode compartilhar a conexão à Internet do telefone com o PC, mas quero o contrário.
Isso não é possível. Mas se você tiver um Android enraizado, existe um truque, chamado tethering USB reverso . Confira este artigo , o autor fez isso no Fedora , mas eu acho que não deve haver problemas em conseguir o mesmo no Ubuntu.
Uma solução de trabalho para mim no Kubuntu 15.10 & amp; Android 4.2.2 estava seguindo
Em suas interfaces / etc / network /, você precisa ter essas duas linhas. Caso contrário, você receberá um no such device
error
allow-hotplug usb0
auto usb0
adb instalado ( apt-get install android-tools-adb
)
No seu android, ative a opção Configurações- > Conexões- > Conexões de rede & > Tethering e ponto de acesso portátil > USB tethering, isso criará uma conexão USB com seu computador que você pode ver com ifconfig
comando no seu computador. Olhe @ o nome da interface que, para mim, é enxf6759e7fbebd
desta vez.
enxf6759e7fbebd Link encap:Ethernet HWaddr a2:61:3c:83:1c:38
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:6 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:464 (464.0 B) TX bytes:0 (0.0 B)
eth0 Link encap:Ethernet HWaddr 50:e5:49:47:f4:fd
inet addr:192.168.178.20 Bcast:192.168.178.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:40894966 errors:0 dropped:0 overruns:0 frame:0
TX packets:86312833 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:20969506400 (20.9 GB) TX bytes:120329513606 (120.3 GB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:30521 errors:0 dropped:0 overruns:0 frame:0
TX packets:30521 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:10868749 (10.8 MB) TX bytes:10868749 (10.8 MB)
Atribua um endereço IP ao seu computador nesta interface de rede com o seguinte comando sudo ifconfig enxf6759e7fbebd 192.168.42.135 netmask 255.255.255.0
em que enxf6759e7fbebd é a interface que você obteve na etapa anterior.
Ativar o IP forwaring com
sudo -- sh -c 'echo 1 > /proc/sys/net/ipv4/ip_forward'
Ative o nat no seu computador com
sudo iptables -t nat -F
sudo iptables -t nat -A POSTROUTING -j MASQUERADE
No seu computador, conecte-se ao seu dispositivo Android com
adb shell
su
em seguida, já tendo sua conexão, você pode verificar com o comando busybox ifconfig -a
rndis0 Link encap:Ethernet HWaddr FA:08:D6:1A:35:90
inet addr:192.168.42.129 Bcast:192.168.42.255 Mask:255.255.255.0
inet6 addr: fe80::f808:d6ff:fe1a:3590/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:4 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:564 (564.0 B)
você pode adicionar a rota padrão ao endereço de rede do seu computador que você fixou no ponto 2 com busybox route add default gw 192.168.42.135 dev rndis0
e pronto (você pode verificar suas rotas com o comando busybox route
)
Eu fiz um script que corri depois de ativar a opção USB Tethering (ponto 1 acima) que faz o trabalho para mim
#!/bin/bash
interfaceName=$(ifconfig|grep enx|awk '{print $1}') #Getting interface name
sudo ifconfig $interfaceName 192.168.42.135 netmask 255.255.255.0 # setting Computer IP Address
sudo -- sh -c 'echo 1 > /proc/sys/net/ipv4/ip_forward' # Enabling IP Forwarding
sudo iptables -t nat -F
sudo iptables -t nat -A POSTROUTING -j MASQUERADE
adb shell "su -c 'busybox route add default gw 192.168.42.135 dev rndis0'"
Encontrei uma ótima ferramenta link . É bastante simples de usar e não requer permissões de root no seu telefone.
Eu testei o SimpleRT usando o Sony Z3 Compact e o Ubuntu 16.10 instalado no laptop.
Os passos são os seguintes:
route | grep '^default' | grep -o '[^ ]*$'
./simple-rt
Problemas (retirados da página oficial): Alguns aplicativos não reconhecem a conexão à Internet com acesso reverso devido à política do ConnectivityManager. Basta deixar a conexão WiFi ou 3G ativa, a conexão passará pelo SimpleRT mesmo assim.