在路由器中,您可以创建和配置多个 DHCP 池,每个池都有自己的默认路由和 dns 服务器。而且由于 DHCP 池配置不是特定于路由器中的接口,我想了解设备将从哪个池中选择其 IP 地址。是随机的吗?还是基于设备用于连接 DHCP 服务器的地址?
设备如何在多个 DHCP 池之间进行选择?
我相信池是由路由器或 DHCP 中继的传入接口选择的。路由器匹配池,其地址与传入接口网络/网络掩码匹配。路由器 (R1) 上的多个池可能未绑定到 R1 接口,因为可以通过路由器/DHCP 中继 (R2) 接收 DHCP 数据包。在这种情况下,中继的数据包也将具有 R2 的传入接口字段,并且 R1 将执行相同的选择。
在DHCP 服务器(可能集成在路由器中)上,您可以配置多个范围,每个范围具有一个或多个地址池。每个范围与本地接口子网匹配或与中继一起使用,中继又用于地址匹配(根据选项 82,有时使用策略)。
像 DNS 服务器和路由器这样的 DHCP 选项通常在作用域(或全局)上配置,而不是在地址池上(因此是server options和scope options)。
范围匹配对于服务器来说是明确的。当一个范围内有多个地址池时,服务器可以随意选择其中一个。
实际上,您通过做出一些不正确的陈述使事情变得有些复杂,因此我将逐个回答您的问题。
在路由器中,您可以创建和配置多个 DHCP 池,每个 DHCP 池都有自己的默认路由。
- DHCP 池将没有默认的“路由”。DHCP 服务器将与客户端通信一个默认的“网关”,我相信这就是你的意思。该默认网关可以是路由器本身(通常是路由器在池所针对的子网内的 IP 接口),或者提供的网关可以是另一个 IP 地址,甚至是另一个设备。例如,充当 DHCP 服务器的 Windows Server 可能会建议客户端默认网关是路由器 IP 地址。
和dns服务器。
- DHCP 池没有自己的 DNS 服务器。DHCP 和 DNS 是两种不同的服务。不过,DHCP 池通常会建议客户端使用什么 DNS 服务器。这可能是提供 DHCP 池的同一设备(例如路由器),在这种情况下,路由器充当 DNS 代理以及 DHCP 服务器。或者,可以建议客户端使用不同的 DNS 服务器 - 这甚至可以是外部 DNS 服务器,例如 Google 的 8.8.8.8。
并且因为 DHCP 池配置不是特定于路由器中的接口
- 是的。一般而言,单个设备(例如路由器)将为每个子网提供一个 DHCP 池,而路由器又将在该子网内拥有一个 IP 地址(接口)。
我想了解设备将从哪个池中选择其 IP 地址
- “正确”的配置通常是路由器的每个子网有一个 DHCP 池,该池又会分配一个 VLAN,因此客户端设备将从分配给它们所连接的 VLAN 的 DHCP 池中获取 IP 地址。
您可能会在同一子网中看到多个 DHCP 池(按顺序排列,不重叠)的唯一情况是需要 DHCP 分配的弹性。
例如,您可以有两个不同的 Windows Server DHCP 服务器在同一子网上提供 IP 地址,一个提供 192.168.1.100-150,另一个提供 192.168.151-200,仅作为示例。这样,如果一个人离线,客户仍然可以获得地址。
- 是随机的吗? 不,你会发现网络不是一门随机的科学。
- 还是基于设备用于连接 DHCP 服务器的地址? 不,因为你在这里创造了一个先有鸡还是先有蛋的悖论。如果 DHCP 分配是基于设备地址的,如果设备还没有与 DHCP 服务器通信,它怎么会有地址呢?DHCP 池分配基于以下内容:
- 客户端设备在 VLAN 上进行通信。
- DHCP 池在与该 VLAN 关联的 SUBNET 上可用。
- 已在 DHCP 服务器上为该 SUBNET 创建了 DHCP 范围/池。
- DHCP 服务器在该 SUBNET 上有一个 IP 接口,该接口能够通过物理接口与相关客户端设备的 VLAN 进行通信。
配置 DHCP 池时配置默认网关信息例如
Switch(config) ip DHCP 池 vlan30
Switch(config)# 网络 192.168.10.0 255.255.255.0
Switch(config)#ip default gateway 192.168.10.1
最后一条命令告诉设备使用默认网关 192.168.10.1 从此 DHCP 范围为 pc 分配 ip