我正在尝试制作一个 VPN 路由器,同时保持主机本身在没有 VPN 的情况下访问 Internet。主机只有一个无线网卡。所以我通过添加了两个虚拟接口iw phy phy0 interface add xxxxx
。一个(wlan0_sta)作为将无线连接到互联网的站点。另一个(wlan0_ap)作为AP连接客户端。也是作为 VPN 端点的线保护设备 (wg0)。hostapd 和 iptables 参与其中。
现在每个部分都工作了,除了来自客户端的数据被路由到 wlan0_sta,而不是 wg0。所以我计划将 wlan0_ap 和 wg0 放在一个单独的网络命名空间中,以使路由工作。但我发现iw
不能将虚拟接口放入网络命名空间。只有“phy”可以放入网络命名空间。
所以我该怎么做?
可能不会,至少在基于 nl80211 的驱动程序的 Linux 内核版本 4.9 中是这样。