delayed-ack disrupts failover ?

Laurent PROUFF lprouff at auchan.fr
Tue Nov 22 16:51:54 UTC 2011


Hello all,

 (i've already sent this message without subscribing prior to the list, so
sorry if you received my post twice)

 short description : using the same configuration, failover works perfectly
without delayed-ack but seems to "freeze" with delayed-ack. (tested on
dhcp-4.1.ESV-R3 and dhcp-4.2.2)


 I known that delayed-ack is not a recommended feature, but i would like to
known if the configuration listed below (or at least, one parameter) is in
cause.

 Tests were made with binaries from 4.1 and 4.2.2, compiled with and
without --enable-delayed-ack. For each test, dhcp leases file was zeroed
and primary/secondary restarted.

 In the "delayed-ack mode", logs and leases file never reports failover
activity except on startup (see logs below). One direct consequence of this
is that EXPIRED and RELEASED leases never go back into FREE state (see
leases file) and therefore the pool may becomes full. The only way i found
to resync those leases, is to restart one peer.

 I have attached all files (from dhcp-4.2.2 tests) which seems important to
me (logs file are GMT+1).

 OS is a Redhat 6.1, kernel is 2.6.32-131 x86_64.


Thanks in advance for reply,
laurent



######## PRIMARY configuration file
failover peer "dhcp-failover" {
  primary;
  address 192.168.127.251;
  port 647;
  peer address 192.168.127.252;
  peer port 647;
  max-response-delay 60;
  max-unacked-updates 10;
  load balance max seconds 3;
  max-lease-ownership 5;
  max-lease-misbalance 10;
  max-balance 60;
  min-balance 30;
  mclt 120;
  split 128;
}

log-facility local2;
update-conflict-detection false;
not authoritative;
ddns-update-style interim;
update-static-leases on;
one-lease-per-client true;
deny duplicates;
ignore declines;
deny client-updates;
ignore bootp;
#do-forward-updates true;
#min-secs 0;
ping-check true;
ping-timeout 1;
update-optimization true;
min-lease-time          300;
max-lease-time          300;
default-lease-time      300;

subnet 128.200.0.0 netmask 255.255.0.0 {
  option routers 128.200.1.1;
  option domain-name-servers 128.200.1.12,128.200.1.13;
  pool {
    failover peer "dhcp-failover"; deny dynamic bootp clients;
    range 128.200.10.1 128.200.10.4;
  }
}


######## SECONDARY configuration file (only failover statement shown here)
failover peer "dhcp-failover" {
  secondary;
  address 192.168.127.252;
  port 647;
  peer address 192.168.127.251;
  peer port 647;
  max-response-delay 60;
  max-unacked-updates 10;
  load balance max seconds 3;
  max-lease-ownership 5;
  max-lease-misbalance 10;
  max-balance 60;
  min-balance 30;
}




######## PRIMARY dhcpd logs [OK]
Nov 17 13:43:59 dhcp-1 dhcpd: Listening on LPF/eth0.500/00:0c:29:34:8d:b9/
128.200.0.0/16
Nov 17 13:43:59 dhcp-1 dhcpd: Sending on   LPF/eth0.500/00:0c:29:34:8d:b9/
128.200.0.0/16
...
Nov 17 13:44:10 dhcp-1 dhcpd: balancing pool 9e61f0 128.200.0.0/16  total 4
 free 4  backup 0  lts 2  max-own (+/-)0
Nov 17 13:44:10 dhcp-1 dhcpd: balanced pool 9e61f0 128.200.0.0/16  total 4
 free 2  backup 2  lts 0  max-misbal 0
Nov 17 13:44:10 dhcp-1 dhcpd: Sending updates to dhcp-failover.
Nov 17 13:44:10 dhcp-1 dhcpd: failover peer dhcp-failover: peer moves from
recover-done to normal
Nov 17 13:44:14 dhcp-1 dhcpd: DHCPRELEASE of 128.200.10.3 from
00:1c:23:88:dc:47 via eth0.500 (not found)
Nov 17 13:44:15 dhcp-1 dhcpd: DHCPDISCOVER from 00:1c:23:88:dc:47 via
eth0.500
Nov 17 13:44:16 dhcp-1 dhcpd: DHCPOFFER on 128.200.10.3 to
00:1c:23:88:dc:47 (kzlaptop) via eth0.500
Nov 17 13:44:16 dhcp-1 dhcpd: DHCPREQUEST for 128.200.10.3 (128.200.1.12)
from 00:1c:23:88:dc:47 (kzlaptop) via eth0.500
Nov 17 13:44:16 dhcp-1 dhcpd: DHCPACK on 128.200.10.3 to 00:1c:23:88:dc:47
(kzlaptop) via eth0.500
Nov 17 13:45:12 dhcp-1 dhcpd: balancing pool 9e61f0 128.200.0.0/16  total 4
 free 1  backup 2  lts 0  max-own (+/-)0
Nov 17 13:45:12 dhcp-1 dhcpd: balanced pool 9e61f0 128.200.0.0/16  total 4
 free 1  backup 2  lts 0  max-misbal 0
Nov 17 13:46:13 dhcp-1 dhcpd: balancing pool 9e61f0 128.200.0.0/16  total 4
 free 1  backup 2  lts 0  max-own (+/-)0
Nov 17 13:46:13 dhcp-1 dhcpd: balanced pool 9e61f0 128.200.0.0/16  total 4
 free 1  backup 2  lts 0  max-misbal 0
Nov 17 13:47:13 dhcp-1 dhcpd: balancing pool 9e61f0 128.200.0.0/16  total 4
 free 2  backup 2  lts 0  max-own (+/-)0
Nov 17 13:47:13 dhcp-1 dhcpd: balanced pool 9e61f0 128.200.0.0/16  total 4
 free 2  backup 2  lts 0  max-misbal 0
---------------------------------------------------------------------------------^
LEASED THEN FREED, OK.

######## SECONDARY dhcpd logs [OK]
Nov 17 13:44:11 dhcp-2 dhcpd: Listening on LPF/eth0.500/00:0c:29:44:0c:04/
128.200.0.0/16
Nov 17 13:44:11 dhcp-2 dhcpd: Sending on   LPF/eth0.500/00:0c:29:44:0c:04/
128.200.0.0/16
...
Nov 17 13:44:11 dhcp-2 dhcpd: balancing pool 10531b0 128.200.0.0/16  total
4  free 4  backup 0  lts -2  max-own (+/-)0
Nov 17 13:44:11 dhcp-2 dhcpd: balanced pool 10531b0 128.200.0.0/16  total 4
 free 4  backup 0  lts -2  max-misbal 0
Nov 17 13:44:11 dhcp-2 dhcpd: failover peer dhcp-failover: peer moves from
recover-done to normal
Nov 17 13:44:16 dhcp-2 dhcpd: DHCPDISCOVER from 00:1c:23:88:dc:47 via
eth0.500: load balance to peer dhcp-failover
Nov 17 13:44:17 dhcp-2 dhcpd: DHCPREQUEST for 128.200.10.3 (128.200.1.12)
from 00:1c:23:88:dc:47 via eth0.500: lease owned by peer
Nov 17 13:44:42 dhcp-2 dhcpd: balancing pool 10531b0 128.200.0.0/16  total
4  free 1  backup 2  lts 0  max-own (+/-)0
Nov 17 13:44:42 dhcp-2 dhcpd: balanced pool 10531b0 128.200.0.0/16  total 4
 free 1  backup 2  lts 0  max-misbal 0
Nov 17 13:45:43 dhcp-2 dhcpd: balancing pool 10531b0 128.200.0.0/16  total
4  free 1  backup 2  lts 0  max-own (+/-)0
Nov 17 13:45:43 dhcp-2 dhcpd: balanced pool 10531b0 128.200.0.0/16  total 4
 free 1  backup 2  lts 0  max-misbal 0
Nov 17 13:46:44 dhcp-2 dhcpd: balancing pool 10531b0 128.200.0.0/16  total
4  free 2  backup 2  lts 0  max-own (+/-)0
Nov 17 13:46:44 dhcp-2 dhcpd: balanced pool 10531b0 128.200.0.0/16  total 4
 free 2  backup 2  lts 0  max-misbal 0
----------------------------------------------------------------------------------^
SECONDARY WELL SYNCED



######## PRIMARY dhcpd logs [BAD]
Nov 17 13:49:31 dhcp-1 dhcpd: Listening on LPF/eth0.500/00:0c:29:34:8d:b9/
128.200.0.0/16
Nov 17 13:49:31 dhcp-1 dhcpd: Sending on   LPF/eth0.500/00:0c:29:34:8d:b9/
128.200.0.0/16
...
Nov 17 13:49:36 dhcp-1 dhcpd: balancing pool 917230 128.200.0.0/16  total 4
 free 4  backup 0  lts 2  max-own (+/-)0
Nov 17 13:49:36 dhcp-1 dhcpd: balanced pool 917230 128.200.0.0/16  total 4
 free 2  backup 2  lts 0  max-misbal 0
Nov 17 13:49:36 dhcp-1 dhcpd: Sending updates to dhcp-failover.
Nov 17 13:49:36 dhcp-1 dhcpd: failover peer dhcp-failover: peer moves from
recover-done to normal
Nov 17 13:50:17 dhcp-1 dhcpd: DHCPDISCOVER from 00:1c:23:88:dc:47 via
eth0.500
Nov 17 13:50:18 dhcp-1 dhcpd: DHCPOFFER on 128.200.10.3 to
00:1c:23:88:dc:47 (kzlaptop) via eth0.500
Nov 17 13:50:18 dhcp-1 dhcpd: DHCPREQUEST for 128.200.10.3 (128.200.1.12)
from 00:1c:23:88:dc:47 (kzlaptop) via eth0.500
Nov 17 13:50:18 dhcp-1 dhcpd: DHCPACK on 128.200.10.3 to 00:1c:23:88:dc:47
(kzlaptop) via eth0.500
Nov 17 13:50:36 dhcp-1 dhcpd: balancing pool 917230 128.200.0.0/16  total 4
 free 1  backup 2  lts 0  max-own (+/-)0
Nov 17 13:50:36 dhcp-1 dhcpd: balanced pool 917230 128.200.0.0/16  total 4
 free 1  backup 2  lts 0  max-misbal 0
Nov 17 13:51:37 dhcp-1 dhcpd: balancing pool 917230 128.200.0.0/16  total 4
 free 1  backup 2  lts 0  max-own (+/-)0
Nov 17 13:51:37 dhcp-1 dhcpd: balanced pool 917230 128.200.0.0/16  total 4
 free 1  backup 2  lts 0  max-misbal 0
Nov 17 13:52:38 dhcp-1 dhcpd: balancing pool 917230 128.200.0.0/16  total 4
 free 1  backup 2  lts 0  max-own (+/-)0
Nov 17 13:52:38 dhcp-1 dhcpd: balanced pool 917230 128.200.0.0/16  total 4
 free 1  backup 2  lts 0  max-misbal 0
Nov 17 13:53:40 dhcp-1 dhcpd: balancing pool 917230 128.200.0.0/16  total 4
 free 1  backup 2  lts 0  max-own (+/-)0
Nov 17 13:53:40 dhcp-1 dhcpd: balanced pool 917230 128.200.0.0/16  total 4
 free 1  backup 2  lts 0  max-misbal 0
---------------------------------------------------------------------------------^
LEASED BUT NEVER FREED

######## SECONDARY dhcpd logs [BAD]
Nov 17 13:49:36 dhcp-2 dhcpd: Listening on LPF/eth0.500/00:0c:29:44:0c:04/
128.200.0.0/16
Nov 17 13:49:36 dhcp-2 dhcpd: Sending on   LPF/eth0.500/00:0c:29:44:0c:04/
128.200.0.0/16
...
Nov 17 13:49:36 dhcp-2 dhcpd: balancing pool 11461f0 128.200.0.0/16  total
4  free 4  backup 0  lts -2  max-own (+/-)0
Nov 17 13:49:36 dhcp-2 dhcpd: balanced pool 11461f0 128.200.0.0/16  total 4
 free 4  backup 0  lts -2  max-misbal 0
Nov 17 13:49:36 dhcp-2 dhcpd: failover peer dhcp-failover: peer moves from
recover-done to normal
Nov 17 13:50:08 dhcp-2 dhcpd: balancing pool 11461f0 128.200.0.0/16  total
4  free 2  backup 2  lts 0  max-own (+/-)0
Nov 17 13:50:08 dhcp-2 dhcpd: balanced pool 11461f0 128.200.0.0/16  total 4
 free 2  backup 2  lts 0  max-misbal 0
Nov 17 13:50:17 dhcp-2 dhcpd: DHCPDISCOVER from 00:1c:23:88:dc:47 via
eth0.500: load balance to peer dhcp-failover
Nov 17 13:50:18 dhcp-2 dhcpd: DHCPREQUEST for 128.200.10.3 (128.200.1.12)
from 00:1c:23:88:dc:47 via eth0.500: lease owned by peer
Nov 17 13:51:12 dhcp-2 dhcpd: balancing pool 11461f0 128.200.0.0/16  total
4  free 2  backup 2  lts 0  max-own (+/-)0
Nov 17 13:51:12 dhcp-2 dhcpd: balanced pool 11461f0 128.200.0.0/16  total 4
 free 2  backup 2  lts 0  max-misbal 0
Nov 17 13:52:13 dhcp-2 dhcpd: balancing pool 11461f0 128.200.0.0/16  total
4  free 2  backup 2  lts 0  max-own (+/-)0
Nov 17 13:52:13 dhcp-2 dhcpd: balanced pool 11461f0 128.200.0.0/16  total 4
 free 2  backup 2  lts 0  max-misbal 0
Nov 17 13:53:13 dhcp-2 dhcpd: balancing pool 11461f0 128.200.0.0/16  total
4  free 2  backup 2  lts 0  max-own (+/-)0
Nov 17 13:53:13 dhcp-2 dhcpd: balanced pool 11461f0 128.200.0.0/16  total 4
 free 2  backup 2  lts 0  max-misbal 0
----------------------------------------------------------------------------------^
SECONDARY NEVER SEE IT WAS LEASED


######## PRIMARY leases file [OK]
...
failover peer "dhcp-failover" state {
  my state normal at 4 2011/11/17 12:44:10;
  partner state normal at 4 2011/11/17 12:43:59;
}
...
lease 128.200.10.3 {
  starts 4 2011/11/17 12:44:16;
  ends 4 2011/11/17 12:46:16;
  tstp 4 2011/11/17 12:50:16;
  cltt 4 2011/11/17 12:44:16;
  binding state active;
  next binding state expired;
  hardware ethernet 00:1c:23:88:dc:47;
  client-hostname "kzlaptop";
}
lease 128.200.10.3 {
  starts 4 2011/11/17 12:44:16;
  ends 4 2011/11/17 12:46:16;
  tstp 4 2011/11/17 12:50:16;
  tsfp 4 2011/11/17 12:50:16;
  atsfp 4 2011/11/17 12:50:16;
  cltt 4 2011/11/17 12:44:16;
  binding state active;
  next binding state expired;
  hardware ethernet 00:1c:23:88:dc:47;
  client-hostname "kzlaptop";
}
lease 128.200.10.3 {
  starts 4 2011/11/17 12:44:16;
  ends 4 2011/11/17 12:46:16;
  tstp 4 2011/11/17 12:50:16;
  tsfp 4 2011/11/17 12:50:16;
  cltt 4 2011/11/17 12:44:16;
  binding state expired;
  next binding state free;
  hardware ethernet 00:1c:23:88:dc:47;
  client-hostname "kzlaptop";
}
lease 128.200.10.3 {
  starts 4 2011/11/17 12:44:16;
  ends 4 2011/11/17 12:46:16;
  tstp 4 2011/11/17 12:46:16;
  tsfp 4 2011/11/17 12:50:16;
  atsfp 4 2011/11/17 12:50:16;
  cltt 4 2011/11/17 12:44:16;
  binding state free;
  hardware ethernet 00:1c:23:88:dc:47;
}

######## SECONDARY leases file [OK]
...
failover peer "dhcp-failover" state {
  my state normal at 4 2011/11/17 12:44:11;
  partner state normal at 4 2011/11/17 12:44:11;
  mclt 120;
}
...
lease 128.200.10.3 {
  starts 4 2011/11/17 12:44:16;
  ends 4 2011/11/17 12:46:16;
  tsfp 4 2011/11/17 12:50:16;
  atsfp 4 2011/11/17 12:50:16;
  binding state active;
  next binding state expired;
  hardware ethernet 00:1c:23:88:dc:47;
}
lease 128.200.10.3 {
  starts 4 2011/11/17 12:44:16;
  ends 4 2011/11/17 12:46:16;
  tstp 4 2011/11/17 12:46:16;
  tsfp 4 2011/11/17 12:50:16;
  atsfp 4 2011/11/17 12:50:16;
  binding state free;
  hardware ethernet 00:1c:23:88:dc:47;
}



######## PRIMARY leases file [BAD]
...
failover peer "dhcp-failover" state {
  my state normal at 4 2011/11/17 12:49:36;
  partner state normal at 4 2011/11/17 12:49:31;
}
...
lease 128.200.10.3 {
  starts 4 2011/11/17 12:50:18;
  ends 4 2011/11/17 12:52:18;
  tstp 4 2011/11/17 12:56:18;
  cltt 4 2011/11/17 12:50:18;
  binding state active;
  next binding state expired;
  rewind binding state free;
  hardware ethernet 00:1c:23:88:dc:47;
  client-hostname "kzlaptop";
}
lease 128.200.10.3 {
  starts 4 2011/11/17 12:50:18;
  ends 4 2011/11/17 12:52:18;
  tstp 4 2011/11/17 12:56:18;
  cltt 4 2011/11/17 12:50:18;
  binding state expired;
  next binding state free;
  hardware ethernet 00:1c:23:88:dc:47;
  client-hostname "kzlaptop";
}

######## SECONDARY leases file [BAD]
...
failover peer "dhcp-failover" state {
  my state normal at 4 2011/11/17 12:49:36;
  partner state normal at 4 2011/11/17 12:49:36;
  mclt 120;
}
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.isc.org/pipermail/dhcp-users/attachments/20111122/78a8306c/attachment.html>


More information about the dhcp-users mailing list