Não é possível executar o ping \ trace win10 pc a partir do dispositivo Android via rede local

0

Rede Wi-Fi local 5g 192.168.2.0/24

ip do dispositivo Android 5.1.1 \ CyanogenMod 12.1: 192.168.2.222 (ubeogesh-opo) (eu uso o jackpal.androidterm para executar comandos nele)

Windows 10 ip do pc: 192.168.2.150 (ubeogesh-pc)

Firewall do Windows desativado, descoberta de rede ativada (para todos os perfis)

IP do roteador: 192.168.2.1

Ping do PC para o Android:

Pinging 192.168.2.222 with 32 bytes of data:
Reply from 192.168.2.222: bytes=32 time=73ms TTL=63

Traceroute do PC para o Android:

Tracing route to ubeogesh-opo [192.168.2.222]
over a maximum of 30 hops:

  1     1 ms    <1 ms    <1 ms  router.asus.com [192.168.2.1]
  2   308 ms     1 ms     1 ms  ubeogesh-opo [192.168.2.222]

Trace complete.

Ping do Android para o PC:

PING 192.168.2.150 (192.168.2.150) 56(84) bytes of data.
^C
--- 192.168.2.150 ping statistics ---
3 packets transmitted, 0 received, 100% packet loss, time 2002ms

Ping e tracepath do android para o roteador:

22|u0_a72@A0001:/ $ ping 192.168.2.1
PING 192.168.2.1 (192.168.2.1) 56(84) bytes of data.
64 bytes from 192.168.2.1: icmp_seq=1 ttl=64 time=109 ms
64 bytes from 192.168.2.1: icmp_seq=2 ttl=64 time=127 ms
64 bytes from 192.168.2.1: icmp_seq=3 ttl=64 time=115 ms
^C
--- 192.168.2.1 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 109.158/117.387/127.349/7.526 ms
u0_a72@A0001:/ $ tracepath 192.168.2.1
 1:  ubeogesh-opo                                          0.323ms pmtu 1500
 1:  router.asus.com                                       1.907ms reached
 1:  router.asus.com                                      39.411ms reached
     Resume: pmtu 1500 hops 1 back 64

tracepath do android para o PC:

tracepath 192.168.2.150
 1:  ubeogesh-opo                                          0.565ms pmtu 1500
 1:  no reply
^C

Do CP do roteador, posso fazer ping no PC e no Android:

traceroute to 192.168.2.150 (192.168.2.150), 30 hops max, 38 byte packets
 1  192.168.2.150 (192.168.2.150)  1.072 ms  *  1.391 ms

traceroute to 192.168.2.222 (192.168.2.222), 30 hops max, 38 byte packets
 1  192.168.2.222 (192.168.2.222)  109.768 ms  1.159 ms  1.015 ms

PING 192.168.2.150 (192.168.2.150): 56 data bytes
64 bytes from 192.168.2.150: seq=0 ttl=128 time=2.087 ms

--- 192.168.2.150 ping statistics ---
1 packets transmitted, 1 packets received, 0% packet loss
round-trip min/avg/max = 2.087/2.087/2.087 ms

PING 192.168.2.222 (192.168.2.222): 56 data bytes
64 bytes from 192.168.2.222: seq=0 ttl=64 time=259.913 ms

--- 192.168.2.222 ping statistics ---
1 packets transmitted, 1 packets received, 0% packet loss
round-trip min/avg/max = 259.913/259.913/259.913 ms

O que mais me incomoda é que o traceroute do pc para o android inclui o roteador no rastreamento, ou seja, desconsiderando os dois dispositivos na mesma rede, o hop vai para o roteador primeiro de qualquer maneira. Eu tentei verificar rotas no dispositivo Android, mas não consigo ler muito sobre isso:

130|u0_a72@A0001:/ $ ip route show
192.168.2.0/24 dev wlan0  proto kernel  scope link  src 192.168.2.222

Eu também tentei adicionar explicitamente uma rota ao pc através do roteador, mas ela falha:

ip route add 192.168.2.150/32 via 192.168.2.1
Cannot talk to rtnetlink: Permission denied

O que mais posso verificar? Onde poderia estar o problema?

    
por Ubeogesh 03.09.2016 / 12:38

2 respostas

0

Este foi um problema com o meu windows 10 pc. Outros dispositivos também não puderam se conectar. O problema foi resolvido redefinindo todas as configurações de rede. Não é uma solução muito precisa e elegante (eu gostaria de saber o que estava causando isso), mas funcionou.

Veja o que eu fiz:

  1. Ir para ganhar 10 configurações
  2. Ir para o status
  3. Use o recurso "Redefinir rede" de lá.

Após a reinicialização, o problema não reapareceu

    
por 05.12.2016 / 13:08
0

Acho que o problema é que o SELinux impede que você (um usuário do shell) crie um rtnetlink de soquete. então eu sugiro tentar primeiro definir o selinux no modo permissivo. não é uma ação trivial, porque você deve torcer o seu telefone e instalar um aplicativo como SELinuxModeChange para fazer isso.

    
por 02.11.2016 / 15:11