web-dev-qa-db-fra.com

Routez Internet depuis un adaptateur WiFi intégré vers un adaptateur USB WiFi, qui servira de point d'accès ou de point d'accès WiFi.

Mon ordinateur portable est connecté à Internet via une carte WiFi intégrée. J'ai un autre adaptateur USB WiFi. Je souhaite créer un point d'accès/point d'accès WiFi sur un adaptateur USB WiFi.

Je souhaite connecter plusieurs périphériques sur un adaptateur USB WiFi pour accéder à Internet sur ces périphériques connectés.

Comment puis-je acheminer Internet de la carte WiFi intégrée à l'adaptateur WiFi USB? Mon ordinateur portable utilise Ubuntu 14.04 LTS 64-bit

Voici la sortie de lsusb

Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 011: ID 7392:7811 Edimax Technology Co., Ltd EW-7811Un 802.11n Wireless Adapter [Realtek RTL8188CUS]
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Mon adaptateur USB WiFi provient de Edimax Technology Co., Ltd

Sortie de ifconfig

eth0      Link encap:Ethernet  HWaddr e0:3f:49:xx:xx:xx  
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 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:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:19 

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:229592 errors:0 dropped:0 overruns:0 frame:0
          TX packets:229592 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:233583875 (233.5 MB)  TX bytes:233583875 (233.5 MB)

wlan0     Link encap:Ethernet  HWaddr 54:35:30:xx:xx:xx  
          inet addr:192.168.1.6  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::5635:30ff:xxxx:xxxx/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:281992 errors:0 dropped:3 overruns:0 frame:0
          TX packets:181674 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:252008655 (252.0 MB)  TX bytes:40751981 (40.7 MB)

Si vous avez besoin de l’affichage d’une autre commande de terminal, veuillez mentionner la commande OR et indiquer comment obtenir ces informations.

4

Je pouvais le faire entièrement via le gestionnaire de réseau en créant une nouvelle connexion "sans fil (partagée)" qui passait par défaut en mode Ad-Hoc. Cela devrait probablement suffire si vous essayez d'utiliser votre ordinateur portable comme répéteur pour d'autres périphériques.

N'oubliez pas de définir votre sécurité WiFi sur "WPA/WPA2 Personal" et de définir une clé sécurisée.

Vous pouvez voir deux versions différentes de la connexion avec les adaptateurs respectifs entre parenthèses, dans mon cas, wlan0 était l'adaptateur interne et wlan1 le dongle USB.

Edit: Il y a un autre question avec d'excellentes réponses sur la façon d'installer le pilote. Apparemment, il existe deux ports différents ( 1 , 2 ) du pilote, les deux ayant été mis à jour ce mois-ci.
Si l’un ne fonctionne pas pour vous, supprimez le module du noyau et essayez l’autre.

2
Leo Verto

Donc, vous voulez faire un répéteur wifi?

En supposant que vous ayez le pilote nécessaire pour votre EW-7811Un dongle; sinon, essayez d'utiliser le paquet PPA sur ppa:hanipouspilot/rtlwifi et le rtl8192cu-dkms.

TL; DR

Si vous ne pouvez pas supporter de tout lire et que vous voulez être nourrir une cuillère à la place, exécutez ce script , fermez les yeux et croisez les doigts.

Comment faire

  1. Vous avez besoin de hostapd mais d'une version spécialement en raison du pilote realtek insuffisant. Vous devrez désinstaller la version d'ubuntu (si elle est installée) et installer une version corrigée.

    Vous pouvez télécharger le fichier original depuis realtek.com.tw (mais j'utilise ici le même fichier depuis un dépôt d'utilisateur github):

    Sudo apt-get remove hostapd
    cd /tmp
    wget https://github.com/XiaoxiaoPu/hostapd-8192cu/raw/master/RTL8188C_8192C_USB_linux_v4.0.2_9000.20130911.Zip
    unzip RTL8188C_8192C_USB_linux_v4.0.2_9000.20130911.Zip
    cd RTL8188C_8192C_USB_linux_v4.0.2_9000.20130911
    cd wpa_supplicant_hostapd
    tar -zxf wpa_supplicant_hostapd-0.8_rtw_r7475.20130812.tar.gz
    cd wpa_supplicant_hostapd-0.8_rtw_r7475.20130812
    cd hostapd
    

    Vous pouvez (devez?) Utiliser ce fichier et l'enregistrer sous le nom .config

    # Example hostapd build time configuration
    #
    # This file lists the configuration options that are used when building the
    # hostapd binary. All lines starting with # are ignored. Configuration option
    # lines must be commented out complete, if they are not to be included, i.e.,
    # just setting VARIABLE=n is not disabling that variable.
    #
    # This file is included in Makefile, so variables like CFLAGS and LIBS can also
    # be modified from here. In most cass, these lines should use += in order not
    # to override previous values of the variables.
    
    # Driver interface for Host AP driver
    #CONFIG_DRIVER_HOSTAP=y
    CONFIG_DRIVER_RTW=y
    
    # Driver interface for wired authenticator
    #CONFIG_DRIVER_WIRED=y
    
    # Driver interface for madwifi driver
    #CONFIG_DRIVER_MADWIFI=y
    #CFLAGS += -I../../madwifi # change to the madwifi source directory
    
    # Driver interface for drivers using the nl80211 kernel interface
    #CONFIG_DRIVER_NL80211=y
    
    # Driver interface for FreeBSD net80211 layer (e.g., Atheros driver)
    #CONFIG_DRIVER_BSD=y
    #CONFIG_SUPPORT_RTW_DRIVER=y
    #CFLAGS += -I/usr/local/include
    #LIBS += -L/usr/local/lib
    #LIBS_p += -L/usr/local/lib
    #LIBS_c += -L/usr/local/lib
    
    # Driver interface for no driver (e.g., RADIUS server only)
    #CONFIG_DRIVER_NONE=y
    
    # IEEE 802.11F/IAPP
    #CONFIG_IAPP=y
    
    # WPA2/IEEE 802.11i RSN pre-authentication
    CONFIG_RSN_PREAUTH=y
    
    # PeerKey handshake for Station to Station Link (IEEE 802.11e DLS)
    CONFIG_PEERKEY=y
    
    # IEEE 802.11w (management frame protection)
    # This version is an experimental implementation based on IEEE 802.11w/D1.0
    # draft and is subject to change since the standard has not yet been finalized.
    # Driver support is also needed for IEEE 802.11w.
    #CONFIG_IEEE80211W=y
    
    # Integrated EAP server
    CONFIG_EAP=y
    
    # EAP-MD5 for the integrated EAP server
    CONFIG_EAP_MD5=y
    
    # EAP-TLS for the integrated EAP server
    CONFIG_EAP_TLS=y
    
    # EAP-MSCHAPv2 for the integrated EAP server
    CONFIG_EAP_MSCHAPV2=y
    
    # EAP-PEAP for the integrated EAP server
    CONFIG_EAP_PEAP=y
    
    # EAP-GTC for the integrated EAP server
    CONFIG_EAP_GTC=y
    
    # EAP-TTLS for the integrated EAP server
    CONFIG_EAP_TTLS=y
    
    # EAP-SIM for the integrated EAP server
    CONFIG_EAP_SIM=y
    
    # EAP-AKA for the integrated EAP server
    CONFIG_EAP_AKA=y
    
    # EAP-AKA' for the integrated EAP server
    # This requires CONFIG_EAP_AKA to be enabled, too.
    #CONFIG_EAP_AKA_PRIME=y
    
    # EAP-PAX for the integrated EAP server
    #CONFIG_EAP_PAX=y
    
    # EAP-PSK for the integrated EAP server (this is _not_ needed for WPA-PSK)
    CONFIG_EAP_PSK=y
    
    # EAP-SAKE for the integrated EAP server
    CONFIG_EAP_SAKE=y
    
    # EAP-GPSK for the integrated EAP server
    CONFIG_EAP_GPSK=y
    # Include support for optional SHA256 cipher suite in EAP-GPSK
    CONFIG_EAP_GPSK_SHA256=y
    
    # EAP-FAST for the integrated EAP server
    # Note: Default OpenSSL package does not include support for all the
    # functionality needed for EAP-FAST. If EAP-FAST is enabled with OpenSSL,
    # the OpenSSL library must be patched (openssl-0.9.9-session-ticket.patch)
    # to add the needed functions.
    #CONFIG_EAP_FAST=y
    
    # Wi-Fi Protected Setup (WPS)
    CONFIG_WPS=y
    # Enable WSC 2.0 support
    #CONFIG_WPS2=y
    # Enable UPnP support for external WPS Registrars
    #CONFIG_WPS_UPNP=y
    
    CONFIG_TLS=internal
    CONFIG_INTERNAL_LIBTOMMATH=y
    
    # EAP-IKEv2
    #CONFIG_EAP_IKEV2=y
    
    # Trusted Network Connect (EAP-TNC)
    #CONFIG_EAP_TNC=y
    
    # PKCS#12 (PFX) support (used to read private key and certificate file from
    # a file that usually has extension .p12 or .pfx)
    #CONFIG_PKCS12=y
    
    # RADIUS authentication server. This provides access to the integrated EAP
    # server from external hosts using RADIUS.
    CONFIG_RADIUS_SERVER=y
    
    # Build IPv6 support for RADIUS operations
    CONFIG_IPV6=y
    
    # IEEE Std 802.11r-2008 (Fast BSS Transition)
    CONFIG_IEEE80211R=y
    
    # Use the hostapd's IEEE 802.11 authentication (ACL), but without
    # the IEEE 802.11 Management capability (e.g., madwifi or FreeBSD/net80211)
    #CONFIG_DRIVER_RADIUS_ACL=y
    
    # IEEE 802.11n (High Throughput) support
    CONFIG_IEEE80211N=y
    
    # Remove debugging code that is printing out debug messages to stdout.
    # This can be used to reduce the size of the hostapd considerably if debugging
    # code is not needed.
    #CONFIG_NO_STDOUT_DEBUG=y
    
    # Add support for writing debug log to a file: -f /tmp/hostapd.log
    # Disabled by default.
    #CONFIG_DEBUG_FILE=y
    
    # Remove support for RADIUS accounting
    #CONFIG_NO_ACCOUNTING=y
    
    # Remove support for RADIUS
    #CONFIG_NO_RADIUS=y
    
    # Remove support for VLANs
    #CONFIG_NO_VLAN=y
    
    # Enable support for fully dynamic VLANs. This enables hostapd to
    # automatically create bridge and VLAN interfaces if necessary.
    #CONFIG_FULL_DYNAMIC_VLAN=y
    
    # Remove support for dumping state into a file on SIGUSR1 signal
    # This can be used to reduce binary size at the cost of disabling a debugging
    # option.
    #CONFIG_NO_DUMP_STATE=y
    
    # Enable tracing code for developer debugging
    # This tracks use of memory allocations and other registrations and reports
    # incorrect use with a backtrace of call (or allocation) location.
    #CONFIG_WPA_TRACE=y
    # For BSD, comment out these.
    #LIBS += -lexecinfo
    #LIBS_p += -lexecinfo
    #LIBS_c += -lexecinfo
    
    # Use libbfd to get more details for developer debugging
    # This enables use of libbfd to get more detailed symbols for the backtraces
    # generated by CONFIG_WPA_TRACE=y.
    #CONFIG_WPA_TRACE_BFD=y
    # For BSD, comment out these.
    #LIBS += -lbfd -liberty -lz
    #LIBS_p += -lbfd -liberty -lz
    #LIBS_c += -lbfd -liberty -lz
    
    # hostapd depends on strong random number generation being available from the
    # operating system. os_get_random() function is used to fetch random data when
    # needed, e.g., for key generation. On Linux and BSD systems, this works by
    # reading /dev/urandom. It should be noted that the OS entropy pool needs to be
    # properly initialized before hostapd is started. This is important especially
    # on embedded devices that do not have a hardware random number generator and
    # may by default start up with minimal entropy available for random number
    # generation.
    #
    # As a safety net, hostapd is by default trying to internally collect
    # additional entropy for generating random data to mix in with the data
    # fetched from the OS. This by itself is not considered to be very strong, but
    # it may help in cases where the system pool is not initialized properly.
    # However, it is very strongly recommended that the system pool is initialized
    # with enough entropy either by using hardware assisted random number
    # generatior or by storing state over device reboots.
    #
    # If the os_get_random() is known to provide strong ramdom data (e.g., on
    # Linux/BSD, the board in question is known to have reliable source of random
    # data from /dev/urandom), the internal hostapd random pool can be disabled.
    # This will save some in binary size and CPU use. However, this should only be
    # considered for builds that are known to be used on devices that meet the
    # requirements described above.
    #CONFIG_NO_RANDOM_POOL=y
    

    Ensuite

    make
    Sudo make install
    
  2. On peut utiliser create_ap lequel un petit script d'aide pour configurer le point d'accès wifi. Il prend en charge la configuration de hostapd, iptables si nécessaire (lors de l'utilisation de NAT). C'est un remplacement pour l'ancien ap-hostspot.

    cd /tmp
    git clone [email protected]:oblique/create_ap.git
    Sudo cp create_ap/create_ap /usr/local/bin/create_ap
    Sudo apt-get install dnsmasq-base iptables # if you don't have them already
    
  3. Vous créez ensuite le point chaud avec create_ap

    Sudo create_ap -w 2 -c 6 --driver rtl871xdrv wlan1 wlan0 MyHotspot mysecretpassword
    

    Vous devez utiliser la méthode par défaut (NAT) car vous ne pouvez pas relier 2 interfaces wifi.

    En supposant que la clé USB est wlan1 et la carte intégrée wlan0. Utilisez un canal différent (au moins avec un intervalle de +/- 3 canaux) que le canal utilisé par wlan0.

Terminé! Vous devriez avoir votre configuration AP et le client devrait accéder au net via votre carte wifi intégrée.

A partir de sources multiples mais utilisant principalement le script de paquet AUR hostapd-8192c

La désinstallation

Sudo rm /usr/local/bin/hostapd /usr/local/bin/hostapd_cli /usr/local/bin/create_ap
2
solsTiCe