Como configurar Ubuntu 12.10 para compartir la conexión cableada o 3G, funcionando como un router WiFi. En primer lugar necesitamos los paquetes isc-dhcp-server
y hostapd
. Para instalarlos,
> sudo apt-get install isc-dhcp-server
> sudo apt-get install hostapd
Configuración de la interfaz de red
1. /etc/hostapd/hostapd.conf
Editamos este archivo (lo creamos si no existe) con el siguiente contenido,
interface=wlan0
driver=nl80211
ssid=
channel=1
hw_mode=g
auth_algs=1
wpa=3
wpa_passphrase=
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP CCMP
rsn_pairwise=CCMP
donde en interface
ponemos la interfa de red inalámbrica que usaremos (revisar con iwconfig
). Completar los campos ssid=
y wpa_passphrase=
con el nombre y la contraseña de la red.
2. /etc/default/isc-dhcp-server
Editar la línea que dice
INTERFACES=”″
cambiando por
INTERFACES=”wlan0″
Nuevamente corroborar que wlan0
es la interfaz de red que utilizaremos. Puede ser wlan1
.
3. /etc/dhcp/dhcpd.conf
Primero asegurarse que las siguientes líneas están comentadas (con un # al principio):
# option definitions common to all supported networks…
# option domain-name “example.org”;
# option domain-name-servers ns1.example.org, ns2.example.org;
# default-lease-time 600;
# max-lease-time 7200;
Agregar las siguientes líneas
subnet 10.10.0.0 netmask 255.255.255.0 {
range 10.10.0.2 10.10.0.16;
option domain-name-servers 8.8.4.4, 208.67.222.222;
option routers 10.10.0.1;
}
La única otra línea que no debe estar comentada en este archivo es
ddns-update-style none;
4. /etc/default/hostapd
Agregar las siguientes líneas al final del archivo, asegurándose que las líneas existentes similares a estas están comentadas.
RUN_DAEMON=”yes”
DAEMON_CONF=”/etc/hostapd/hostapd.conf”
DAEMON_OPTS=”-dd”
5. /etc/network/interfaces
Así es como debería verse este archivo:
auto lo
iface lo inet loopback
auto wlan0
iface wlan0 inet static
address 10.10.0.1
netmask 255.255.255.0
Nuevamente aquí va la interfaz inalámbrica que utilizaremos, sea wlan0
, wlan1
, etc. Nota: Las últimas 4 líneas de este archivo deben comentarse si se necesita volver al funcionamiento normal de la tarjeta de red inalámbrica.
En este punto reiniciar el sistema. Debería estar funcionando la red y deberíamos ser capaces de conectarnos a ella con cualquier aparato con WiFi, pero aún no tenemos acceso a Internet.
Compartir conexión a Internet
Antes de configurar nada, necesitamos saber de que interfaz proviene la conexión a Internet que compartiremos. En el caso de una red cableada puede ser eth0
, en el caso de un modem 3G puede ser ppp0
, etc. Chequear con ifconfig
. De ahora en adelante supondremos que compartimos la conexión cableada, por lo que seguiremos la configuración usando eth0
.
Para compartir la conexión a Internet debemos hacer lo que se llama «ip masquerading”.
1. /etc/sysctl.conf
Asegurarse que la siguiente línea NO está comentada:
net.ipv4.ip_forward=1
Reiniciar el sistema.
Luego de reiniciar el sistema, ejecutar en una terminal:
> sudo iptables -t nat -A POSTROUTING -s 10.10.0.0/16 -o eth0 -j MASQUERADE
(Nota: cambiar eth0
por la interfaz conectada a Internet).
2. edit /etc/rc.local
Para hacer el anterior cambio permanente, agregamos la siguiente línea, justo antes de “exit 0″
iptables -t nat -A POSTROUTING -s 10.10.0.0/16 -o eth0 -j MASQUERADE
Reiniciar el sistema. Configuración terminada.
Si el programa hostapd
no se ejecutó automáticamente, simplemente abrir una terminal y ejecutar
> sudo hostapd /etc/hostapd/hostapd.conf
Excelente! funciona a la perfeccion!!!.. Lo aplique en Ubuntu/gnome3 13.04 debido a que el hostpot que viene por defecto esta muy inestable. Muchas gracias!! Bien explicado!!…
Muchas gracias por darte el tiempo, esto funciona de maravilla, no lo había encontrado en ninguna parte, muchas muchas gracias!
Tengo un problema,la señal de wifi se creo y la reciben todos los dispositivos,pero no se conectan a internet a traves de ella.. Pareciera que envia solo la señal pero no internet :s Podras ayudarme? Gracias de todos modos:)
Has realizado bien el paso de agregar la línea «iptables -t nat -A POSTROUTING -s 10.10.0.0/16 -o eth0 -j MASQUERADE» al archivo /etc/rc.local??
Donde dice «eth0» debe ir la interfaz que está conectada a Internet. Verifica si en tu caso es esa u otra. Saludos!
Excelente.. Funciona perfecto. El único problema que encontré fue que no asigna correctamente las IPs a los clientes (por lo menos en mi caso) y tuve que asignarlas manualmente PC por PC. Fuera de eso, todo perfecto.
Muchas gracias.
Anda de maravillas, solo que tengo el problema que no me levanta automáticamente el servicio hostapd, por lo que al arrancar la maquina siempre tengo q correr
«sudo hostapd /etc/hostapd/hostapd.conf»
si me podrian ayudar con este problema les agradecería.
Desde ya muchas gracias,
Perfecto amigo funciona a la perfección 😀
Funciono excelente, se esta ganando el cielo 😀 muchas gracias
seguí todos los procedimientos, e incluso después del último comando que me dió esta respuesta en la terminal:
samora@samora:~$ sudo hostapd /etc/hostapd/hostapd.conf
Configuration file: /etc/hostapd/hostapd.conf
Using interface wlan0 with hwaddr 48:5a:b6:ed:b2:c3 and ssid » kajakatito»
wlan0: interface state UNINITIALIZED->ENABLED
wlan0: AP-ENABLED
Sin embargo mi computadora no puede conectarse al wifi, de hecho sólo se conecta con el cable al router. No sé que hice errado. me puedes ayudar?
Héctor, que versión de Ubuntu estás utilizando? Este procedimiento lo escribí hace tiempo con Ubuntu 12.04. No lo he probado en versiones posteriores.
continuación: di un comando iwconfig y esta es la respuesta de la terminal?
samora@samora:~$ iwconfig
eth0 no wireless extensions.
wlan0 IEEE 802.11bgn ESSID:off/any
Mode:Managed Access Point: Not-Associated Tx-Power=20 dBm
Retry short limit:7 RTS thr:off Fragment thr:off
Power Management:off
lo no wireless extensions.
Ahí me dice que mi acess point no esta asociado, no se si sea ese el problema. Si no resuelvo esto no se como hacer pues no sé como volver atrás. Talvez voy a tener que borrar todos los procedimientos y asi vuelva a funcionar mi wifi. Abrazos
Fíjate que en el paso 5 hay una nota que dice que se deben comentar las líneas agregadas en el archivo /etc.network/interfaces para volver al funcionamiento normal de la WLAN. Saludos! Espero te sirva!