VPNなしでホスト自体がインターネットにアクセスできるようにしながら、VPNルーターを作成しようとしています。ホストにはワイヤレスネットワークカードが1つしかありません。だからiw phy phy0 interface add xxxxx
。そのうちの1つ(wlan0_sta)は、インターネットに無線で接続されたステーションとして機能します。もう一方(wlan0_ap)はクライアントをAPに接続します。 VPNエンドポイントとして機能するWireguardデバイス(wg0)もあります。 Hostapdとiptablesに関連しています。
これで、クライアントのデータがwg0ではなくwlan0_staにルーティングされることを除いて、すべての部分が機能します。したがって、ルーティングが正しく機能するように、wlan0_apとwg0を別々のネットワーク名前空間に配置する予定です。しかし、iw
仮想インターフェイスをネットワークネームスペースに入れることができないことを発見しました。ネットワークネームスペースには「phy」のみを入れることができます。
ではどうすればいいですか?
答え1
少なくともnl80211ドライバに基づくLinuxカーネルバージョン4.9ではそうではありません。
修正するphy
:これで、通常、WiFiを他のネットワークネームスペースに再割り当てできますが、まずバイパス方法で別のツールを使用してWiFiを移動する必要があります。
iw phy phy0 set netns 16747
/sys
ソースネットワークの名前空間にインストールする必要があります。