The DHCP_FAILOVER_RELATIONSHIP structure defines the information about a DHCPv4 server failover relationship.
typedef struct _DHCP_FAILOVER_RELATIONSHIP {
DHCP_IP_ADDRESS primaryServer;
DHCP_IP_ADDRESS secondaryServer;
DHCP_FAILOVER_MODE mode;
DHCP_FAILOVER_SERVER serverType;
FSM_STATE state;
FSM_STATE prevState;
DWORD mclt;
DWORD safePeriod;
LPWSTR relationshipName;
LPWSTR primaryServerName;
LPWSTR secondaryServerName;
LPDHCP_IP_ARRAY pScopes;
BYTE percentage;
LPWSTR pSharedSecret;
} DHCP_FAILOVER_RELATIONSHIP,
*LPDHCP_FAILOVER_RELATIONSHIP;
primaryServer: This member is of type DHCP_IP_ADDRESS structure (section 2.2.1.2.1) and specifies the IPv4 address of the primary server in the failover relationship.
secondaryServer: This member is of type DHCP_IP_ADDRESS structure and specifies the IPv4 address of the secondary server in the failover relationship.
mode: This member is of type DHCP_FAILOVER_MODE enumeration (section 2.2.1.1.18) and specifies the mode of the failover relationship.
serverType: This member is of type DHCP_FAILOVER_SERVER enumeration (section 2.2.1.1.19) and specifies the type of failover server.
state: This member is of type FSM_STATE enumeration (section 2.2.1.1.20) and specifies the state of the failover relationship.
prevState: This member is of type FSM_STATE enumeration and specifies the previous state of the failover relationship.
mclt: This member is of type DWORD and defines the maximum client lead time (MCLT) of the failover relationship, in seconds.
safePeriod: This member is of type DWORD and specifies a safe period time in seconds, that the DHCPv4 server will wait before transitioning the server from the COMMUNICATION-INT state to PARTNER-DOWN state, as described in [IETF-DHCPFOP-12], section 10.
relationshipName: This member is a pointer of type LPWSTR that points to a null-terminated Unicode string containing the name of the failover relationship that uniquely identifies a failover relationship. There is no restriction on the length of this Unicode string.
primaryServerName: This member is a pointer of type LPWSTR that points to a null-terminated Unicode string containing the host name of the primary server in the failover relationship. There is no restriction on the length of this Unicode string.
secondaryServerName: This member is a pointer of type LPWSTR that points to a null-terminated Unicode string containing the host name of the secondary server in the failover relationship. There is no restriction on the length of this Unicode string.
pScopes: This member is a pointer of type LPDHCP_IP_ARRAY (section 2.2.1.2.46), which contains the list of IPv4 subnet addresses that are part of the failover relationship.
percentage: This member is of type BYTE and indicates the ratio of the DHCPv4 client load shared between a primary and secondary server in the failover relationship.
pSharedSecret: This member is a pointer of type LPWSTR that points to a null-terminated Unicode string containing the shared secret key associated with this failover relationship. There is no restriction on the length of this string.