如何桥接一个无线接口与另一个无线接口(都在同一台计算机上)?

sea*_*ean 5 networking wireless-access-point network-bridge hostapd

Ubuntu 14.04

基本上我正在尝试完成以下设置 -

无线互联网 ---> wlan0Ubuntu 计算机“桥接到”wlan1同一台 Ubuntu 计算机 ---> 带有 wifi 的设备

这种设置的原因是无线互联网是一个 WPA2 企业网络,我的设备无法连接到 wifi。(带有 wifi 的设备也无法连接到点对点网络或点对点网络。)此外,无线互联网源没有白名单/黑名单,因此查看设备的 MAC 地址(如有必要)没有问题。 ,并且为设备分配 IP 地址没有问题(如有必要)。这是 WPA2 企业身份验证存在问题的设备。

[编辑- 由于设备无法成功进行身份验证,无线互联网源不太可能为设备分配 IP 地址,也可能会在查看设备的 MAC 地址时遇到问题。]

wlan0 是英特尔无线芯片组/接口,不能设置为接入点模式或主模式,因此用于连接到 WPA2 企业互联网源。

wlan1 设置为接入点模式。

显然,wlan0和之间的“桥梁”wlan1并不意味着是无线的,因为两者都在同一台计算机上。

(1) 我相信brctl不能将无线接口 ( wlan0)桥接到另一个无线接口 ( wlan1)。这样对吗?

(2) 如果brctl不能使用,我还可以使用hostapd吗?

(3) 如果brctl不能使用,我应该寻找什么来完成上述设置?

(4) 以下任何一项是否可以解决我的问题 - (a)dnsmasq提供 DHCP (b) hostapd (c) 静态 IP 地址(用于wlan1???)(用于连接到wlan1??的设备)(d ) NAT (网络地址转换) (e) iptables (f) IP Masquerade (g) sudo iw set dev wlan0 4addr on (h) WDS (无线分布系统) (i) IP 转发?

谢谢你。

use*_*686 5

(1) 我相信 brctl 不能将无线接口 (wlan0) 桥接到另一个无线接口 (wlan1)。这样对吗?

这里的要求是所有接口都必须能够发送具有任何源 MAC 地址的数据包,并能够接收具有任何目标 MAC(不仅仅是设备自己的 MAC)的数据包。

Wi-Fi AP 接口可以很好地桥接(大多数“无线路由器”实际上在 AP 和以太网之间有一个普通的 Linux 桥接器)。然而,站模式接口不能。所以你可以桥接 wlan1 但不能桥接 wlan0。

有一种解决方法——“4addr”模式又名“WDS”模式,它为 Wi-Fi 帧添加了一个额外的 MAC 地址字段。您可以通过 启用它iw,只要您的 Wi-Fi 驱动程序支持它。启用后,您也可以桥接 wlan0。

但是,出于安全原因,许多 AP 默认不允许 4addr 模式。(有些有通用开关,有些有基于 MAC 的白名单。)它是否适用于您的大学 AP?试试看。

(另一种解决方法是“arpnat”——类似于 NAT,但适用于 MAC 地址——但它可能会混淆 DHCP 服务器,而且它也不被常规 Linux 支持。一些 AP,如 PicoStation,在工作站模式下支持它。)

(2)如果brctl不能用,还能用hostapd吗?

取决于您的 Wi-Fi 驱动程序。他们中的大多数现在应该支持AP模式,但并非全部支持。使用iw phy0 info,iw phy1 info找出答案。

(3) 如果 brctl 无法使用,我应该寻找什么来完成上述设置?

最常见的替代方法是使用 iptables 的 IP NAT(伪装)。

在某些情况下,常规路由(没有 NAT)也可以使用。

(4) 以下任何一项是否可以解决我的问题

(a) dnsmasq 为 DHCP (b) hostapd (c) 静态 IP 地址(对于 wlan1 ???)(对于连接到 wlan1 的设备??) (d) NAT(网络地址转换) (e) iptables (f) IP Masquerade (g) sudo iw set dev wlan0 4addr on (h) WDS(无线分发系统)(i)IP 转发?

是的,不,不,是的,也许,也许,什么,呃,你只是在这里抛出各种各样的术语?


Pil*_*ot6 0

brctl您可以毫无问题地桥接无线接口:

brctl addbr br_name
brctl addif br_name wlan0
brctl addif br_name wlan1 
Run Code Online (Sandbox Code Playgroud)

但是您需要引用桥br_name本身,而不是网络配置中的单独接口。