¿Cómo creo un punto de conexión WiFi que comparta la conexión a internet inalámbrica (adaptador único)?

83

Sé cómo crear un punto de acceso público cuando estoy conectado a una red cableada, pero cuando uso Internet desde una conexión WiFi, esto desconecta la conexión inalámbrica en el momento en que activo el hotspot.

En Windows, puedo usar Connectify Hotspot , que me permite compartir la conexión a Internet desde el mismo adaptador inalámbrico que soy. creando un punto de acceso en. Como puede leer en la página de información general de tecnología :

  

El modo de punto de acceso le permite crear un punto de acceso usando la misma tarjeta de Wi-Fi que está utilizando para acceder a Internet.

¿Cómo hago esto en Ubuntu?

    
pregunta Ruppesh Nalwaya 11.07.2013 - 15:39

8 respuestas

49

Pasos simples: Crea un punto de acceso wifi en ubuntu

  1. Deshabilitar Wifi (desmarque Habilitar Wi-Fi)
  2. Ir a la conexión de red (Editar conexiones ...)
  3. Haz clic en "Agregar"
  4. Elige "Wi-Fi" y haz clic en "Crear"
  5. Escriba el nombre de la conexión como "wifi-hotspot"
  6. Ingrese el SSID como desee
  7. Elige la dirección MAC del dispositivo del menú desplegable (wlan0)
  8. Wifi Security selecciona "WPA & amp; WPA2 Personal" y configura una contraseña .
  9. Vaya a la pestaña Configuración de IPv4, en el cuadro desplegable Método, seleccione Compartido en otras computadoras.
  10. Luego, guarde y cierre.
  11. Abre Terminal (Ctrl + Alt + T) y escribe el siguiente comando con tu nombre de conexión utilizado en el paso 5.

    sudo gedit /etc/NetworkManager/system-connections/wifi-hotspot
    
  12. Encuentra mode=infrastructure y cámbialo a mode=ap

  13. Ahora verifique la sección de red donde wi-fi se conectará automáticamente al punto de acceso creado. Si no puede encontrarlo, vaya a Conectarse a la red oculta ... busque la conexión y conéctese a ella.

Fuente: enlace

    
respondido por el Purushoth 14.04.2015 - 14:31
38

Después de ver este enlace ofrecido por vasishath , logré configurar un punto de acceso inalámbrico para compartir la conexión a Internet desde el mismo dispositivo de interfaz inalámbrica. Este dispositivo inalámbrico debe usar un controlador Atheros que ya está desarrollado con el soporte nl80211 . A continuación, te mostraré cómo.

Detecta si tu dispositivo inalámbrico funcionará con este método

Ejecute el siguiente comando en el terminal :

lsmod | grep ath

Si la salida es nula o si la cadena cfg80211 no está en la salida, no tiene sentido continuar y debe prestar atención en el segundo y tercer punto desde esta respuesta .

Herramientas necesarias

Compruebe si están instalados todos los paquetes mencionados a continuación: iw , hostapd , iptables , udhcpd , udhcpc , macchanger .

Puedes instalarlos con

sudo apt-get install iw hostapd iptables udhcpd udhcpc macchanger

Editar algunos archivos

Ejecute el siguiente comando en la terminal para editar los archivos correspondientes:

sudo -H gedit /etc/hostapd.conf /etc/udhcpd.conf /etc/default/udhcpd /etc/wpa_supplicant.conf
  • En el archivo hostapd.conf , agregue el siguiente código:

    interface=new1
    driver=nl80211
    ssid=my_wifi_hotspot      #Change the ssid name as you wish
    channel=11                #I sugest you to use the same channel as your wireless network
    hw_mode=g
    wme_enabled=1
    macaddr_acl=0
    auth_algs=1
    ignore_broadcast_ssid=0
    wpa=3
    wpa_passphrase=1234567890 #Change the passphrase as you wish
    wpa_key_mgmt=WPA-PSK
    wpa_pairwise=TKIP
    rsn_pairwise=CCMP
    
  • En el archivo udhcpd.conf , comente todas las líneas actuales (agregando un carácter # delante de la línea) y agregue las siguientes líneas nuevas:

    start 192.168.0.102         #These IPs must to be in the same subset as your current default route
    end 192.168.0.117 
    interface new1 
    
    opt dns 192.168.0.1         #Your current default route (Gateway)
    option subnet 255.255.255.0
    opt router 192.168.0.101    #This IP must to be in the same subset as your current default route
    option  domain  localhost
    
  • En / etc / default / udhcp, comente la línea que dice DHCPD_ENABLED="no" .

  • En wpa_supplicant.conf debe proporcionar la configuración de su red inalámbrica actual. Ver man wpa_supplicant para algunos ejemplos rápidos. Y probablemente tenga más ejemplos en el directorio /usr/share/doc/wpa_supplicant/ . Usé algo así como:

    ctrl_interface=/var/run/wpa_supplicant
    network={
      ssid="my_wifi_network"
      key_mgmt=WPA-PSK
      proto=WPA
      pairwise=CCMP
      group=CCMP
      psk="mypassphrase"
    }
    
  • Guarde todos los archivos y ciérrelos.

  

Nota: Todas estas ediciones no afectan en nada a la configuración de red actual.

Crear un script de shell

  • En una ejecución de terminal mkdir -p bin - este comando creará un directorio bin en su carpeta home si aún no lo tiene.
  • Después de ejecutar gedit ~/bin/hotspotsetup.sh - esto creará el nuevo archivo change_sources.sh en gedit.
  • Copie y pegue la siguiente secuencia de comandos en el nuevo archivo creado:
#!/bin/bash

service network-manager stop
sleep 1

pkill -15 nm-applet
sleep 1

ifconfig wlan0 down             #wlan0 - the name of your wireless adapter
sleep 1

iw phy phy0 interface add new0 type station
iw phy phy0 interface add new1 type __ap
sleep 2

ifconfig new0 down
macchanger --mac 00:11:22:33:44:55 new0
ifconfig new1 down
macchanger --mac 00:11:22:33:44:66 new1
ifconfig new0 up
ifconfig new1 up

ifconfig new1 192.168.0.101 up  #192.168.0.101 - the same IP defined for router in 'udhcpd.conf' file 
hostapd /etc/hostapd.conf &
sleep 2

service udhcpd start

wpa_supplicant -inew0 -c/etc/wpa_supplicant.conf &
sleep 10

udhcpc -i new0

echo "1" > /proc/sys/net/ipv4/ip_forward
iptables --table nat --append POSTROUTING --out-interface new0 -j MASQUERADE
iptables --append FORWARD --in-interface new1 -j ACCEPT
  • Guarde el archivo y ciérrelo.
  • Regrese a la terminal y ejecute: chmod +x ~/bin/hotspotsetup.sh - para otorgar acceso de ejecución para la secuencia de comandos.

Inicie el punto de acceso inalámbrico que está conectado a una red inalámbrica desde el mismo adaptador inalámbrico

Ejecute el script anterior en el terminal con privilegios de administrador:

sudo ~/bin/hotspotsetup.sh

Prueba

  

Nota: para volver a iniciar su servicio de administrador de red como antes para ejecutar el script hotspotsetup.sh , reinicie su computadora ( sudo reboot ).

Fuente: Connectify para Linux con una sola interfaz inalámbrica .

    
respondido por el Radu Rădeanu 26.07.2013 - 09:11
4

Esto se agregó como otra respuesta porque la otra respuesta creó tanta controversia.

Lo más importante es que necesita saber el nombre de nuestro adaptador inalámbrico. Use el siguiente comando para obtenerlo:

iwconfig

Probablemente sea wlan0 o wlan1.

Hay casos en los que usamos el adaptador WiFi anterior y queremos saber el controlador que usa. Podemos usar los comandos a continuación de acuerdo con su tipo que sea USB o PCI.

lsusb
lspci

Utilice el siguiente comando para ver qué controlador usa actualmente:

lsmod

Necesito instalar un programa. Simplemente presione Ctrl + Alt + T en su teclado para abrir Terminal. Cuando se abra, ejecute los comandos a continuación:

sudo apt-get install hostapd

Abra el archivo de configuración del adaptador de red principal con este comando:

sudo gedit /etc/hostapd/hostapd.conf

Y edítelo así:

interface=wlan0
driver=nl80211
country_code=US
ssid=mySSID
hw_mode=g
channel=1
wpa=2
wpa_passphrase=MyWiFiPassword
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
auth_algs=1
macaddr_acl=0

La primera línea debería ser su nombre de adaptador de red. La segunda línea no debe cambiarse en la mayoría de los casos, a menos que no haya tenido suerte y requiera un controlador de terceros. La tercera línea no requiere explicación. La cuarta línea debe ser su nombre de punto de acceso WiFi (SSID). La quinta línea identifica su red como un modo / b / g / n. La siguiente línea es tu canal de red. Las líneas restantes establecen la seguridad y el cifrado. En la mayoría de los casos, solo necesita cambiar la frase de contraseña.

Abra el segundo archivo de configuración con este comando:

sudo gedit /etc/default/hostapd

Y cámbialo así:

DAEMON_CONF="/etc/hostapd/hostapd.conf"
RUN_DAEMON="yes"
DAEMON_OPTS="-dd"

La primera línea apunta al archivo de configuración del adaptador de red principal. La segunda línea le dice a hostapd que se ejecute en modo DAEMON en segundo plano al arrancar. La última línea le dice a hostapd que registre cada mensaje. El truco importante aquí es si desea utilizar dos adaptadores de red inalámbrica diferentes para configurar un punto de acceso de banda dual, debe crear para separar los archivos de configuración original (1.er archivo) para cada ard y cambiarlo así:

DAEMON_CONF="/etc/hostapd/hostapd.conf /etc/hostapd/hostapd2.conf"

Las configuraciones están terminadas.

Ejecutando DAEMON

Ahora debe asegurarse de que hostapd DAEMON se inicie al arrancar (primer comando a continuación), también debe ejecutarlo ahora para evitar un reinicio obligatorio.

sudo update-rc.d hostapd defaults
sudo /etc/init.d/hostapd start

Y está terminado. Ahora podemos conectarnos a nuestro punto de acceso recién construido.

Fuentes: Hostapd: la forma de Linux para crear puntos de acceso wifi virtuales & amp; Página de documentación de Hostapd Linux

    
respondido por el Mitch 27.07.2013 - 20:20
4

Como puede ver en los comentarios a esta respuesta, hay una manera de hacerlo. Está documentado para FreeBSD (que no es Ubuntu / Linux) aquí: enlace (Enlace desde el comentario). No parece funcionar exactamente de la misma manera en Linux, pero debería ser similar. Lamentablemente, no pude encontrar información más detallada sobre este tema.

La forma más fácil y más común es usar dos interfaces físicas de red. Así que puedes comprar otro dispositivo wifi o simplemente usar otra tecnología para conectarte más y hacer solo uno de ellos a través de Wifi. Las posibilidades son, por ejemplo:

  • Bluetooth + Wifi
  • LAN / Ethernet + Wifi
  • 3G / LTE + Wifi
  • Wifi (externo) + Wifi (integrado o segundo externo)

Una vez que noté que Ubuntu Linux es capaz de administrar dos dispositivos wifi a la vez sin ser complicado. No probé esto en formas de compartir la conexión a Internet, etc., pero debería ser posible. La forma en que será complicado probablemente dependa del tipo de conexiones que use. En Linux probablemente no necesites ni un tipo de software especial. Debería ser posible compartir conexiones sin la necesidad de herramientas especiales. Desafortunadamente no puedo probarlo en este momento.

Te recomiendo que pruebes Wifi a Wifi si tienes otro dispositivo wifi y, de lo contrario, LAN o Bluetooth (que está incorporado en la mayoría de los portátiles). Compartir 3G / LTE es un poco malo debido a los planes de datos de los proveedores, etc.

    
respondido por el verpfeilt 11.07.2013 - 16:10
2

¡La mejor manera que he encontrado para crear una EXPERIENCIA CONNECTIFICIA es utilizar AP-HOTSPOT!
(WPA2 ... no wep como Linux por defecto en ubuntu)

sudo add-apt-repository ppa:nilarimogard/webupd8

sudo apt-get update

sudo apt-get install ap-hotspot

Para ejecutar y opciones

Empezar: sudo ap-hotspot start

Detener: sudo ap-hotspot stop

Configurar: sudo ap-hotspot Configure

¿Desea una Interfaz gráfica de usuario ?

Para instalarlo, abra una terminal y luego busque:

cd /home/USERNAME/LOCATION

Luego ejecuta los comandos de instalación:

qmake

make

Crea un programa ... Arrástrelo al escritorio y listo :) aplausos

En cuanto a dos adaptadores ... Windows y bsd gratis pueden hacerlo ... Por ahora todavía estoy tratando de resolverlo ya que solo me acerqué a este escenario desde ayer. Informaré ... Linux puede hacerlo también ... No es una limitación de hardware para los adaptadores que pueden hacerlo con otros sistemas operativos ...

    
respondido por el user251335 23.02.2014 - 07:06
1

Actualmente solo es posible para tarjetas Atheros y muy pocas tarjetas Broadcom. Para saber cuál está usando, ejecute el siguiente comando en la terminal y pegue el resultado aquí: -

lspci | Wireless

O simplemente puede probar ese método. Aquí está el enlace para el tutorial sobre cómo hacer eso: connectify-for-linux-with-single-wireless-interface

    
respondido por el vasishath 27.07.2013 - 11:18
1

Al igual que respuesta de Purushoth , esta respuesta también requiere 2 adaptadores WiFi (por ejemplo, un Wi-Fi interno y 1 Wi-Fi externo) adaptador). Sin embargo, no pude conseguir que su respuesta funcionara, así que esto es lo que hice en su lugar.

Probado en Xubuntu 14.04.

Cómo configurar la PC Ubuntu / Xubuntu como un punto de acceso WiFi (por ejemplo, para usar en aeropuertos o en aviones para compartir una conexión única y de pago desde su PC con su teléfono y otros dispositivos):

  1. Conecta un dongle USB WiFi. No todos los dongles pueden actuar como una "ap" (punto de acceso), pero la tarjeta interna puede estar segura, así que (al menos por ahora, hasta que pueda encontrar un adaptador wifi USB que pueda actuar como punto de acceso) use el USB externo uno para conectarse al servicio de pago (por ejemplo, WiFi a bordo), y utilizaremos el adaptador wifi interno para hacer que el punto de acceso wifi.
    • IMPORTANTE: NO PAGUE Y CONÉCTELO AL SERVICIO PAGADO CON EL ADAPTADOR WIFI (externo) WIFI, O DEBERÁ PAGAR OTRA VEZ PARA CAMBIARLO, YA QUE SU CONEXIÓN PAGADA ESTÁ DE ALGUNA MANERA VINCULADA A SU ADAPTADOR WIFI PROBABLEMENTE VIA SU DIRECCIÓN MAC PERMANENTE O ALGO.
  2. Haga clic con el botón izquierdo en el ícono de wifi en el panel y seleccione "Crear nueva red WiFi ..." → elija el adaptador Wi-Fi interno (que es wlan0), haga un nombre de red (SSID) (por ejemplo: "wifi- punto de acceso "), elija" WPA y amp; WPA2 Personal "para" seguridad de Wi-Fi ", y crea una contraseña, luego haz clic en" Crear ".
    • NB: HAY UN ERROR QUE A VECES PUEDE HACER SELECCIONAR EL ADAPTADOR DE WIFI INTERNO PARA ESTE PASO CUANDO TAMBIÉN TIENE UN ADAPTADOR DE USB WIFI EXTERNO ENCHUFADO. SI ESTO SUCEDE, SIMPLEMENTE DESCONECTE EL ADAPTADOR DE WIFI EXTERNO MIENTRAS HACE ESTE PASO PARA HACER EL HOTSPOT DE WIFI, luego vuelva a enchufarlo cuando termine / cuando se lo indiquen a continuación.
  3. Edite el archivo de configuración para el nuevo punto de acceso wifi que acaba de crear:
    • cd /etc/NetworkManager/system-connections
    • ls
    • Encuentre su archivo de punto de acceso que acaba de crear a través del paso anterior de la GUI; ej .: "wifi-hotspot", y edítelo:
    • sudo nano wifi-hotspot
    • Pulse la flecha hacia abajo y cambie "mode = adhoc" o lo que sea que diga a "mode = ap". Guardar y Salir.
  4. Ahora, con el adaptador WiFi USB externo aún desconectado, active el punto de acceso wifi que acaba de crear haciendo clic con el botón izquierdo en el ícono WiFi en el panel y yendo a "Conectarse a la red WiFi oculta ..." → elija su wifi interno Adaptador nuevamente para "Adaptador de Wi-Fi", y elija el nombre del punto de acceso (por ejemplo: "wifi-hotspot") para "Conexión". Los campos "Nombre de red", "Seguridad de Wi-Fi" y "Contraseña" ahora autocompletar y gris. Haga clic en "Conectar". El punto de acceso WiFi se activará en su tarjeta interna. Puede conectar sus dispositivos, como su teléfono, a él.
  5. Finalmente, con su zona Wi-Fi activa, conecte su adaptador WiFi secundario / USB y úselo para conectarse a la red de pago. Pague por su suscripción o lo que sea, y su conexión a Internet a través de este adaptador se transmitirá automáticamente a dispositivos conectados a través de su adaptador interno "Access Point" que acaba de configurar.
  6. ¡Hecho!

Referencias: Aquí es donde encontré la ruta de la carpeta /etc/NetworkManager/system-connections & amp; un enfoque alternativo (que no funcionó para mí): enlace

    
respondido por el Gabriel Staples 16.12.2017 - 02:26
0

Permítanme presentarles una excelente herramienta que simplifica todo: create_ap (por oblicuo )
Ese es el repositorio oficial: enlace
¡Esta herramienta forma parte de los repositorios Arch Linux y también debería estar en los repositorios Ubuntu

Es muy fácil de usar y muy efectivo.
Para instalarlo en Ubuntu , primero debe instalar las dependencias:

sudo apt install bash util-linux procps hostapd iproute2 iw wireless-tools haveged iptables dnsmasq git

A menos que haya utilizado una "mini imagen de instalación", ya tiene el 90% de ellos ...
Una vez hecho, clonar el repositorio de oblicuo:

git clone https://github.com/oblique/create_ap.git

Ubique su terminal en el repositorio descargado:

cd create_ap

Instale la herramienta con:

sudo make install

(no se necesita compilación con make )
Fácil, ¿verdad? Bueno, el resto es aún más fácil ... ... Si su dispositivo puede usarse como un cliente y un PA al mismo tiempo (como el chip wifi de atheros), simplemente tiene que conectarse al enrutador de su casa con el administrador de red, como usualmente lo haces, y luego ejecutas una línea de comandos como esa:

sudo create_ap <connected interface> <repeater interface> <essid repeated network> <WPA Key>

ejemplo

sudo create_ap wlp2s0 wlp2s0 Bathroom_WiFi mysecuresecretkey

Y ... ¡Eso es todo! Increíble y tan fácil! Ahora solo tiene que conectarse a la red repetida con su dispositivo Android. Verá en su terminal de computadora portátil el saludo de manos negociado entre su computadora portátil y el cliente: Y puedes disfrutar de una agradable sesión de baño con internet ... Todo se hace con una sola interfaz y con un simple comando. La herramienta tiene muchas opciones, para más información visite el repositorio github de oblicuo (enlace proporcionado anteriormente) y si puede hablar español puede consultar el hilo de este foro: crear_ap: La solución perfecta para transformar tu computadora en un repetidor universal todo terreno

    
respondido por el kcdtv 03.08.2018 - 13:26

Lea otras preguntas en las etiquetas