Share via


3.1.4.2 Synchronize Lease Database by Sending DHCP Failover BNDUPD Message

If there is any change in the lease database, the server MUST send the lease update to its failover partner. The DHCP servers implementing this specification MUST send a BNDUPD message to its failover partner server as described in [IETF-DHCPFOP-12] section 7.1.1.

If multiple lease updates are packed in a single BNDUPD message, the number of lease updates MUST be less than or equal to 16.

The BNDUPD message corresponding to an update in the DHCPv4 client lease record contains the IP-Flag option, which is used to convey the current flags for an IP address, and MUST have one of the following combinations of bit values.

Value

Meaning

FAILOVER_ADDRESS_DELETED (0x1)

The DHCPv4 client lease record has to be deleted from the DHCP server database.

FAILOVER_ADDRESS_RELEASED (0x2)

The DHCPv4 client lease has been released by the client.

FAILOVER_DELETED_COMM_DOWN (0x4)

The DHCPv4 client lease record has been deleted while communication with the partner was down.

The Binding Status option which is used to convey the current state of an IP address does not contain the values specified in [IETF-DHCPFOP-12] section 12.3. Instead, the Binding Status option MUST contain one of the following combinations of bits to indicate the various states of the IP address.

The bits are numbered as follows:

BIT 7

BIT 6

BIT 5

BIT 4

BIT 3

BIT 2

BIT 1

BIT 0

The following tables identify the various bit representation values and their meanings.

BIT 0 and BIT 1 signify the state of the leased IPv4 address, as shown in the following table.

Value

Meaning

ADDRESS_STATE_OFFERED (0x0)

The DHCPv4 client is offered this IPv4 address.

ADDRESS_STATE_ACTIVE (0x1)

The IPv4 address is active and has an active DHCPv4 client lease record.

ADDRESS_STATE_DECLINED (0x2)

The IPv4 address request is declined by the DHCPv4 client; therefore, the specified value is an invalid IPv4 address.

ADDRESS_STATE_DOOM (0x3)

The IPv4 address is in the DOOMED state and is marked for deletion.

BIT 2 and BIT 3 signify information related to Name Protection (section 3.3.3) for the leased IPv4 address, as shown in the following table.

Value

Meaning

ADDRESS_BIT_NO_DHCID (0x0)

The address is leased to the DHCPv4 client without DHCID ([RFC4701] sections 3 and 3.5).

ADDRESS_BIT_DHCID_NO_CLIENTIDOPTION (0x1)

The address is leased to the DHCPv4 client with DHCID as specified in [RFC4701] section 3.5.3.

ADDRESS_BIT_DHCID_WITH_CLIENTIDOPTION (0x2)

The address is leased to the DHCPv4 client with DHCID as specified in [RFC4701] section 3.5.2.

ADDRESS_BIT_DHCID_WITH_DUID (0x3)

The address is leased to the DHCPv4 client with DHCID as specified in [RFC4701] section 3.5.1.

BIT 4, BIT 5, BIT 6, and BIT 7 specify information related to DNS, as shown in the following table.

Value

Meaning

ADDRESS_BIT_CLEANUP (0x1)

The DNS update for the DHCPv4 client lease record has to be deleted from the DNS server when the lease is deleted.

ADDRESS_BIT_BOTH_REC (0x2)

The DNS update has to be sent for both the A and PTR resource records. For more details of DNS A and PTR resource records, see [RFC1035].

ADDRESS_BIT_UNREGISTERED (0x4)

The DNS update is not completed for the lease record.

ADDRESS_BIT_DELETED (0x8)

The address lease is expired, but the DNS updates for the lease record have not been deleted from the DNS server.

If a BNDUPD message is sent to redistribute the IPv4 address space between the failover partners, the message MUST contain the IP-Flag option with the option value set to 0. The Binding Status option MUST be one of the following values.

Value

Meaning

FAILOVER_ADDRESS_FREE (0x1)

The ownership of the IPv4 address is with the primary server.

FAILOVER_ADDRESS_BACKUP (0x2)

The ownership of the IPv4 address is with the secondary server.

FAILOVER_ADDRESS_RECONCILE (0x4)

The ownership of the IPv4 address is reclaimed by the primary server from the secondary server. 

FAILOVER_ADDRESS_FREE_UPDATE   (0x5)

In the case of database loss, the update containing the ownership of the IPv4 address by the primary server is sent to the secondary server.

FAILOVER_ADDRESS_BACKUP_UPDATE (0x6)

In the case of database loss, the update containing the ownership of the IPv4 address by the secondary server is sent to the secondary server.

The acceptable values for the Binding Update option specified in the preceding tables are internally mapped to one of the values defined in [IETF-DHCPFOP-12] section 12.3 as follows:

  • If the Binding Status option value is FAILOVER_ADDRESS_FREE, FAILOVER_ADDRESS_FREE_UPDATE, or FAILOVER_ADDRESS_RECONCILE, then

    • If there is no lease record corresponding to the IP address, mark the IP address state as FREE.

  • Otherwise, if the Binding Status option value is FAILOVER_ADDRESS_BACKUP or FAILOVER_ADDRESS_BACKUP_UPDATE, then

    • If there is no lease record corresponding to the IP address, mark the IP address state as BACKUP.

  • Otherwise, if the IP Flag option value has the FAILOVER_ADDRESS_RELEASED bit set, mark the IP address state as RELEASED.

  • Otherwise, if the Binding Status option value has the ADDRESS_STATE_DOOM bit set, mark the IP address state as EXPIRED.

  • Otherwise, if the Binding Status option value has the ADDRESS_STATE_DECLINED bit set, mark the IP address state as EXPIRED.

  • Otherwise, mark the IP address state as ACTIVE.

The Extended Binding Status option is used to convey additional state information of an IP address. The option is specified as a 4-byte value where the bits are numbered as follows:

BIT 1 through BIT 31

BIT 0

BIT 0 indicates whether the DHCP server skips DNS PTR record registration while performing DNS registration on behalf of the client.

Value

Meaning

V5_ADDRESS_EX_BIT_DISABLE_PTR_RR (0x01)   

The DHCP server skips DNS PTR record registration while performing DNS registration on behalf of the client.

BITs 1 through BIT 31 are reserved for future use.