我正在重新配置我的家庭 Wi-Fi,并尝试找到处理智能家居设备的最佳方法。
我有≈70 台智能家居设备,每个房间都配备一个 Google Home Mini、智能恒温器、智能插头、智能灯、RoboVac、5 台智能电视,但每台都配备了带有 Google TV 的 Chromecast、智能漏水传感器、智能软水器传感器、智能烟雾/二氧化碳传感器、2 个 HDHomerun 调谐器、Broadlink RF 遥控器、3 个 Harmony Hubs 等。
我还运行一个服务器,其中有我家的蓝光播放器以及媒体服务器、3 台 NAS 服务器,以及经常使用的 5 台笔记本电脑、4 台平板电脑、8 部手机、儿童桌面 AIO、XBox One、PS4、2 台 Nintendo Switch 和常客经常使用的其他设备。
正如您所见,我当前的设置非常拥挤。
所以我打算建立一个分割 DHCP将所有智能家居流量 IP 分组并放在单独的路由器上,以免堵塞我的新网络 WiFi 通道。
因此,我的路由器在进入互联网领域之前会连接到另一个不安全的路由器。我不想将用于智能家居设备的路由器放在主路由器旁边,因为访问媒体服务器、蓝光、调谐器等需要在同一子网内,而且处理双重 NAT 就足够了,我不想要三重 NAT。我知道我会失去一些安全性,但我对此没意见。
因此,我的第二个路由器(也就是我的旧路由器)充当 DHCP 服务器,192.168.9.10-192.168.9.99在稍微拥挤的通道1以及一个自动管理的 5GHz 信道,其 SSID 为“智能家居X”&“SmartHomeX-5G”。虽然我的主路由器为其他所有设备提供服务,但 DHCP 服务器192.168.9.150-192.168.9.254在清晰的第11通道2.4GHz 和 2 个自动协商的 5GHz 信道,SSID 为“主页 B”。
这主页路由器是192.168.9.1静止的
这智能家居路由器是192.168.9.6静止的
两者都在255.255.255.0 子网
路由器是通过 LAN 到 LAN 连接在一起的,而不是通过任一方的 WAN 端口连接在一起。
我的 NAS、媒体服务器/蓝光等设备在192.168.9.101-192.168.9.110范围&通过电线连接。
我在各组之间留了一些空间,以防我以后发现需要更多的空间,并且以防我发现需要在任何类别中使用静态地址(我知道我的一些智能家居设备在没有静态地址的情况下会出现问题,如果我在新的设置后遇到这些问题,我会做好准备)
这个设置与我以前做过的任何设置都不同,我的大部分网络经验、我的 A+ 和 CCNA 经验都来自于 WiFi-N 出现之前的日子。
我应该改变什么吗?
我忽略了什么问题吗?
澄清
我对 Split-DHCP 的目标是让 SmartHome 设备保持在有序的 IP 范围内。我最初将第二个路由器设置为具有单独 SSID 的哑桥,并让主路由器处理所有 DHCP。我并不担心 DHCP 流量,而是担心某些 SmartHome 设备(尤其是 Google Homes 和 Amazon FireSticks)在 WiFi 上不断出现小流量(每分钟多个),本质上是坐在“火车”上存放信件。我宁愿有一列单独的火车来处理邮件,这可能会有一些实际的流量,例如在 Google Homes 上播放音乐时,但主要是邮车。
我之前的设置出现了一些问题,我最初以为是路由器坏了,因为有时设备、笔记本电脑、平板电脑、智能电视会说没有互联网。重启设备,甚至关闭/打开 WiFi 通常可以解决问题,但路由器越久不重置,问题就越频繁出现。我更换了路由器,问题仍然存在。问题始终有可能源于主机路由器和双 NAT,但如果是这样,我无能为力。我希望在 Split-DHCP 设置下隔离问题,以帮助我尽可能解决问题,但我的问题是关于我正在实施的设置可能存在的问题。
我承认该设备存在风险智能家居从主页路由器或反之亦然,但据我所知,这不会对网络产生任何负面影响,只会对我的组织结构图产生影响,我可以接受。
答案1
因此,我计划设置分割 DHCP,以防止所有智能家居流量拥塞我的新网络 WiFi 通道。
这些事情彼此之间没什么关联。
DHCP 服务器和 Wi-Fi 信道之间不存在一对一的关系。单个 IP 子网和单个 DHCP 服务器可以通过任意数量的 Wi-Fi AP 进行访问,每个 AP 都有自己的频段和频率。(如果 AP 的 SSID 相同,您还可以在 AP 之间自动漫游。)
(更严谨一点的说法是,DHCP 服务器并不完全创造新网络 – 路由器本身可以做到这一点;DHCP 更像是“支持”基础设施。DHCP 服务不会转发任何实际流量,只会将客户端引导至实际网关。)
如果您的设备主要使用常规“单播”流量(即从主机 A 专门发往主机 B 的数据包),那么将它们分成不同的 IP 子网不会对性能产生太大影响。将它们分成不同的 Wi-Fi 接入点(在不同的信道上)会产生更大的影响,但这与 IP 或 DHCP 无关;您可以轻松地在 5 个不同的信道上设置 5 个接入点,以提供对同一路由器、同一子网等的访问。
更甚的是,听起来你的计划是为两个 DHCP 服务器使用相同的子网号。也就是说不是有助于缓解拥塞;但可能只会让其他事情变得更糟。如果两者实际上在物理上位于不同的子网,那么尝试对两者重复使用相同的子网号 (192.168.9./24) 只会阻止连接之间两个子网 – 如果两个 DHCP 服务器都在同一个子网中,那么拥有两个 DHCP 服务器对于划分流量没有帮助。
只有当某些设备大量发送“广播”或“多播”数据包时,网络的其余部分会这些设备被隔离到自己的 IP 子网也是一种好处。在这种情况下,在 Wi-Fi 接入点中启用“IGMP 监听”或“多播增强”等选项可能会很有用。
(像 Wireshark 这样的数据包捕获工具会显示它是否正在接收大量广播数据包,例如物联网“发现”协议。)
我最初的设置是将 SmartHome 路由器设置为哑桥。本质上是将 SmartHome 设备保持在单独的 SSID 上。这是为了减少 WiFi“通道”的拥塞,而 Split-DHCP 只是为了让 SmartHome 设备保持在同一个 IP 范围内
这听起来不错,但只有当 SmartHome 路由器不再是桥接器而是完整路由器时它才会起作用(否则所有设备仍然会看到跨桥接器的两个 DHCP 服务器)。
但是,如果它不再是桥梁,那么两个路由器一定不使用相同的 IP 网络编号。也就是说,不够只有 DHCP 租约范围不同 - 在您的示例中,两个路由器总体上仍将在相同的 192.168.9.0/24 网络中运行。
其中一个路由器必须更改其“LAN 接口”配置,例如使用 192.168.8.0/24 或类似的配置。
它不再是一座桥梁,或者说,一旦我实现了它,它就不再是一座桥梁,但我需要它们位于同一个子网上。192.168.9.56 上的 Google Home Mini 1 需要能够看到 192.168.9.106 上的 MediaServer,才能播放存储在那里的音乐,而无需将其发送出去并返回到网络上,同样,106 上的 MediaServer 需要看到 192.168.9.88 上的 HDHomerun,以便从中 DVR
这一要求意味着它必须保持桥接(即保持“LAN-LAN”连接)。桥接器将其端口连接到单个物理子网,而路由器将它们分成不同的子网。因此,如果 SmartHome 实际上处于“路由器模式”,那将隔离其网络,并且尝试使用相同的网络号不会撤消此操作 - 您最终会得到两个相同编号的网络。
主要问题是 DHCP 发现的工作原理与 IoT 发现非常相似。如果您有一个跨 MainHome 和 SmartHome 桥接的单个子网,那么其中一个子网的设备将能够向另一个子网的设备发送广播搜索查询,并跨两个 SSID 发现媒体服务器和 IoT 设备 - 但它们将还能够以相同的方式发现 DHCP 服务器。
如果你有两个 DHCP 服务器(“比如你使用 Raspberry Pi 作为 DHCP 服务器”),所有设备都会从两个都服务器,它们之间唯一的区别是“本地”服务器的速度会稍微快一点。大多数情况下。这似乎在大多数情况下都有效,但在许多情况下,它不会按预期工作,SSID A 上的设备最终只会与 SSID B 上的 DHCP 服务器通信——毕竟它们都在同一个子网上。
2 个路由器通过 LAN 端口连接,不使用任何一个的 WAN 端口。因此,它只是 2 个 DHCP 服务器,就像您使用 Raspberry Pi 作为 DHCP 服务器一样
如果这会造成问题,我可以通过主路由器处理所有 DHCP,但我更喜欢为我的个人组织进行排序
您仍然可以仅使用单个 DHCP 服务器来实现组织。许多 DHCP 服务器支持静态配置的租约,其中,给定的 MAC 地址(或给定的 DHCP 客户端 ID)是手动分配地址的,并且始终只获得该地址的租约。这是家用路由器中也存在的一个非常常见的功能。
如果你的主路由器不支持此功能,那么你可以关闭路由器上的 DHCP,然后使用 Raspberry Pi作为唯一的 DHCP 服务器。只需确保 Pi 公布正确的“默认网关”参数(指向真正的路由器,而不是 Pi 本身)。
(我们在工作中这样做:每栋楼都有一个巨大的 10.X.0.0/16 子网,但 34 号房间的 PC 被分配了静态租约 10.X.34.y,71 号房间的 PC 被分配了静态租约 10.X.71.y,等等。)
(有时也可以使用 DHCP 服务器忽略让服务器 1 只向某些设备发送请求,只对其他设备做出响应,并让另一台 DHCP 服务器执行相反的操作(例如,让服务器 1 只向 PC 发送请求,并忽略通过 MAC 地址发送的 IoT 设备)。这样,两台 DHCP 服务器就可以共存。但是,如果您的两台 DHCP 服务器都能够做到这一点……它们很可能还能够向设备发出“静态租约”,这又让您仅使用一台服务器就能实现同样的效果。)