是否可以将Raspberry Pi设置为无线路由器?


40

使用以太网和无线适配器时,是否可以将设备设置为无线路由器?如果是这样,将需要什么软件(和/或其他硬件)?


首先,您将需要一些“无线”硬件,因为Pi不随Wifi一起提供。但是我不确定USB加密狗是否可以用作访问点...如果我没错,您实际上需要购买一些Wifi路由器。然后我真的不明白为什么您要使用Pi作为路由器,而不是专用硬件...
Xavier Nodet 2012年

为什么不为rpi安装OpenWRT版本?

我看不到这个TBH的意义。RPi + WiFi加密狗不会比性能优越的普通路由器便宜很多
亚历山大

“便宜”不是重点。是的,兼容dd-wrt的路由器可能会提供比此便宜的更简单的功能,但是这并不是Raspberry Pi探索新功能的关键所在,因为突然有可能放置一台成熟的计算机在各个地方?
ramblinjan

1
我认为您不需要大量的CPU来路由数据包。Raspberry Pi在原始计算和RAM方面比大多数路由器(通常运行在300-500MHz,具有16-128MB RAM的路由器)具有更好的硬件
Hengjie

Answers:


19

原则上可以。您可以按照任何教程将Linux PC设置为路由器。

有用的教程


3
收到RPi后,我将改善此答案。
Alex Chamberlain

13
感谢您提供的信息,但我怀疑“是”并不是作者想要的。提供将用户发送到其他地方的链接对该网站有些反作用。这个网站的开发真的很早。单独的链接可能会为一个作者提供一个短期解决方案,但是它并不能使人们进入该站点。这样的答案还使得其他用户自己提供正确答案的可能性大大降低。
罗伯特·卡塔诺

1
同样,问题是针对无线路由器的。我很确定这是不可能的,因为RPi无法无线广播。
Jivings 2012年

2
@Jivings:来源?应取决于USB适配器。
Alex Chamberlain 2012年

2
@RobertCartaino我希望改善答案,但现在无法访问RPi。相反,我希望这个答案能给人们一些尝试的提示。
Alex Chamberlain 2012年

7

我将介绍Arch Linux的步骤,因为这是我熟悉的发行版,但是Raspbian的说明应该没有太大不同。

请注意,并非所有的wlan0接口都支持AP模式。

设置将是

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

RPI是路由器(和AP)通过以太网提供无线Internet。

安装所需的软件和驱动程序。

pacman -S wireless_tools wpa_supplicant hostapd

构建路由器

建立AP

编辑/etc/hostapd/hostapd.conf(自我解释)。如果要在引导RPI时启动它,请使用rc.d start hostapd并启动它并将其添加到Daemons阵列中。

无线路由器现在应该可以工作了。


3

从我尝试使我的Raspberry Pi与基于RTL8188CU的微型wifi加密狗一起工作的经验来看,麻烦多于您的想象。

这里的主要区别是:pi板载USB的电源不足,因为每个us在pi上限制为140mA。虽然这足以将pi用作连接到实际wifi路由器的“客户端”,但通常不足以充当pi。尽管可能会使加密狗进入主模式,但它可能非常不稳定。一种可能的解决方案是绕过多晶硅熔断器。但是我还没有尝试过。

即使电源足够,wifi加密狗的Linux驱动程序也是下一个问题。“官方linux内核”中的驱动程序无法将我的加密狗作为客户端。我必须从Realtek网站下载驱动程序(此处的脚本非常有帮助)。然后需要一个名为hostapd的程序来使其能够正常工作。有人对此失败。即使在装有最新Arch Linux的台式机上,我也没有成功。

最后,我只是放弃了。我建议您购买合适的无线路由器。pi并非专为此类任务而设计。


绕开多保险丝的工作,但是,您需要确保使用1ohm电阻进行旁路,以确保有少量电阻来防止Pi崩溃。
横街

无论如何,使用rtl8188芯片可能会失败,因为驱动程序没有nl80211。
XTL

3

使用RALink RT5370可以轻松实现,即使在使用多保险丝的情况下,它也可以直接在Pi中运行。
我安装了hostapd,在wifi接口上设置了静态IP地址,然后使用ssid和psk设置了hostapd。
然后,我使用dnsmasq分发IP地址,它对我来说工作正常。

我的博客上的完整说明-http: //sirlagz.net/?p=589


这是一个死链接!
肖恩·伯恩

@SeanBone链接对我而言并不死
8128年

我并不是说实际上已经死了,但这就是我得到的一切: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
肖恩·伯恩

@fluteflute,所以它实际上已经死了……
肖恩·伯恩

请注意,如果我只是去sirlagz.net
Sean Bone


1

除了其他答案中的优点之外,您还可以获得具有良好Linux支持的WiFi设备。您想要一个可以在接入点或托管模式下工作的设备。即使在客户端上运行良好,许多设备在Linux中也无法在此模式下工作。设备的运行状况取决于设备驱动程序的状态。在购买任何东西之前,请在linuxwireless.org上检查各种驱动程序的状态。选择一个具有良好支持(至少是AP模式)的驱动程序,然后找到包含该芯片的设备。

我得到了ath9k_htc驱动程序支持的TL-WN722N USB设备。这对于hostapd和WPA2加密非常有效。我在这里写了关于我的wlan路由器设置的博客文章。关于问题注释中提到的CPU需求:高CPU负载没有问题。使用时iperf,我测量了从笔记本电脑到Pi的WLAN上22 Mbit / s的吞吐量,当时报告的连接速度为54 Mbit / s。我不太清楚可以期望多少,或者瓶颈在我的设置中。


0

是的,这是可能的,并且现在有一些项目为您完成了这种工作,因此您要做的就是加载发行版(就像Raspbian一样)。您可能还需要考虑许多其他与网络相关的项目。

也可以将Pi设置为更高级的路由器,以执行一些奇特的事情,例如通过VPN和/或Tor路由流量。 Adafruit当天写了一个操作指南,称他们的项目为“洋葱皮”。 Lifehacker详细介绍了如何将Pi变成VPN代理。

遗憾的是,pfSense不会移植到Pi,至少是我插入其留言板的方式。不过这很有意义,因为Pi上的网络是基于USB的。

也有其他采用不同方法的SBC项目(Beaglebone),而旅行路由器也做类似的事情(Invisibox,Anonabox,PORTAL等)。

既然Pi 3推出了,我可以想象我们会在这方面看到一些有趣的发展。 事实证明,您可以使用USB千兆适配器提高Pi的速度。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.