È possibile configurare un Raspberry Pi come router wireless?


40

Quando si utilizza Ethernet e un adattatore wireless, è possibile configurare il dispositivo come router wireless? In tal caso, quale software (e / o hardware aggiuntivo) sarebbe necessario?


Per prima cosa avrai bisogno di un po 'di hardware "wireless", poiché il Pi non viene fornito con Wifi. Ma non sono sicuro che i dongle USB possano fungere da punti di accesso ... Se ho ragione, avrai effettivamente bisogno di un router Wifi. E poi non vedo davvero perché vorresti usare il Pi come router, invece dell'hardware dedicato ...
Xavier Nodet

Perché non installare la versione di OpenWRT per rpi?

Non vedo il punto di questo TBH. L'RPi + un dongle WiFi non sarà molto più economico di un router normale di gran lunga superiore ...
Alexander - Ripristina Monica

"Più economico" non è il punto. Sì, un router compatibile con dd-wrt può offrire funzionalità più semplici a un prezzo inferiore rispetto a questo, ma non fa parte del punto in cui Raspberry Pi esplorare nuove attività era fare cose con i computer poiché è improvvisamente possibile mettere un computer a tutti gli effetti in tutti i tipi di posti?
ramblinjan,

1
Non penso che tu abbia bisogno di molta CPU per instradare i pacchetti. Il Raspberry Pi ha un hardware migliore in termini di calcolo e RAM grezzi rispetto alla maggior parte dei router (in genere i router funzionano a 300-500 MHz, con 16-128 MB di RAM)
Hengjie,

Risposte:


19

In linea di principio si. Puoi seguire qualsiasi tutorial per configurare un PC Linux come router.

Tutorial utili


3
Migliorerò questa risposta quando avrò un RPi.
Alex Chamberlain,

13
Grazie per l'informazione, ma sospetto che "sì" non sia proprio quello che l'autore stava cercando qui. Fornire un collegamento per inviare l'utente altrove è in qualche modo controproducente per questo sito. È molto presto nello sviluppo di questo sito. I collegamenti da soli possono fornire una soluzione a breve termine all'unico autore, ma fa ben poco per portare le persone in questo sito. Tali risposte rendono anche molto meno probabile che altri utenti forniscano loro stessi una risposta adeguata .
Robert Cartaino

1
Inoltre, la domanda è per un router wireless. Il che sono abbastanza sicuro non è possibile in quanto l'RPi non può trasmettere in modalità wireless.
Jivings,

2
@Jivings: Source? Dovrebbe dipendere dall'adattatore USB.
Alex Chamberlain,

2
@RobertCartaino Spero di migliorare la risposta, ma non ho accesso a un RPi in questo momento. Spero invece che questa risposta offra alla gente suggerimenti per mettersi alla prova.
Alex Chamberlain,

7

Mostrerò i passaggi per Arch Linux perché questa è la distribuzione che conosco, ma le istruzioni per Raspbian non dovrebbero essere molto diverse.

Nota che non tutte le interfacce wlan0 supportano la modalità AP.

L'installazione sarebbe

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

dove RPI è il router (e AP) che fornisce Internet wireless da Ethernet.

Installa i software e i driver necessari.

pacman -S wireless_tools wpa_supplicant hostapd

Costruisci il router .

Costruisci l'AP

Modifica /etc/hostapd/hostapd.conf(auto-spiegato). Avviarlo con rc.d start hostapde aggiungerlo all'array Daemons se si desidera che venga avviato all'avvio dell'RPI.

Il router wireless dovrebbe ora funzionare.


3

Dalla mia esperienza di tentativo di far funzionare il mio Raspberry Pi con un piccolo dongle wifi basato su RTL8188CU, ci sono più problemi di quanto pensassi.

La differenza principale qui è: l'alimentazione dell'alimentatore USB di pi non è sufficiente, poiché ogni usb limita a 140mA su pi. Mentre questo è sufficiente per usare pi come "client" che si connette a veri router wifi, di solito non è sufficiente agire come uno. Anche se si potrebbe probabilmente mettere il dongle in modalità master, potrebbe essere molto instabile. Una possibile soluzione è quella di bypassare i polifusibili . Ma non l'ho provato.

Anche se l'alimentazione è sufficiente, il prossimo problema è il driver Linux per il dongle wifi. Il driver nel "kernel Linux ufficiale" non può mettere il mio dongle come client. Ho dovuto scaricare un driver dal sito Web di Realtek (lo script qui è molto utile). Quindi è necessario un programma chiamato hostapd per renderlo un AP funzionante. Qualcuno ha fallito. Neanche io ci sono riuscito, neanche su un desktop con Arch Linux più recente.

Alla fine, ho appena rinunciato. Suggerisco di acquistare un router wireless adeguato è la strada da percorrere. Il pi non è progettato per questo tipo di attività.


Bypassare i polifusi funziona, tuttavia dovresti assicurarti di usare una resistenza da 1ohm per fare il bypass per garantire che ci sia una piccola quantità di resistenza per evitare che il Pi si blocchi.
Hengjie,

L'uso di un chip rtl8188 potrebbe non essere riuscito comunque, poiché i driver non hanno nl80211.
XTL

3

Facilmente con il RALink RT5370, che funziona direttamente nel Pi anche con i polifusi.
Ho installato hostapd, ho impostato un indirizzo IP statico sulla mia interfaccia wifi, quindi ho impostato hostapd con ssid e psk.
Quindi ho usato dnsmasq per distribuire gli indirizzi IP e ha funzionato bene per me.

Istruzioni complete qui sul mio blog: http://sirlagz.net/?p=589


Questo è un link morto!
Sean Bone,

@SeanBone Il link non è morto per me
8128

Non intendo davvero morto, ma questo è tutto ciò che ottengo: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 quindi è effettivamente morto ...
Sean Bone,

Intendiamoci, mi dà gli stessi errori se vado semplicemente su sirlagz.net
Sean Bone,


1

Oltre ai punti positivi delle altre risposte: ottieni un dispositivo WiFi con un buon supporto Linux. Ne vuoi uno che funzioni in access point o in modalità gestita. Molti dispositivi non funzionano in questa modalità in Linux, anche se funzionano bene come client. Il funzionamento di un dispositivo dipende dallo stato del driver del dispositivo. Prima di acquistare qualcosa, controlla lo stato dei vari driver su linuxwireless.org . Scegli un driver con un buon supporto (almeno la modalità AP), quindi trova un dispositivo contenente quel chip.

Ho ottenuto un dispositivo USB TL-WN722N supportato dal driver ath9k_htc . Funziona molto bene con la crittografia hostapd e WPA2. Ho scritto un post sul blog sulla mia configurazione del router wlan qui . Per quanto riguarda le esigenze della CPU menzionate nei commenti della domanda: non ho avuto problemi con un elevato carico della CPU. Con iperf, ho misurato il throughput di 22 Mbit / s tramite WLAN da un laptop al Pi, quando la velocità di connessione è stata riportata come 54 Mbit / s. Non so bene quanto ci si possa aspettare o dove sia il collo di bottiglia nella mia configurazione.


0

Sì, è possibile e ora ci sono progetti che hanno fatto questo genere di cose per te, quindi tutto ciò che devi fare è caricare una distro (proprio come Raspbian). Ci sono anche molti altri progetti relativi alla rete che potresti voler prendere in considerazione.

È anche possibile configurare il Pi in modo che funga da router più avanzato per fare cose fantasiose come instradare il traffico attraverso una VPN e / o Tor. Adafruit ha scritto una guida pratica nel corso della giornata, chiamando il loro progetto "Onion Pi". Lifehacker fornisce una guida dettagliata su come trasformare il Pi in un proxy VPN.

Purtroppo, pfSense non verrà trasferito sul Pi, almeno nel modo in cui interpolo le loro bacheche. ha senso però, dal momento che il networking sul Pi è basato su USB.

Ci sono anche altri progetti SBC che adottano approcci diversi (Beaglebone) e router di viaggio che fanno cose simili (Invisibox, Anonabox, PORTAL , ecc.).

Ora che Pi 3 è uscito, posso immaginare che vedremo alcuni sviluppi interessanti in questo settore. A quanto pare , puoi migliorare la velocità del tuo Pi con un adattatore USB Gigabit.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.