如何处理两个“ ip helper-address”语句?


15

我发现了一个带有两个“ ip helper-address”语句的子网。这不是我们的正常配置。

interface Vlan300
 ip address 10.1.3.2 255.255.255.0
 ip helper-address 10.2.1.10
 ip helper-address 10.3.1.10

查看我们的DHCP服务器,似乎两者都有租约。

我意识到不建议这样做,并且两个DHCP服务器可能不知道彼此的租约分配(我很确定他们没有)。

问题是,思科交换机(4510 Sup7 12.2)如何处理此问题?

  • 它是第一个响应的DHCP服务器吗?
  • 是第一个,然后是第二个(如果第一个超时)?
  • 是循环赛吗?

Answers:


12

ip helper-address命令指定一个地址,广播将被转发到该地址;它将原始数据包发送到每个列出的地址。

如果两个都答复,则两个答复都转发回局域网。


1
因此,主机将从第一个响应的DHCP服务器中获取IP-如果另一个接近通过WAN,那么一个接近者将获胜?
伪网络网

2
通常是的。这样做的一个原因是DHCP的故障转移/ HA(例如,ISC DHCPD支持此操作)
LapTop006

2
ACK LapTop006是正确的。DHCP客户端将通过设计优雅地处理这种双重报价的情况,不需要特定的实现。
ytti 2013年

6

您的ip-helper是实现冗余的正确方法,并且推荐的方法。

ip-helper提取DHCPDiscovery(广播),然后使用请求中的中继代理(路由器)单播到每个DHCP服务器。

通常,第一个响应的DHCP服务器会获胜。 两个DHCP服务器都可以(并且应该)向客户端提供DCHPOffers。客户端决定保留哪个客户端,然后将DHCPRequest(单播)发送到为其提供要使用的IP的服务器。服务器需要DHCPAck该请求才能完成该过程。

为了实现冗余,但又不违反没有为IP池定义重叠范围的DHCP规则,您需要两个ip-helper。由于DHCP服务器彼此之间不知道,因此IP池必须唯一。 DHCP冗余的一种常用方法是采用典型的/ 24子网,并将其分为两个/ 25(用于每个服务器)(每个服务器一个)。

示例:192.0.2.0/24是您的实际网络,因此将其分为192.0.2.0/25和192.0.2.128/25。因此,大约256个地址被切分为两个128个地址的池,并分配给每个DHCP作用域。现在您没有重叠的地址+冗余。

由于将范围池减半,因此如果一台DHCP服务器出现故障,请确保服务器可以支持整个网络。将租用时间视为客户端可以保留其地址的持续时间,如果您有许多轮换的客户端,则地址不会耗尽您的池,但是能够给您足够的时间来检测和修复出现故障的DHCP服务器。


1
实际上,您不想划分它们,而是在所有dhcp服务器上配置相同的作用域,并在每台服务器上设置唯一的排除范围。这样,如果一台服务器宕机了一段时间,您将具有更好的敏捷性。
pauska,

1
排除项往往被埋在配置中,我更喜欢看到两个作用域可以通过它们的独立池轻松识别,因此毫无疑问每个DHPC服务器在做什么。只要设计可以在一段时间内处理发生故障的DHCP服务器,我就认为没有问题,但是我同意走排除路线对于某些人来说是更好的选择。(这些评论是针对Windows DHCP的GUI的,其中包含了一些细节。)
generalnetworkerror

2

IIRC,它将同时发送给已配置的帮助程序和最快的获胜程序。


1

关于您对DHCP不了解其他租约的担心,在将DHCPOFFER发送到主机之前,DHCP服务器会向IP地址发送ICMP消息,如果DHCP服务器收到了ICMP Echo Reply消息,则DHCP服务器选择另一个IP地址,然后向该IP地址发送另一个ICMP消息,直到未收到ICMP Echo Reply消息为止,然后DHCP服务器将DHCPOFFER中的IP地址发送给主机。


如果这样配置。可以将其DHCP服务器配置为不像这样“保护”分配。
Ricky Beam

我会比Ricky走得更远些,并说这在许多较大的网络中已不再是常见的做法,因为它会在DHCP服务器上造成性能问题。现在,大多数工作站都运行本地防火墙,并且通常不响应ping请求,但是服务器仍然必须为每个请求等待一些超时时间。这也使该功能的使用性降低(带有防火墙的工作站将无法响应,服务器必须等待请求超时,并且仍然会导致IP冲突)。
YLearn
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.