是否可以在 Linux 中实现 Windows 虚拟路由器的功能(http://virtualrouter.codeplex.com/)?
换句话说,我希望有一个 NIC 连接到接入点,并且同一个 NIC 充当接入点。有人在 Linux 中做过这样的事情吗?
非常感谢。
答案1
Hostapd 允许在 AP 模式下管理无线网卡,但正常使用时需要将连接转发到不同的 IF,这正是 Arch Linux 文章所讨论的内容。相反,问题是是否可以设置一个 AP 和一个 IF,同时在 AP 模式(由 hostapd 管理的虚拟 IF)和站点模式(即作为现有接入点的客户端)下运行。我知道的所有卡都会阻止在站点模式下使用该卡,如果在 AP 模式下有虚拟 IF。这就是为什么我对同一问题的答案感兴趣。
一个男子这里声称已经使用由 rt2800pci 驱动的 Ralink RT2790 实现了这一点,但是在 USB 设备上找不到。本网站声称已使用由 ath5k/ath9k 驱动的 wifi 板载卡实现了此目的。由于 ath9_htc 是板载 ath9k 驱动程序的 usb 对应项,因此可以推测此模块驱动的所有设备都支持此配置。这些设备的列表可在 Linux Wireless 上找到。
再说一次,我不确定,我将自己尝试这个解决方案。
答案2
这种方法对我有用:
- 打开系统设置
- 打开网络在硬件部分下
- 在新窗口的左侧,你可以看到用作热点按钮
我已经在我的 ubuntu 12.04 上测试过了
答案3
是的,只要您的卡的 Linux 驱动程序支持它。网上有很多关于此内容的指南,只需谷歌搜索“Linux 接入点”即可。基本步骤(取自Arch 维基) 是:
hostapd
从发行版的存储库安装。在基于 Debian 的系统上,你可以使用以下命令进行安装:sudo apt-get install hostapd
创建它的配置文件
/etc/hostapd/hostapd.conf
,确保设置 SSID(您希望广播网络被称为什么)和相应的密码:ssid=YourWifiName wpa_passphrase=Somepassphrase interface=wlan0 bridge=br0 auth_algs=3 channel=7 driver=nl80211 hw_mode=g logger_stdout=-1 logger_stdout_level=2 max_num_sta=5 rsn_pairwise=CCMP wpa=2 wpa_key_mgmt=WPA-PSK wpa_pairwise=TKIP CCMP
但是,详细信息取决于您的无线驱动程序是否支持“访问模式”,您可以通过运行时查看“支持的接口模式”下列出的内容来检查:
iw list
我强烈建议你阅读我链接到的 Arch wiki 文章,其他有用的资源包括:
http://www.cyberciti.biz/faq/debian-ubuntu-linux-setting-wireless-access-point/ http://nims11.wordpress.com/2012/04/27/hostapd-the-linux-way-to-create-virtual-wifi-access-point/