0 votes

Utiliser wlan1 au lieu de wlan0 dans Android Nexus 6

J'essaie d'utiliser un dongle WiFi avec Android Nexus 6 avec ROM et noyau personnalisés. J'ai installé les pilotes de la clé USB WiFi sur le téléphone Android qui apparaît sur l'interface réseau wlan1 dans le shell adb. Alors que le WiFi par défaut apparaît sur wlan0. Cependant, je suis incapable d'accéder ou même de faire un ping aux périphériques disponibles sur wlan1.

J'ai connecté le dongle USB à son WiFi et lui ai attribué une adresse IP :

iw dev wlan1 connect -w WiFi-XC
ip addr add 172.16.0.120/16 broadcast 172.16.255.255 dev wlan1

Le dmesg montre que l'association avec l'AP WiFi est réussie :

[  242.667204] IPv6: ADDRCONF(NETDEV_UP): wlan1: link is not ready
[  245.599269] wlan1: authenticate with 70:b3:d5:95:94:6e
[  245.599934] wlan1: send auth to 70:b3:d5:95:94:6e (try 1/3)
[  245.603278] wlan1: authenticated
[  245.604767] wlan1: associate with 70:b3:d5:95:94:6e (try 1/3)
[  245.606292] wlan1: RX AssocResp from 70:b3:d5:95:94:6e (capab=0x421 status=0 aid=2)
[  245.609720] IPv6: ADDRCONF(NETDEV_CHANGE): wlan1: link becomes ready
[  245.616657] wlan1: associated

La table de routage ressemble à ceci :

10.10.0.0/16 dev wlan0  proto kernel  scope link  src 10.10.10.108 
172.16.0.0/16 dev wlan1  proto kernel  scope link  src 172.16.0.120

Alors que la sortie de ifconfig ressemble à ça :

wlan0     Link encap:Ethernet  HWaddr 44:80:eb:30:e5:03
          inet addr:10.10.10.108  Bcast:10.10.255.255  Mask:255.255.0.0 
          inet6 addr: fe80::4680:ebff:fe30:e503/64 Scope: Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:3670 errors:0 dropped:0 overruns:0 frame:0 
          TX packets:4500 errors:0 dropped:0 overruns:0 carrier:0 
          collisions:0 txqueuelen:1000 
          RX bytes:854154 TX bytes:1080264 
wlan1     Link encap:Ethernet  HWaddr 70:b3:d5:95:85:f1  Driver wifidongle
          inet addr:172.16.0.120  Bcast:172.16.255.255  Mask:255.255.0.0 
          inet6 addr: fe80::72b3:d5ff:fe95:85f1/64 Scope: Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:487 errors:0 dropped:0 overruns:0 frame:0 
          TX packets:29 errors:0 dropped:0 overruns:0 carrier:0 
          collisions:0 txqueuelen:1000 
          RX bytes:30055 TX bytes:6051

Lorsque j'essaie d'envoyer un ping au routeur à 172.16.0.10, ou d'envoyer un ping à l'appareil depuis le routeur, le ping ne réussit pas. Cependant, lorsque j'essaie d'exécuter nmap -sn 172.16.0.0/24 sur le routeur pour voir les périphériques qu'il peut voir, étonnamment il montre qu'il peut voir le périphérique :

Starting Nmap 7.60 ( https://nmap.org ) at 2019-07-11 12:56 UTC
Nmap scan report for 172.16.0.120
Host is up (0.0017s latency).

Je soupçonne que le wlan0 et le wlan1 ne peuvent pas fonctionner en même temps. Si c'est le cas, comment puis-je mettre hors service le wlan0. Si ce n'est pas le cas et que wlan0 et wlan1 peuvent fonctionner en même temps, quelqu'un peut-il suggérer une solution ?

0 votes

Vous ne regardez que la table principale de la table de routage. Android utilise également de nombreuses autres tables, en particulier la table 97.

0voto

M Asad Points 11

Comme indiqué dans les commentaires, il existe plusieurs tables de routage qu'Android utilise. La table de routage qui est affichée par ip route show est la table de routage principale, qui n'est pas ajoutée à la liste de règles ip par défaut dans Android. Pour ajouter la table de routage principale à la règle IP, vous devez exécuter la commande suivante ip rule add from all lookup main pref 1 .

androidalle.com

AndroidAlle est une communauté de androiders où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X