¿Es posible configurar una Raspberry Pi como un enrutador inalámbrico?

40

Cuando se usa Ethernet y un adaptador inalámbrico, ¿es posible configurar el dispositivo como un enrutador inalámbrico? Si es así, ¿qué software (y / o hardware adicional) se necesitaría?

ramblinjan
fuente
Primero necesitará hardware 'inalámbrico', ya que el Pi no viene con Wifi. Pero no estoy seguro de que los dongles USB puedan actuar como puntos de acceso ... Si estoy en lo correcto, necesitarás un enrutador Wifi. Y entonces no entiendo por qué querrías usar el Pi como enrutador, en lugar del hardware dedicado ...
Xavier Nodet
¿Por qué no instalar la versión de OpenWRT para rpi?
No veo el punto de este TBH. El dongle WiFi RP _ + no será mucho más barato que un router normal muy superior ...
Alexander - Restablecer Mónica
"Más barato" no es el punto. Sí, un enrutador compatible con dd-wrt puede ofrecer una funcionalidad más simple por un precio más bajo que esto, pero no es parte del objetivo de Raspberry Pi explorar nuevas cosas para hacer cosas con las computadoras, ya que de repente es posible instalar una computadora completa. en todo tipo de lugares?
ramblinjan
1
No creo que necesites mucha CPU para enrutar paquetes. El Raspberry Pi tiene un mejor hardware en términos de cómputo y RAM sin procesar que la mayoría de los enrutadores (generalmente los enrutadores funcionan a 300-500MHz, con 16-128MB de RAM)
Hengjie

Respuestas:

19

En principio sí. Puede seguir cualquier tutorial para configurar una PC con Linux como enrutador.

Tutoriales utiles

Alex Chamberlain
fuente
3
Mejoraré esta respuesta cuando obtenga un RPi.
Alex Chamberlain
13
Gracias por la información, pero sospecho que "sí" no es realmente lo que el autor buscaba aquí. Proporcionar un enlace para enviar al usuario a otra parte es algo contraproducente para este sitio. Es realmente temprano en el desarrollo de este sitio. Los enlaces por sí solos pueden proporcionar una solución a corto plazo para un autor, pero hace poco para atraer a las personas a este sitio. Tales respuestas también hacen que sea mucho menos probable que otros usuarios proporcionen una respuesta adecuada ellos mismos.
Robert Cartaino
1
Además, la pregunta es para un enrutador inalámbrico. Lo cual estoy bastante seguro, no es posible ya que el RPi no puede transmitir de forma inalámbrica.
Jivings
2
@Jivings: ¿Fuente? Debe depender del adaptador USB.
Alex Chamberlain
2
@RobertCartaino Espero mejorar la respuesta, pero no tengo acceso a un RPi en este momento. En cambio, espero que esta respuesta dé a las personas pistas para probarse a sí mismas.
Alex Chamberlain
7

Mostraré los pasos para Arch Linux porque esa es la distribución con la que estoy familiarizado, pero las instrucciones para Raspbian no deberían ser muy diferentes.

Tenga en cuenta que no todas las interfaces wlan0 admiten el modo AP.

La configuración sería

(eth0)<---RPI--->(wlan0)

donde el RPI es el enrutador (y AP) que proporciona internet inalámbrico desde ethernet.

Instale el software y los controladores necesarios.

pacman -S wireless_tools wpa_supplicant hostapd

Construye el enrutador .

Construye el AP

Editar /etc/hostapd/hostapd.conf(auto explicado). Comience con rc.d start hostapdy agréguelo a la matriz Daemons si desea que se inicie cuando inicie el RPI.

El enrutador inalámbrico debería estar funcionando ahora.

Tomás
fuente
3

Desde mi experiencia de tratar de hacer que mi Raspberry Pi funcione con un dongle wifi pequeño basado en RTL8188CU, hay más problemas de lo que pensabas.

La principal diferencia aquí es: la fuente de alimentación del USB a bordo de Pi no es suficiente, ya que cada USB limita a 140 mA en pi. Si bien esto es suficiente para usar el pi como un "cliente" que se conecta a enrutadores wifi reales, generalmente no es suficiente para actuar como uno. Aunque probablemente uno podría poner el dongle en modo maestro, podría ser muy inestable. Una posible solución es evitar los fusibles poli . Pero no lo he intentado.

Incluso si la fuente de alimentación es suficiente, el siguiente problema es el controlador de Linux para el dongle wifi. El controlador en el "kernel oficial de Linux" no puede poner mi dongle como cliente. Tuve que descargar un controlador del sitio web de Realtek (el script aquí es muy útil). Luego se necesita un programa llamado hostapd para convertirlo en un AP funcional. Alguien falló en eso. Tampoco tuve éxito, incluso en un escritorio con la última versión de Arch Linux.

Al final, me rendí. Sugiero comprar un enrutador inalámbrico adecuado es el camino a seguir. El pi simplemente no está diseñado para este tipo de tarea.

fqsxr
fuente
Evitar el trabajo de los fusibles polifónicos, sin embargo, debe asegurarse de usar una resistencia de 1 ohm para hacer el desvío y asegurarse de que haya una pequeña cantidad de resistencia para evitar que el Pi se bloquee.
Hengjie
El uso de un chip rtl8188 podría haber fallado de todos modos, ya que los controladores no tienen nl80211.
XTL
3

Fácilmente con el RALink RT5370, que funciona directamente en el Pi incluso con los polifusibles.
Instalé hostapd, configuré una dirección IP estática en mi interfaz wifi, luego configuré hostapd con ssid y psk.
Luego usé dnsmasq para entregar direcciones IP y funcionó bien para mí.

Instrucciones completas aquí en mi blog: http://sirlagz.net/?p=589

Lawrence
fuente
Este es un enlace muerto!
Sean Bone
@SeanBone El enlace no está muerto para mí
8128
No quiero decir realmente muerto, pero esto es todo lo que obtengo:Warning: fopen(/home/sirlagzn/public_html/wp-content/GeoIP/GeoIP.dat) [function.fopen]: failed to open stream: No such file or directory in /home/sirlagzn/public_html/wp-content/plugins/statpress-visitors/GeoIP/geoip.inc on line 399 Can not open /home/sirlagzn/public_html/wp-content/GeoIP/GeoIP.dat
Sean Bone
@fluteflute por lo que está efectivamente muerto ...
Sean Bone
Eso
Sean Bone
1

Además de los buenos puntos en las otras respuestas: obtenga un dispositivo WiFi con buen soporte de Linux. Desea uno que funcione en punto de acceso o modo administrado. Muchos dispositivos no funcionan en este modo en Linux, incluso si funcionan bien como cliente. El funcionamiento de un dispositivo depende del estado del controlador del dispositivo. Antes de comprar algo, verifique el estado de los diferentes controladores en linuxwireless.org . Elija un controlador con buen soporte (al menos el modo AP), luego busque un dispositivo que contenga ese chip.

Tengo un dispositivo USB TL-WN722N compatible con el controlador ath9k_htc . Esto funciona muy bien con el cifrado hostapd y WPA2. Escribí una publicación de blog sobre la configuración de mi enrutador wlan aquí . Con respecto a las demandas de CPU mencionadas en los comentarios de la pregunta: no he tenido problemas con una alta carga de CPU. Con iperf, medí el rendimiento de 22 Mbit / s a ​​través de WLAN desde una computadora portátil a la Pi, cuando la velocidad de conexión se informó como 54 Mbit / s. No sé cuánto se puede esperar, o dónde está el cuello de botella en mi configuración.

Frepa
fuente
0

Sí, es posible, y ahora hay proyectos que han hecho este tipo de cosas por usted, por lo que todo lo que tiene que hacer es cargar una distribución (al igual que Raspbian). También hay muchos otros proyectos relacionados con redes que puede considerar.

También es posible configurar el Pi para que actúe como un enrutador más avanzado para hacer cosas elegantes como enrutar su tráfico a través de una VPN y / o Tor. Adafruit escribió una guía práctica en el día, llamando a su proyecto 'Onion Pi'. Lifehacker ofrece un procedimiento detallado sobre cómo convertir el Pi en un proxy VPN.

Lamentablemente, pfSense no será portado al Pi, al menos la forma en que interpolo sus tableros de mensajes. Sin embargo, tiene sentido, ya que la red en el Pi se basa en USB.

También hay otros proyectos SBC que toman diferentes enfoques (Beaglebone) y enrutadores de viaje que hacen cosas similares (Invisibox, Anonabox, PORTAL , etc.).

Ahora que el Pi 3 está fuera, me imagino que veremos algunos desarrollos interesantes en esta área. Como resultado , puede mejorar la velocidad de su Pi con un adaptador USB Gigabit.

YetAnotherRandomUser
fuente