web-dev-qa-db-fra.com

Comment relier une interface sans fil à une autre interface sans fil (les deux sur le même ordinateur)?

Ubuntu 14.04

Fondamentalement, j'essaie d'accomplir la configuration suivante -

internet sans fil ---> wlan0 de l'ordinateur Ubuntu "ponté sur" wlan1 du même ordinateur Ubuntu ---> appareil avec wifi

La raison de cette configuration est que l'Internet sans fil est un réseau d'entreprise WPA2 auquel mon appareil avec wifi ne peut pas se connecter. (L'appareil avec wifi ne peut pas non plus se connecter à des réseaux d'égal à égal ni à des réseaux ad-hoc.) De plus, la source Internet sans fil n'a pas de liste blanche/liste noire et ne voit donc aucun inconvénient à voir l'adresse MAC de l'appareil (si nécessaire). , et aucun problème avec l'attribution d'une adresse IP à l'appareil (si nécessaire). C'est le périphérique qui a un problème avec l'authentification WPA2 Enterprise.

[EDIT - Etant donné que le périphérique ne peut pas s'authentifier, la source Internet sans fil N'EST PAS susceptible d'attribuer une adresse IP au périphérique, ni de voir si l'adresse MAC de ce dernier est problématique.]

wlan0 est un jeu de puces/interface sans fil Intel qui ne peut pas être défini sur le mode point d'accès ni sur le mode maître. Il est donc utilisé pour se connecter à la source Internet WPA2 Enterprise.

wlan1 doit être défini sur le mode point d'accès.

De toute évidence, le "pont" entre wlan0 et wlan1 n'est pas destiné à être sans fil, car les deux sont sur le même ordinateur.

(1) Je crois que brctlne peut pas relier une interface sans fil (wlan0) à une autre interface sans fil (wlan1). Est-ce correct?

(2) Si brctlne peut pas être utilisé, puis-je quand même utiliser hostapdname__?

(3) Si vous ne pouvez pas utiliser brctlname__, que dois-je rechercher pour effectuer la configuration décrite ci-dessus?

(4) Est-ce que l'un des éléments suivants pourrait contribuer à résoudre mon problème: (a) dnsmasqpour servir DHCP (b) hostapd(c) adresse IP statique (pour wlan1 ???) (pour le périphérique connecté à wlan1? ?) (d) NAT (traduction d’adresse réseau) (e) iptables(f) IP Masquerade (g) Sudo iw set dev wlan0 4addr on (h) WDS (système de distribution sans fil) (i) Transfert IP?

Je vous remercie.

5
sean

(1) Je pense que brctl ne peut pas relier une interface sans fil (wlan0) à une autre interface sans fil (wlan1). Est-ce correct?

La condition ici est que toutes les interfaces doivent pouvoir envoyer des paquets avec n'importe quelle adresse MAC source et recevoir des paquets avec n'importe quel MAC de destination (pas uniquement celui du périphérique).

Les interfaces Wi-Fi AP peuvent être pontées parfaitement (la plupart des "routeurs sans fil" ont en fait un simple pont Linux entre AP et Ethernet). Les interfaces en mode station ne le peuvent toutefois pas. Vous pouvez donc relier wlan1 mais pas wlan0.

Le mode "4addr", également appelé "WDS", ajoute un champ d'adresse MAC supplémentaire aux trames Wi-Fi. Vous pouvez l'activer via iw, à condition que votre pilote Wi-Fi le prenne en charge. Une fois activé, vous pourrez également faire le pont avec wlan0.

Cependant, pour des raisons de sécurité, de nombreux points d’accès ne permettent pas le mode 4addr par défaut. (Certains ont une bascule générale, d'autres ont une liste blanche basée sur MAC.) Est-ce que cela fonctionnera avec le point d'accès de votre université? Essayez et voyez.

(Une autre solution de contournement est "arpnat" - comme NAT mais appliqué aux adresses MAC - mais cela peut créer de la confusion pour les serveurs DHCP et il n'est de toute façon pas pris en charge par Linux. Certains points d'accès, comme PicoStation, prennent en charge cette fonctionnalité en mode station. )

(2) Si brctl ne peut pas être utilisé, puis-je quand même utiliser hostapd?

Dépend de votre pilote Wi-Fi. La plupart d'entre eux devraient prendre en charge le mode AP de nos jours, mais pas tous. Utilisez iw phy0 info, iw phy1 info pour le savoir.

(3) Si brctl ne peut pas être utilisé, que dois-je rechercher pour effectuer la configuration décrite ci-dessus?

L'approche alternative la plus courante serait IP NAT (masquerading) en utilisant iptables.

Dans certains cas, un routage régulier (sans NAT) fonctionnerait également.

(4) Est-ce que l’un des éléments suivants pourrait faire partie de la solution à mon problème?

(a) dnsmasq pour servir DHCP (b) hostapd (c) adresse IP statique (pour wlan1 ???) (pour le périphérique connecté à wlan1 ??) (d) NAT (traduction d'adresse réseau) ( e) iptables (f) IP Masquerade (g) Sudo iw set dev wlan0 4addr on (h) WDS (système de distribution sans fil) (i) IP Forwarding?

oui, non, non, oui, peut-être, peut-être, qu'est-ce que vous jetez simplement des termes assortis ici?

4
grawity

Vous pouvez relier les interfaces sans fil à l'aide de brctl sans aucun problème:

brctl addbr br_name
brctl addif br_name wlan0
brctl addif br_name wlan1 

Mais vous devrez vous référer au pont br_name lui-même et non aux interfaces séparées de votre configuration réseau.

0
Pilot6