在 Wi-Fi 網路中,所有電腦都是直接連接的嗎?

在 Wi-Fi 網路中,所有電腦都是直接連接的嗎?

我追蹤了家庭網路上的一些計算機,所有計算機都只有 1 跳。我預計有 2 跳,因為我認為資料包可能需要通過路由器或網關。

當然,情況不可能總是如此,對吧?沒有什麼可以保證使用相同 Wi-Fi 的任意兩台電腦都在彼此的範圍內 - 它們可能都在不同方向的存取點範圍內。

如果它們不在彼此的範圍內,它如何運作?如果電腦 A 想要連接到電腦 B,A 是否先直接嘗試,如果失敗,然後透過存取點嘗試兩跳?

答案1

Traceroute 是 OSI 網路模型的第 3 層。 Wifi 位於第二層。可能有一個非常複雜的 WiFi 網絡,其中包含網橋、附加 AP 等。您不會在 IP 層看到它。

因此,如果您的問題是 SSID 上的所有客戶端是否都透過 RF 通訊直接相互連接,那麼答案是否定的。

答案2

考慮一下,在乙太網路 LAN 上,您的資料包如何在到達「第一跳路由器」之前穿過多條乙太網路電纜、集線器和交換器。 Wi-Fi(802.11 無線乙太網路的另一個名稱)也是如此。您的 Wi-Fi 封包可能會由多個 Wi-Fi AP 中繼,在到達第一跳 IP 路由器之前穿過 AP 之間的無線 WDS 回程鏈路,甚至有線乙太網路回程鏈路。

Traceroute 測量 IP 層(網路層、第 3 層)跳數。它完全不知道它可能經過多少個 Wi-Fi 層(資料鏈結層、第 2 層)躍點才能到達第一個 IP 層路由器。

答案3

我認為最需要澄清的一點是第 3 層 (L3) 和第 2 層 (L2) 封包轉送之間的差異。

在第 2 層環境(包括交換器和 AP)中,轉送決策是基於 MAC 位址。這意味著第 2 層設備不關心 IP 位址。

另一方面,在第 3 層環境中,轉送決策是根據 IP 位址做出的。基於IP位址運作的網路設備稱為路由器。

追蹤路由軟體(請注意,traceroute 不是協定)基於以下事實:在每個L3 躍點,路由器都會將IP 封包的TTL(生存時間)減1,並且當封包的TTL 等於0 時,會出現「ICMP 逾時」 「資料包被傳送到來源IP位址(您的traceroute軟體)。為了找到路徑,軟體產生簡單的 IP 封包,從 TTL 等於 1 開始,然後為發出的每個新封包添加 1,直到發現最後一跳。

在 L2 環境中,由於設備不關心 IP 層,因此它們不會減少 TTL。例如,您可以使用單一 L3 躍點(即目標主機)來遍歷大量 L2 裝置。

相關內容