无线路由器如何以只有请求的计算机才能接收的方式发送数据包?

无线路由器如何以只有请求的计算机才能接收的方式发送数据包?

据我所知,无线路由器在某个无线电信道上与计算机通信,当计算机想要加入网络时,它会搜索其所有信道以找到无线路由器传输,然后将该信道设置为默认信道并通过该信道与无线路由器通信。

现在,如果我们谈论的是一个有多台计算机的无线网络,
我知道(根据我在计算机上的 Wireshark 上看到的内容)任何计算机都可以看到从任何一台计算机发送到无线路由器的任何数据包(这是因为它们都在同一个信道上传输吗?),
但我看不到无线路由器传输给其他计算机的内容。

无线路由器如何做到这一点?

它应该在同一个无线电信道上传输,所以每台计算机都应该能够捕获它(然后根据目标 IP 地址决定保留它或丢弃它),对吗?

答案1

也许你的计算机只能看到发送到播送和多播地址。大多数 PC 操作系统都非常嘈杂,因此您会看到它们频繁发出广播。您看不到的是“单播”流量,包括来自 TCP 的所有流量,例如网页浏览。

如果您想拦截现代有线交换机上的非广播流量,您实际上需要运行 arp-spoof 攻击。参见 ettercap。

如果您想拦截无线网络上的非广播流量,我认为您需要考虑配置监控模式接口。我认为这应该适用于受单个密码保护的网络(“PSK”,如 WPA2-PSK)。这有点复杂,并非所有硬件或驱动程序都支持,我不知道在 Windows 上有多难。

答案2

我认为你的理解是错误的。

当谈到有线网络时,只有 1 个通道,而当谈到 wifi 网络时,接入点的所有客户端共享同一个通道。

我认为你会发现它的工作原理如下(对于基于 Internet/IP 的网络)

  1. 客户端想要发送一个数据包。
  2. 它向同一子网上的所有内容广播一条消息,就像说“这个 IP 对应的 MAC 地址是什么?”
  3. 响应服务器回应“我,这是我的MAC地址”。
  4. 将来的通信将发送到该 MAC 地址。(如果服务器不在
    LAN 上,情况也一样,只是使用“默认网关”代替服务器,即下一跳。这通常是根据网络掩码和 IP 地址或等效项来确定的)。

缺少的逻辑位是设备插入的交换机(在有线网络上)在 MAC 地址之间路由。这增加了隐私性,也允许更快的通信 [例如,如果您有 4 台电脑全部连接到 1 台交换机,其中 PC1 插入端口 1,PC2 插入端口 2 等,则 PC1 可以与 PC2 通信,而 PC3 可以以最大速度与 PC4 通信 - 尽管如果 PC1 和 PC2 都想与 PC4 通信,则带宽在端口 4 上共享]。

这种基本的 MAC 地址“路由”是交换机与(现已过时的技术)集线器的区别所在 - 事实上,集线器可以看到服务器和客户端之间的所有流量。[请注意,WIFI 连接类似于集线器,而且一些智能交换机有特殊的监控端口,可以配置为转储所有流量的副本,例如用于监视或网络分析]

相关内容