Address churn with failover on 3.1.0

Carlos Vicente cvicente at network-services.uoregon.edu
Wed Apr 23 00:51:10 UTC 2008


Hi all.  I'm hoping someone more experienced with the failover protocol
can provide some advice.

Since we moved to a failover setup, we started noticing that machines
are getting different addresses every time they do a discover.  I have
been reading the list archives about similar problems but have not yet
come up with a clear answer. 

This is what I'm seeing:

Apr 22 17:12:25 server2.uoregon.edu dhcpd: DHCPDISCOVER from
00:00:39:37:11:f8 via eth1: load balance to peer dhcp-peer
Apr 22 17:12:25 server1.uoregon.edu dhcpd: DHCPDISCOVER from
00:00:39:37:11:f8 via 10.20.60.3
Apr 22 17:12:26 server1.uoregon.edu dhcpd: DHCPOFFER on 10.20.61.146 to
00:00:39:37:11:f8 (toshiba) via 10.20.60.3
Apr 22 17:12:30 server1.uoregon.edu dhcpd: DHCPDISCOVER from
00:00:39:37:11:f8 (toshiba) via 10.20.60.3
Apr 22 17:12:30 server1.uoregon.edu dhcpd: DHCPOFFER on 10.20.61.146 to
00:00:39:37:11:f8 (toshiba) via 10.20.60.3
Apr 22 17:12:30 server1.uoregon.edu dhcpd: DHCPDISCOVER from
00:00:39:37:11:f8 (toshiba) via 10.20.60.2
Apr 22 17:12:30 server1.uoregon.edu dhcpd: DHCPOFFER on 10.20.61.146 to
00:00:39:37:11:f8 (toshiba) via 10.20.60.2
Apr 22 17:12:30 server2.uoregon.edu dhcpd: DHCPDISCOVER from
00:00:39:37:11:f8 via eth1
Apr 22 17:12:30 server2.uoregon.edu dhcpd: DHCPOFFER on 10.20.61.149 to
00:00:39:37:11:f8 (toshiba) via eth1
Apr 22 17:12:30 server1.uoregon.edu dhcpd: DHCPREQUEST for 10.20.61.149
(10.20.60.22) from 00:00:39:37:11:f8 via 10.20.60.3: lease owned by peer
Apr 22 17:12:30 server1.uoregon.edu dhcpd: DHCPREQUEST for 10.20.61.149
(10.20.60.22) from 00:00:39:37:11:f8 via 10.20.60.2: lease owned by peer
Apr 22 17:12:30 server2.uoregon.edu dhcpd: DHCPREQUEST for 10.20.61.149
(10.20.60.22) from 00:00:39:37:11:f8 (toshiba) via eth1
Apr 22 17:12:30 server2.uoregon.edu dhcpd: DHCPACK on 10.20.61.149 to
00:00:39:37:11:f8 (toshiba) via eth1

Apr 22 17:18:34  server2.uoregon.edu dhcpd: DHCPDISCOVER from
00:00:39:37:11:f8 via eth1: load balance to peer dhcp-peer
Apr 22 17:18:34  server1.uoregon.edu dhcpd: DHCPDISCOVER from
00:00:39:37:11:f8 via 10.20.60.3
Apr 22 17:18:34  server1.uoregon.edu dhcpd: DHCPOFFER on 10.20.61.149 to
00:00:39:37:11:f8 (toshiba) via 10.20.60.3
Apr 22 17:18:38  server2.uoregon.edu dhcpd: DHCPDISCOVER from
00:00:39:37:11:f8 via eth1
Apr 22 17:18:38  server1.uoregon.edu dhcpd: DHCPDISCOVER from
00:00:39:37:11:f8 (toshiba) via 10.20.60.3
Apr 22 17:18:38  server1.uoregon.edu dhcpd: DHCPOFFER on 10.20.61.149 to
00:00:39:37:11:f8 (toshiba) via 10.20.60.3
Apr 22 17:18:38  server1.uoregon.edu dhcpd: DHCPDISCOVER from
00:00:39:37:11:f8 (toshiba) via 10.20.60.2
Apr 22 17:18:38  server1.uoregon.edu dhcpd: DHCPOFFER on 10.20.61.149 to
00:00:39:37:11:f8 (toshiba) via 10.20.60.2
Apr 22 17:18:38  server2.uoregon.edu dhcpd: DHCPOFFER on 10.20.61.150 to
00:00:39:37:11:f8 (toshiba) via eth1
Apr 22 17:18:38  server1.uoregon.edu dhcpd: DHCPREQUEST for 10.20.61.150
(10.20.60.22) from 00:00:39:37:11:f8 via 10.20.60.3: lease owned by peer
Apr 22 17:18:38  server2.uoregon.edu dhcpd: DHCPREQUEST for 10.20.61.150
(10.20.60.22) from 00:00:39:37:11:f8 (toshiba) via eth1
Apr 22 17:18:38  server2.uoregon.edu dhcpd: DHCPACK on 10.20.61.150 to
00:00:39:37:11:f8 (toshiba) via eth1
Apr 22 17:18:38  server1.uoregon.edu dhcpd: DHCPREQUEST for 10.20.61.150
(10.20.60.22) from 00:00:39:37:11:f8 via 10.20.60.2
Apr 22 17:18:38  server1.uoregon.edu dhcpd: DHCPACK on 10.20.61.150 to
00:00:39:37:11:f8 (toshiba) via 10.20.60.2

Apr 22 17:16:46 server2 dhcpd: balanced pool a02f738 10.20.60/23  total
164  free 92  backup 61  lts -15  max-misbal 23
Apr 22 17:16:45 server1 dhcpd: balanced pool 96d6770 10.20.60/23  total
164  free 92  backup 61  lts 15  max-misbal 23

Here are the relevant config sections:

failover peer "dhcp-peer" {
  primary;                      # This is the primary server
  address 10.20.32.35;
  port 520;
  peer address 10.20.60.22;
  peer port 520;
  max-response-delay 60;
  max-unacked-updates 10;
  split 128;                   
  mclt 900;
  load balance max seconds 3;
}

failover peer "dhcp-peer" {
  secondary;                    # This is the secondary server
  address 10.20.60.22;
  port 520;
  peer address 10.20.32.35;
  peer port 520;
  max-response-delay 60;
  max-unacked-updates 10;
  load balance max seconds 3;
}

All our subnets are connected to two redundant cisco 6500's with VRRP
(similar to HSRP) and doing ip-helpering and, that's why you see the
DHCPDISCOVERs coming from multiple relays. 



More information about the dhcp-users mailing list