將無線用戶端連接到不可設定的遠端 WiFi AP

將無線用戶端連接到不可設定的遠端 WiFi AP

我來介紹一下場景。

AP#1 <-----> (Linux #1) <-----> 中間網路 <-----> (Linux #2) <-----> 無線客戶端

總之,我需要無線客戶端中運行的應用程式可以與接入點 #1 進行透明通訊(AP#1)。

正如你在上面看到的,我有一個名為AP#1,它正在為給定的應用程式生成熱點。該應用程式可以透過關聯來使用AP#1,並且我想要一個無線客戶端來遠端使用它。由於我無法觸及的配置AP#1,但我可以配置Linux#1Linux #2,我嘗試了以下方法:

  • Linux#1聯營公司AP#1使用 wpa 請求者,保持在同一子網路中。
  • Linux #2在另一個子網路中為無線用戶端建立一個存取點。
  • 無線用戶端與 AP#1 中的固定 IP 進行通信,並且流量在以下位置進行路由和 natted:Linux#1,以便與AP#1是透明的。

到目前為止一切順利,無線客戶端可以 ping AP#1 的位址。然而,無線用戶端透過向 255.255.255.255 發送 UDP 封包來開始通信,期望AP#1在應用程式實際開始工作之前回答。有沒有辦法來迴路由這些請求,或 255.255.255.255 通常不可路由?

我考慮過透過 gretap 隧道更改此配置,但此拓撲與我看到的範例有點不同,因為我無法配置AP#1

這是我的問題:

  • 您認為這個問題可以透過建立某種 L2 隧道來解決嗎?
  • 如果是這樣,最好的選擇是什麼?
  • 在這種情況下,是否可以刪除 Linux #1 上的 NAT 並使 AP#1 和無線用戶端之間的關聯完全透明?

先致謝,並對菜鳥問題表示歉意。

答案1

您認為這個問題可以透過建立某種 L2 隧道來解決嗎?

是的,兩端都有橋樑。但 Linux 可能無法輕鬆橋接 Wi-Fi 用戶端介面(見下文)。

有沒有辦法來迴路由這些請求,或 255.255.255.255 通常不可路由?

並不禁止轉送廣播,例如 Cisco IOS 有該選項,儘管路由器預設不會這樣做以避免環路。

我不確定 Linux 本身是否可以做到這一點,儘管使用晦澀的 iptables 規則可能是可能的。使用bcrelay可以向一個方向轉送廣播的使用者空間守護程式會更容易。

在這種情況下,是否可以刪除 Linux #1 上的 NAT 並使 AP#1 和無線用戶端之間的關聯完全透明?

不是完全。您可以使其在 IP 層級完全透明,但標準 Wi-Fi 用戶端只能發送具有自己的 MAC 位址的幀,因此您將無法簡單地橋接用戶端 Wi-Fi 介面 – 需要二層NAT“Linux#1”裝置上的某種類型。 (“Linux#2”設備是一個 AP,因此它在第 2 層完全透明。

我不知道如何在標準 Linux 上實現它,儘管我在專有韌體(Mikrotik RouterOS 和 Ubiquiti airOS 設備)中看到 ARPNAT 當它們設置為工作站模式時。我認為許多消費者的「無線橋接器」也實現了它。

(Linux 確實支援「4addr」模式下的關聯,該模式是完全可橋接的,但很可能您的 AP 不支援它。)

相關內容