- Artikel
- 22Minuten Lesedauer
Dieses Kapitel enthält eine Beschreibung aller AzureRTOS NetXDuo DHCPv6-Clientdienste (unten aufgeführt) in alphabetischer Reihenfolge.
Im Abschnitt „Rückgabewerte“ in den folgenden API-Beschreibungen sind FETT formatierte Werte nicht von der zum Deaktivieren der API-Fehlerprüfung verwendeten Option NX_DISABLE_ERROR_CHECKING betroffen. Nicht fett formatierte Werte sind vollständig deaktiviert.
nx_dhcpv6_client_create
Eine DHCPv6-Client-Instanz erstellen
Prototyp
UINT nx_dhcpv6_client_create( NX_DHCPV6 *dhcpv6_ptr, NX_IP *ip_ptr, CHAR *name_ptr, NX_PACKET_POOL *packet_pool_ptr, VOID *stack_ptr, ULONG stack_size, VOID (*dhcpv6_state_change_notify)( struct NX_DHCPV6_STRUCT *dhcpv6_ptr, UINT old_state, UINT new_state), VOID (*dhcpv6_server_error_handler)( struct NX_DHCPV6_STRUCT *dhcpv6_ptr, UINT op_code, UINT status_code, UINT message_type));
Beschreibung
Dieser Dienst erstellt eine DHCPv6-Client-Instanz einschließlich Rückruffunktionen.
Eingabeparameter
dhcpv6_ptr: Zeiger auf DHCPv6-Steuerungsblock
ip_ptr: Zeiger auf Client-IP-Instanz
name_ptr: Zeiger auf den Namen für DHCPv6-Instanz
packet_pool_ptr Zeiger auf den Client-Paket Pool
stack_ptr: Zeiger auf den Clientstapelspeicher
stack_size: Größe des Clientstapelspeichers
dhcpv6_state_change_notify: Zeiger auf Rückruffunktion aufgerufen, wenn der Client eine neue DHCPv6-Anforderung an den Server initiiert
dhcpv6_server_error_handler: Zeiger auf Rückruffunktion aufgerufen, wenn der Client einen Fehlerstatus vom Server empfängt
Rückgabewerte
NX_SUCCESS (0x00) Client erfolgreich erstellt
NX_PTR_ERROR: (0x16) Zeigereingabe ist ungültig
NX_DHCPV6_PARAM_ERROR (0xe93) Eingabe (nicht Zeiger) ist ungültig
Zulässig von
Threads
Beispiel
/* Create a DHCPv6 client instance without specifying link local or preferred global IP address. */status = nx_dhcpv6_client_create(&dhcp_0, &ip_0, "DHCPv6 Client", &pool_0, NULL, NULL, pointer, 2048, dhcpv6_state_change_notify, dhcpv6_server_error_handler);/* If status is NX_SUCCESS a DHCPv6 client instance was successfully created. */
Weitere Informationen
- nx_dhcpv6_client_delete
nx_dhcpv6_client_delete
Eine DHCPv6-Client-Instanz löschen
Prototyp
UINT nx_dhcpv6_client_delete(NX_DHCPV6 *dhcpv6_ptr);
Beschreibung
Dieser Dienst löscht eine zuvor erstellte DHCPv6-Client-Instanz.
Eingabeparameter
- dhcpv6_ptr: Zeiger auf die DHCPv6-Clientinstanz
Rückgabewerte
NX_SUCCESS (0x00) DHCPv6 erfolgreich gelöscht
NX_PTR_ERROR: (0x16) Zeigereingabe ist ungültig
NX_DHCPV6_PARAM_ERROR (0xe93) Eingabe (nicht Zeiger) ist ungültig
Zulässig von
Threads
Beispiel
/* Delete a DHCPv6 client instance. */status = nx_dhcpv6_client_delete(&my_dhcp);/* If status is NX_SUCCESS the DHCPv6 client instance was successfully deleted. */
Weitere Informationen
- nx_dhcpv6_client_create
nx_dhcpv6_client_set_interface
Legt die Client-Netzwerkschnittstelle für DHCPv6 fest
Prototyp
UINT nx_dhcpv6_client_set_interface( NX_DHCPV6 *dhcpv6_ptr, UINT *interface_index);
Beschreibung
Dieser Dienst legt die Client-Netzwerkschnittstelle für die Kommunikation mit dem/den DHCPv6-Server(n) mit dem angegebenen Eingabeschnittstellenindex fest.
Eingabeparameter
dhcpv6_ptr: Zeiger auf die DHCPv6-Clientinstanz
interface_index: Index, der die Netzwerkschnittstelle angibt
Rückgabewerte
NX_SUCCESS Schnittstelle (0x00) wurde erfolgreich festgelegt
NX_PTR_ERROR: (0x16) Zeigereingabe ist ungültig
NX_INVALID_INTERFACE (0x4C) Schnittstellenindex-Eingabe ist ungültig
Zulässig von
Threads
Beispiel
/* Set the client interface for DHCPv6 communication with the Server to the secondary interface (1). */UINT index = 1;status = nx_dhcpv6_client_set_interface(&dhcp_0, index);/* If status is NX_SUCCESS, the Client successfully set the DHCPv6 network interface. */
Weitere Informationen
- nx_dhcpv6_client _create
- nx_dhcpv6_start
nx_dhcpv6_client_set_destination_address
Legt die Zieladresse fest, an die die DHCPv6-Nachricht gesendet werden soll
Prototyp
UINT nx_dhcpv6_client_set_destination_address( NX_DHCPV6 *dhcpv6_ptr, NXD_ADDRESS *destination_address);
Beschreibung
Dieser Dienst legt die Zieladresse fest, an die die DHCPv6-Nachricht gesendet werden soll. Standardmäßig ist dies ALL_DHCP_Relay_Agents_and_Servers (FF02::1:2).
Eingabeparameter
dhcpv6_ptr: Zeiger auf die DHCPv6-Clientinstanz
destination_address: Zieladresse
Rückgabewerte
NX_SUCCESS Schnittstelle (0x00) wurde erfolgreich festgelegt
NX_PTR_ERROR (0x07): Zeigereingabe ist ungültig
NX_DHCPV6_PARAM_ERROR (0xE93) Parameterfehler
Zulässig von
Threads
Beispiel
/* Set the destination address where DHCPv6 message should be sent to. */NXD_ADDRESS dest_address; /* Set the destination address. */status = nx_dhcpv6_client_set_destination_address(&dhcp_0, &dest_address);/* If status is NX_SUCCESS, the Client successfully set the destination address. */
Weitere Informationen
- nx_dhcpv6_client _create
- nx_dhcpv6_start
nx_dhcpv6_create_client_duid
Client-DUID-Objekt erstellen
Prototyp
UINT nx_dhcpv6_create_client_duid( NX_DHCPV6 *dhcpv6_ptr, UINT duid_type, UINT hardware_type, ULONG time);
Beschreibung
Dieser Dienst erstellt die Client-DUID mit den Eingabeparametern. Wenn die Zeiteingabe nicht bereitgestellt wird und der DUID-Typ eine Netzzugangsschicht mit Zeit angibt, wird von dieser Funktion eine Zeit bereitgestellt, die einen Zufallsfaktor für Eindeutigkeit enthält. Vom Anbieter zugewiesene (Enterprise) DUID-Typen werden nicht unterstützt.
Eingabeparameter
dhcpv6_ptr: Zeiger auf die DHCPv6-Clientinstanz
duid_type: Typ der DUID (Hardware, Unternehmen usw.)
hardware_type: Netzwerkhardware, z. B. IEEE 802
time: Beim Erstellen eines eindeutigen Bezeichners verwendeter Wert
Rückgabewerte
NX_SUCCESS (0x00) Client-DUID wurde erfolgreich erstellt
NX_PTR_ERROR: (0x16) Zeigereingabe ist ungültig
NX_DHCPV6_PARAM_ERROR (0xe93) Eingabe (nicht Zeiger) ist ungültig
NX_DHCPV6_UNSUPPORTED_DUID_TYPE (0xe98) DUID-Typ ist unbekannt oder wird nicht unterstützt
NX_DHCPV6_UNSUPPORTED_DUID_HW_TYPE (0xE99) DUID-Hardwaretyp ist unbekannt oder wird nicht unterstützt
Zulässig von
Threads
Beispiel
/* Create the Client DUID from the supplied input. The time field is left NULL so the DHCPv6 client will provide one. */status = nx_dhcpv6_create_client_duid(&dhcp_0, NX_DHCPV6_DUID_TYPE_LINK_TIME, NX_DHCPV6_HW_TYPE_IEEE_802, 0)/* If status is NX_SUCCESS the client DUID was successfully created. */
Weitere Informationen
- nx_dhcpv6_create_client_ia
- nx_dhcpv6_create_client_iana
- nx_dhcpv6_create_server_duid
nx_dhcpv6_create_client_ia
Dem Client eine Identitätszuordnung hinzufügen
Prototyp
UINT nx_dhcpv6_create_client_ia( NX_DHCPV6 *dhcpv6_ptr, NXD_ADDRESS *ipv6_address, ULONG preferred_lifetime, ULONG valid_lifetime);
Beschreibung
Dieser Dienst ist mit dem nx_dhcpv6_add_client_ia-Dienst identisch. Es wird eine Client-Identitätszuordnung hinzugefügt, indem der Client-Datensatz mit den angegebenen Parametern ausgefüllt wird. Diese Parameter sollten auf Unendlich eingestellt werden, um die maximalen bevorzugten und gültigen Lebensdauern anzufordern. Wenn Sie einem DHCPv6-Client mehr als eine IA hinzufügen möchten, stellen Sie den NX_DHCPV6_MAX_IA_ADDRESS auf einen höheren Wert als den Standardwert 1 ein.
Eingabeparameter
dhcpv6_ptr: Zeiger auf die DHCPv6-Clientinstanz
ipv6_address: Zeiger auf den NetX Duo-IP-Adressblock
preferred_lifetime: Zeitraum bis zur Deaktivierung der IP-Adresse
valid_lifetime: Zeitraum bis zum Ablauf der IP-Adresse
Rückgabewerte
NX_SUCCESS (0x00) Client-IA erfolgreich hinzugefügt
NX_DHCPV6_IA_ADDRESS_ALREADY_EXIST (0xeaf) IA-Adresse duplizieren
NX_DHCPV6_REACHED_MAX_IA_ADDRESS (0xeae) IA überschreitet den maximalen IA-Client Speicher
NX_PTR_ERROR: (0x16) Zeigereingabe ist ungültig
NX_DHCPV6_INVALID_IA_ADDRESS (0xea4) Ungültige IA-Adresse (z. B. null) in der IA
NX_DHCPV6_PARAM_ERROR (0xe93) Eingabe (nicht Zeiger) ist ungültig
Zulässig von
Threads
Beispiel
/* Add an Client IA using the supplied input. */status = nx_dhcpv6_create_client_ia(&dhcp_0, &ipv6_address, NX_DHCPV6_PREFERRED_LIFETIME, NX_DHCPV6_VALID_LIFETIME);/* If status is NX_SUCCESS the client IA was successfully added. */
Weitere Informationen
- nx_dhcpv6_add_client_duid
- nx_dhcpv6_create_server_duid
- nx_dhcpv6_create_client_iana
nx_dhcpv6_create_client_iana
Eine (nicht temporäre) Identitätszuordnung für den Client erstellen
Prototyp
UINT nx_dhcpv6_create_client_iana( NX_DHCPV6 *dhcpv6_ptr, UINT IA_ident, ULONG T1, ULONG T2);
Beschreibung
Dieser Dienst erstellt eine Client-IANA (Non Temporary Identity Association) aus den angegebenen Parametern. Legen Sie diese Parameter auf NX_DHCPV6_INFINITE_LEASE fest, um T1 und T2 in den DHCPv6-Client Anforderungen auf Maximum (Infinity) einzustellen.
Hinweis
Ein Client verfügt nur über eine IANA.
Eingabeparameter
dhcpv6_ptr: Zeiger auf die DHCPv6-Clientinstanz
IA_ident: Eindeutiger Identitätszuordnungsbezeichner
T1: Wenn der Client die Erneuerung der IPv6-Adresse starten muss
T2: Wenn der Client die erneute Bindung der IPv6-Adresse starten muss
Rückgabewerte
NX_SUCCESS (0x00) IANA wurde erfolgreich erstellt
NX_PTR_ERROR: (0x16) Zeigereingabe ist ungültig
NX_DHCPV6_PARAM_ERROR (0xe93) Eingabe (nicht Zeiger) ist ungültig
Zulässig von
Threads
Beispiel
/* Create the Client IANA from the supplied input. */status = nx_dhcpv6_create_client_iana(&dhcp_0, DHCPV6_IA_ID, DHCPV6_T1, DHCPV6_T2);/* If status is NX_SUCCESS the client IANA was successfully created. */
Weitere Informationen
- nx_dhcpv6_create_client_duid
- nx_dhcpv6_create_server_duid
- nx_dhcpv6_add_client_ia
nx_dhcpv6_add_client_ia
Dem Client eine Identitätszuordnung hinzufügen
Prototyp
UINT nx_dhcpv6_add_client_ia( NX_DHCPV6 *dhcpv6_ptr, NXD_ADDRESS *ipv6_address, ULONG preferred_lifetime, ULONG valid_lifetime);
Beschreibung
Dieser Dienst fügt eine Client-Identitätszuordnung hinzu, indem der Client-Datensatz mit den angegebenen Parametern ausgefüllt wird. Diese Parameter sollten auf Unendlich eingestellt werden, um die maximalen bevorzugten und gültigen Lebensdauern anzufordern. Wenn Sie einem DHCPv6-Client mehr als eine IA hinzufügen möchten, stellen Sie den NX_DHCPV6_MAX_IA_ADDRESS auf einen höheren Wert als den Standardwert 1 ein.
Eingabeparameter
dhcpv6_ptr: Zeiger auf die DHCPv6-Clientinstanz
ipv6_address: Zeiger auf den NetX Duo-IP-Adressblock
preferred_lifetime: Zeitraum bis zur Deaktivierung der IP-Adresse
valid_lifetime: Zeitraum bis zum Ablauf der IP-Adresse
Rückgabewerte
NX_SUCCESS (0x00) Client-IA erfolgreich hinzugefügt
NX_DHCPV6_IA_ADDRESS_ALREADY_EXIST (0xeaf) IA-Adresse duplizieren
NX_DHCPV6_REACHED_MAX_IA_ADDRESS (0xeae) IA überschreitet den maximalen IA-Client Speicher
NX_PTR_ERROR: (0x16) Zeigereingabe ist ungültig
NX_DHCPV6_INVALID_IA_ADDRESS (0xea4) Ungültige IA-Adresse (z. B. null) in der IA
NX_DHCPV6_PARAM_ERROR (0xe93) Eingabe (nicht Zeiger) ist ungültig
Zulässig von
Threads
Beispiel
/* Add an Client IA using the supplied input. */status = nx_dhcpv6_add_client_ia(&dhcp_0, &ipv6_address, NX_DHCPV6_PREFERRED_LIFETIME, NX_DHCPV6_VALID_LIFETIME);/* If status is NX_SUCCESS the client IA was successfully added. */
Weitere Informationen
- nx_dhcpv6_create_client_duid
- nx_dhcpv6_create_server_duid
- nx_dhcpv6_create_client_iana
nx_dhcpv6_get_client_duid_time_id
Ruft die Zeit-ID aus der Client-DUID ab
Prototyp
UINT nx_dhcpv6_get_client_duid_time_id( NX_DHCPV6 *dhcpv6_ptr, ULONG *time_id);
Beschreibung
Dieser Dienst ruft das Zeit-ID-Feld aus der Client-DUID ab. Die Anwendung muss zuerst nx_dhcpv6_create_client_duid aufrufen, um die Client-DUID in der DHCPv6-Client-Instanz auszufüllen, andernfalls weist dieses Feld einen Nullwert auf. Damit soll bewirkt werden, dass die Anwendung diese Daten speichert und die gleiche Client-DUID auf dem Server auch bei Neustarts wieder angibt (einschließlich des Zeitfelds).
Eingabeparameter
dhcpv6_ptr: Zeiger auf die DHCPv6-Clientinstanz
time_id: Zeiger auf das Client-DUID-Zeitfeld
Rückgabewerte
NX_SUCCESS (0x00) IP-Leasedaten erfolgreich abgerufen
NX_PTR_ERROR: (0x16) Zeigereingabe ist ungültig
NX_CALLER_ERROR (0x11) Muss aus dem Thread aufgerufen werden
Zulässig von
Threads
Beispiel
/* Retrieve the time ID from the Client DUID. */status = nx_dhcpv6_get_client_duid_time_id(&dhcp_0, &time_ID);/* If status is NX_SUCCESS the time ID was retrieved. */
Weitere Informationen
- nx_dhcpv6_get_IP_address
- nx_dhcpv6_get_time_lease_data
- nx_dhcpv6_get_other_option_data
- nx_dhcpv6_get_time_accrued
nx_dhcpv6_get_IP_address
Ruft die globale Client-IPv6-Adresse ab
Prototyp
UINT nx_dhcpv6_get_IP_address( NX_DHCPV6 *dhcpv6_ptr, NXD_ADDRESS *ip_address);
Beschreibung
Dieser Dienst ruft die globale IPv6-Adresse des Client ab. Wenn der Client keine gültige Adresse hat, wird ein Fehlerstatus angezeigt. Wenn ein Client mehr als eine globale IPv6-Adresse hat, wird die primäre IPv6-Adresse angezeigt.
Eingabeparameter
dhcpv6_ptr: Zeiger auf die DHCPv6-Clientinstanz
ip_address: Zeiger auf IPv6-Adresse
Rückgabewerte
NX_SUCCESS (0x00) IPv6-Adresse wurde erfolgreich zugewiesen
NX_DHCPV6_IA_ADDRESS_NOT_VALID (0xEAD) IPv6-Adresse ist ungültig
NX_PTR_ERROR: (0x16) Zeigereingabe ist ungültig
NX_CALLER_ERROR (0x11) Muss aus dem Thread aufgerufen werden
Zulässig von
Threads
Beispiel
UINT address_status;UINT address_index;/* Retrieve the client’s assigned IP address. */status = nx_dhcpv6_get_IP_address(&dhcp_0, &ipv6_address);/* If status is NX_SUCCESS the client IP address was assigned. Now register it with NetX Duo on the primary interface (index zero). The address index is returned in the address_index field*/status = nxd_ipv6_address_set(&ip_0, 0, &ipv6_address, 64, &address_index);
Weitere Informationen
- nx_dhcpv6_get_lease_time_data
- nx_dhcpv6_get_client_duid_time_id
- nx_dhcpv6_get_other_option_data
- nx_dhcpv6_get_time_accrued
nx_dhcpv6_get_lease_time_data
Ruft die Lease-Zeitdaten der IA-Adresse des Client ab
Prototyp
UINT nx_dhcpv6_get_lease_time_data( NX_DHCPV6 *dhcpv6_ptr, ULONG *T1, ULONG *T2, ULONG *preferred_lifetime, ULONG *valid_lifetime);
Beschreibung
Dieser Dienst ruft die globalen IA-Adresszeitdaten des Client ab. Wenn der Status der Client-IA-Adresse ungültig ist, werden die Zeitdaten auf Null eingestellt und es wird ein erfolgreicher Abschlussstatus zurückgegeben. Wenn ein Client mehr als eine globale IPv6-Adresse hat, werden die Adressdaten der primären IA angezeigt.
Eingabeparameter
dhcpv6_ptr: Zeiger auf die DHCPv6-Clientinstanz
T1: Zeiger auf IA-Adresserneuerungszeit
T2: Zeiger auf die IA-Adressbindungszeit
preferred_lifetime: Zeiger auf die Uhrzeit, zu der die IA-Adresse veraltet ist
valid_lifetime: Zeiger auf die Uhrzeit, zu der die IA-Adresse abgelaufen ist
Rückgabewerte
NX_SUCCESS (0x00) IA-Leasedaten erfolgreich abgerufen
NX_PTR_ERROR: (0x16) Zeigereingabe ist ungültig
NX_CALLER_ERROR (0x11) Muss aus dem Thread aufgerufen werden
Zulässig von
Threads
Beispiel
/* Retrieve the client’s assigned IA lease data. */status = nx_dhcpv6_get_lease_time_data(&dhcp_0, &T1, &T2, &preferred_lifetime, &valid_lifetime);/* If status is NX_SUCCESS the client IA address lease data was retrieved. */
Weitere Informationen
- nx_dhcpv6_get_IP_address
- nx_dhcpv6_get_client_duid_time_id
- nx_dhcpv6_get_other_option_data
- nx_dhcpv6_get_time_accrued
- nx_dhcpv6_get_iana_lease_time
nx_dhcpv6_get_iana lease_time
IANA-Lease-Zeitdaten des Client abrufen
Prototyp
UINT nx_dhcpv6_get_iana_lease_time( NX_DHCPV6 *dhcpv6_ptr, ULONG *T1, ULONG *T2);
Beschreibung
Dieser Dienst ruft die globalen IA-NA-Lease-Zeitdaten (T1 und T2) des Client ab. Wenn keine der IA-NA-Clientadressen über einen gültigen Adressstatus verfügen, werden die Zeitdaten auf Null eingestellt und es wird ein erfolgreicher Abschlussstatus zurückgegeben. Wenn ein Client mehr als eine globale IPv6-Adresse hat, werden die Adressdaten der primären IA angezeigt.
Eingabeparameter
dhcpv6_ptr: Zeiger auf die DHCPv6-Clientinstanz
T1: Zeiger auf die Zeit zum Starten der Leaseverlängerung
T2: Zeiger auf die Zeit zum Starten der erneuten Leasebindung
Rückgabewerte
NX_SUCCESS (0x00) IANA-Leasedaten erfolgreich abgerufen
NX_PTR_ERROR: (0x16) Zeigereingabe ist ungültig
NX_CALLER_ERROR (0x11) Muss aus dem Thread aufgerufen werden
Zulässig von
Threads
Beispiel
/* Retrieve the client’s assigned IANA lease data. */status = nx_dhcpv6_get_iana_lease_time(&dhcp_0, &T1, &T2);/* If status is NX_SUCCESS the client IA address lease data was retrieved. */
Weitere Informationen
- nx_dhcpv6_get_IP_address
- nx_dhcpv6_get_client_duid_time_id
- nx_dhcpv6_get_other_option_data
- nx_dhcpv6_get_time_accrued
- nx_dhcpv6_get_lease_time_data
nx_dhcpv6_get_valid_ip_address_count
Ruft die Anzahl der gültigen IA-Adressen des Client ab
Prototyp
UINT nx_dhcpv6_get_valid_ip_address_count( NX_DHCPV6 *dhcpv6_ptr, UINT *address_count);
Beschreibung
Dieser Dienst ruft die Anzahl der gültigen IPv6-Adressen des Client ab. Eine gültige IPv6-Adresse wird an den Client gebunden (zugewiesen) und bei der IP-Instanz registriert.
Eingabeparameter
dhcpv6_ptr: Zeiger auf die DHCPv6-Clientinstanz
address_count: Zeiger auf die zurückzugebende Adressanzahl
Rückgabewerte
NX_SUCCESS (0x00) IANA-Leasedaten erfolgreich abgerufen
NX_PTR_ERROR: (0x16) Zeigereingabe ist ungültig
NX_CALLER_ERROR (0x11) Muss aus dem Thread aufgerufen werden
Zulässig von
Threads
Beispiel
UINT address_count; /* Retrieve the count of valid IA-NA addresses. */status = nx_dhcpv6_get_valid_ip_address_count(&dhcp_0, &address_count);/* If status is NX_SUCCESS the client IA address count was retrieved. */
nx_dhcpv6_get_valid_ip_address_lease_time
Client-IA-Daten mittels Adressindex abrufen
Prototyp
UINT nx_dhcpv6_get_valid_ip_address_lease_time( NX_DHCPV6 *dhcpv6_ptr, UINT address_index, NXD_ADDRESS *ip_address, ULONG *preferred_lifetime, ULONG *valid_lifetime);
Beschreibung
Dieser Dienst ruft die IA-Adresse des Client und die Leasedaten nach Adressindex ab. Wenn ein ungültiger Index angegeben wird oder die IPv6-Adresse an diesem Index nicht gültig ist, sendet der Dienst den Fehlerstatus NX_DHCPV6_IA_ADDRESS_NOT_VALID.
Eingabeparameter
dhcpv6_ptr: Zeiger auf die DHCPv6-Clientinstanz
address_index: Index in DHCPv6-IA-Tabelle
ip_address: Zeiger auf die abzurufende IPv6-Adresse
preferred_lifetime: Zeiger auf die Uhrzeit, zu der die IA-Adresse veraltet ist
valid_lifetime: Zeiger auf die Uhrzeit, zu der die IA-Adresse abgelaufen ist
Rückgabewerte
NX_SUCCESS (0x00) IANA-Daten erfolgreich abgerufen
NX_DHCPV6_IA_ADDRESS_NOT_VALID (0xead) Ein ungültiger Index oder keine gültige IPv6-Adresse am angegebenen Index
NX_PTR_ERROR: (0x16) Zeigereingabe ist ungültig
NX_CALLER_ERROR (0x11) Muss aus dem Thread aufgerufen werden
Zulässig von
Threads
Beispiel
UINT address_index = 1; NXD_ADDRESS *ip_address;/* Retrieve the IPv6 address, and valid and preferred lifetime for the IA record Saved at index 1 in the DHCPv6 table. */status = nx_dhcpv6_get_valid_ip_address_lease_time(&dhcp_0, address_index, &ip_address, &preferred_lifetime, &valid_lifetime);/* If status is NX_SUCCESS the client IA address and lease data were retrieved. */
Weitere Informationen
- nx_dhcpv6_get_IP_address
- nx_dhcpv6_get_iana_lease_time
- nx_dhcpv6_get_lease_time_data
nx_dhcpv6_get_DNS_server_address
Ruft die DNS-Serveradresse ab
Prototyp
UINT nx_dhcpv6_get_DNS_server_address( NX_DHCPV6 *dhcpv6_ptr, UINT index, NXD_ADDRESS *server_address);
Beschreibung
Dieser Dienst ruft die IPv6-Adressdaten des DNS-Servers am angegebenen Index in der Clientliste ab. Wenn die Liste keine Serveradresse am Index enthält, wird dies als Fehler gemeldet. Der Index darf nicht länger als die DNS-Serverliste sein, die von der vom benutzerkonfigurierbaren Option NX_DHCPV6_NUM_DNS_SERVERS angegeben wird.
Eingabeparameter
dhcpv6_ptr: Zeiger auf die DHCPv6-Clientinstanz
index: Indizierung in die DNS-Serverliste
server_address: Zeiger auf den Serveradresspuffer
Rückgabewerte
NX_SUCCESS (0x00) Adresse wurde erfolgreich abgerufen
NX_PTR_ERROR: (0x16) Zeigereingabe ist ungültig
NX_CALLER_ERROR (0x11) Muss aus dem Thread aufgerufen werden
Zulässig von
Threads
Beispiel
/* Retrieve the DNS server at the specified index in the list. */UINT index = 0;NXD_ADDRESS server_address; status = nx_dhcpv6_get_DNS_server_address(&dhcp_0, index, &server_address);/* If status == NX_SUCCESS, the DNS server IP address successfully retrieved. */
Weitere Informationen
- nx_dhcpv6_get_IP_address
- nx_dhcpv6_get_lease_time_data
- nx_dhcpv6_get_time_accrued
nx_dhcpv6_get_other_option_data
Ruft DHCPv6-Optionsdaten ab
Prototyp
UINT nx_dhcpv6_get_other_option_data( NX_DHCPV6 *dhcpv6_ptr, UINT option_code, UCHAR *buffer);
Beschreibung
Dieser Dienst ruft DHCPv6-Optionsdaten aus einer DHCPv6-Nachricht für den angegebenen Optionscode ab.
Eingabeparameter
dhcpv6_ptr: Zeiger auf die DHCPv6-Clientinstanz
option: Code Optionscode, für den Daten abgerufen werden sollen
buffer: Zeiger auf den Puffer, in den Daten kopiert werden sollen
Rückgabewerte
NX_SUCCESS (0x00) Optionsdaten erfolgreich abgerufen
NX_DHCPV6_UNKNOWN_OPTION (0xeab) Unbekannter/nicht unterstützter Optionscode
NX_PTR_ERROR: (0x16) Zeigereingabe ist ungültig
NX_DHCPV6_PARAM_ERROR (0xe93) Eingabe (nicht Zeiger) ist ungültig
NX_CALLER_ERROR (0x11) Muss aus dem Thread aufgerufen werden
Zulässig von
Threads
Beispiel
/* Retrieve the option data specified by the input option code. */status = nx_dhcpv6_get_other_option_data(&dhcp_0, option_code, buffer);/* If status is NX_SUCCESS the option data was retrieved. */
Weitere Informationen
- nx_dhcpv6_get_IP_address
- nx_dhcpv6_get_lease_time_data
- nx_dhcpv6_get_time_accrued
nx_dhcpv6_get_time_accrued
Ruft die für den IP-Adress-Lease des Client aufgelaufende Zeit ab
Prototyp
UINT nx_dhcpv6_get_time_accrued( NX_DHCPV6 *dhcpv6_ptr, ULONG *time_accrued);
Beschreibung
Dieser Dienst ruft die aufgelaufene Zeit des IPv6-Adress-Lease des Client ab. Die Funktion überprüft alle IPv6-Adressen, die dem Client für die erste gültige Adresse zugewiesen sind. Wenn keine gültigen Adressen gefunden werden, wird für die aufgelaufene Zeit ein Wert von Null zurückgegeben.
Eingabeparameter
dhcpv6_ptr: Zeiger auf die DHCPv6-Clientinstanz
time_accrued: Zeiger auf die Zeit, die in der IP-Lease angefallen ist
Rückgabewerte
NX_SUCCESS (0x00) Aufgelaufene Zeit wurde erfolgreich abgerufen
NX_PTR_ERROR: (0x16) Zeigereingabe ist ungültig
NX_CALLER_ERROR (0x11) Muss aus dem Thread aufgerufen werden
Zulässig von
Threads
Beispiel
/* Retrieve time accrued time on the Client address lease. */status = nx_dhcpv6_get_time_accrued(&dhcp_0, &time_accrued);/* If status is NX_SUCCESS the time accrued on the client IP address lease was retrieved. */
Weitere Informationen
- nx_dhcpv6_get_IP_address
- nx_dhcpv6_get_other_option_data
- nx_dhcpv6_get_lease_time_data
- nx_dhcpv6_set_time_accrued
nx_dhcpv6_get_time_server_address
Ruft die Zeitserveradresse ab
Prototyp
UINT nx_dhcpv6_get_time_server_address( NX_DHCPV6 *dhcpv6_ptr, UINT index, NXD_ADDRESS *server_address);
Beschreibung
Dieser Dienst ruft die Zeitserver-IPv6-Adressdaten des DNS-Servers am angegebenen Index in der Clientliste ab. Wenn die Liste keine Serveradresse am Index enthält, wird dies als Fehler gemeldet. Der Index darf nicht länger als die Zeitserverliste sein, die in der benutzerkonfigurierbaren Option NX_DHCPV6_NUM_TIME_SERVERS festgelegt ist.
Eingabeparameter
dhcpv6_ptr: Zeiger auf die DHCPv6-Clientinstanz
index: Indizierung in die Zeitserverliste
server_address: Zeiger auf den Serveradresspuffer
Rückgabewerte
NX_SUCCESS (0x00) Adresse wurde erfolgreich abgerufen
NX_PTR_ERROR: (0x16) Zeigereingabe ist ungültig
NX_CALLER_ERROR (0x11) Muss aus dem Thread aufgerufen werden
Zulässig von
Threads
Beispiel
/* Retrieve the Time server at the specified index in the list. */UINT index = 0;NXD_ADDRESS server_address; status = nx_dhcpv6_get_time_server_address(&dhcp_0, index, &server_address);/* If status == NX_SUCCESS, the Time server IP address successfully retrieved. */
Weitere Informationen
- nx_dhcpv6_get_IP_address
- nx_dhcpv6_get_lease_time_data
- nx_dhcpv6_get_time_accrued
- nx_dhcpv6_get_DNS_server_address
nx_dhcpv6_reinitialize
Client-IP-Adresse aus der IP-Tabelle entfernen
Prototyp
UINT nx_dhcpv6_reinitialize(NX_DHCPV6 *dhcpv6_ptr);
Beschreibung
Dieser Dienst initialisiert den Client erneut, um den DHCPv6-Zustandsautomaten neu zu starten und das DHCPv6-Protokoll erneut durchzuführen. Dies ist nicht erforderlich, wenn der Client den DHPCv6-Zustandsautomaten zuvor noch nicht gestartet hat oder keine IPv6-Adressen zugewiesen wurden. Die Adressen, die auf dem DHCPv6-Client gespeichert sind und bei der IP-Instanz registriert sind, werden alle gelöscht.
Hinweis
Die Anwendung muss trotzdem den DHCPv6-Client mittels nx_dhcpv6_start-service starten und die Anforderung für die IPv6-Adresszuweisung einleiten, indem nx_dhcpv6_request_solicitaufgerufen wird.
Eingabeparameter
- dhcpv6_ptr: Zeiger auf die DHCPv6-Clientinstanz
Rückgabewerte
NX_SUCCESS (0x00) Adresse wurde erfolgreich entfernt
NX_DHCPV6_ALREADY_STARTED (0xE91) DHCPv6-Client wird bereits ausgeführt
NX_PTR_ERROR: (0x16) Zeigereingabe ist ungültig
NX_CALLER_ERROR (0x11) Muss aus dem Thread aufgerufen werden
Zulässig von
Threads
Beispiel
/* Clear the assigned IP address(es) from the Client and the IP instance */status = nx_dhcpv6_reinitialize(&dhcp_0);/* If status is NX_SUCCESS the Client IP address was successfully removed. */
Weitere Informationen
- nx_dhcpv6_stop
- nx_dhcpv6_start
nx_dhcpv6_request_confirm
Den Bestätigungszustand (CONFIRM) des Client verarbeiten
Prototyp
UINT nx_dhcpv6_request_confirm(NX_DHCPV6 *dhcpv6_ptr);
Beschreibung
Dieser Dienst sendet eine Bestätigungsanforderung. Wenn eine Antwort vom Server empfangen wird, aktualisiert der DHCPv6-Client seine Lease-Parameter mit den empfangenen Daten.
Eingabeparameter
- dhcpv6_ptr: Zeiger auf die DHCPv6-Clientinstanz
Rückgabewerte
NX_SUCCESS (0x00) Bestätigung (CONFIRM), dass die Nachricht erfolgreich gesendet und verarbeitet wurde
NX_PTR_ERROR: (0x16) Zeigereingabe ist ungültig
NX_CALLER_ERROR (0x11) Muss aus dem Thread aufgerufen werden
Zulässig von
Threads
Beispiel
/* Send a CONFIRM message to the Server. */status = nx_dhcpv6_request_confirm(&dhcp_0);/* If status is NX_SUCCESS the Client successfully sent the CONFIRM message. */
Weitere Informationen
- nx_dhcpv6_request_inform_request
- nx_dhcpv6_request_release
- nx_dhcpv6_request_solicit
nx_dhcpv6_request_inform_request
INFORM-Anforderungsstatus des Client verarbeiten
Prototyp
UINT nx_dhcpv6_request_inform_request(NX_DHCPV6 *dhcpv6_ptr);
Beschreibung
Dieser Dienst sendet eine INFORM REQUEST-Nachricht. Wenn eine Antwort empfangen wird, wird sie verarbeitet, um zu bestimmen, ob sie gültig ist und der Server die Anforderung genehmigt hat. Die Client-Instanz wird dann nach Bedarf mit den Serverinformationen aktualisiert.
Eingabeparameter
- dhcpv6_ptr: Zeiger auf die DHCPv6-Clientinstanz
Rückgabewerte
NX_SUCCESS (0x00) INFORM REQUEST-Nachricht wurde erfolgreich erstellt und verarbeitet
NX_PTR_ERROR: (0x16) Zeigereingabe ist ungültig
NX_CALLER_ERROR (0x11) Muss aus dem Thread aufgerufen werden
Zulässig von
Threads
Beispiel
/* Send an INFORM REQUEST message to the server. */status = nx_dhcpv6_request_inform_request(&dhcp_0);/* If status is NX_SUCCESS the Client successfully sent the INFORM REQUEST message and processed the reply. */
Weitere Informationen
- nx_dhcpv6_request_confirm
nx_dhcpv6_request_option_DNS_server
DNS-Server zu DHCPv6-Optionsanforderung hinzufügen
Prototyp
UINT nx_dhcpv6_request_option_DNS_server(NX_DHCPV6 *dhcpv6_ptr);
Beschreibung
Mit diesem Dienst wird die Option zum Anfordern von DNS-Serverinformationen der DHCPv6-Optionsanforderung hinzugefügt. Wenn die Antwort des Servers DNS-Serverdaten enthält, speichert der Client den DNS-Server, sofern ausreichend Platz vorhanden ist. Die Anzahl der DNS-Server, die der Client speichern kann, wird durch die konfigurierbare Option NX_DHCPV6_NUM_DNS_SERVERS bestimmt, deren Standardwert 2 ist.
Eingabeparameter
- dhcpv6_ptr: Zeiger auf die DHCPv6-Clientinstanz
Rückgabewerte
NX_SUCCESS (0x00) DNS-Serveroption wurde aufgenommen
NX_PTR_ERROR: (0x16) Zeigereingabe ist ungültig
NX_CALLER_ERROR (0x11) Muss aus dem Thread aufgerufen werden
Zulässig von
Threads
Beispiel
/* Set the DNS server option in Client requests. */nx_dhcpv6_request_option_DNS_server(&dhcp_0, NX_TRUE);
Weitere Informationen
- nx_dhcpv6_request_option_domain_name
- nx_dhcpv6_request_option_time_server
- nx_dhcpv6_request_option_timezone
nx_dhcpv6_request_option_FQDN
Option für vollqualifizierten Domänennamen zur Optionsanforderungsliste hinzufügen
Prototyp
UINT nx_dhcpv6_request_option_FQDN( NX_DHCPV6 *dhcpv6_ptr, UCHAR *domain_name, UINT op);
Beschreibung
Mit diesem Dienst wird der DHCPv6-Optionsanforderung die Option zum Hinzufügen des vollqualifizierten Domänennamens des Client hinzugefügt. Für diese Option (FQDN) gibt es drei Optionen:
NX_DHCPV6_CLIENT_DESIRES_UPDATE_AAAA_RR 0 Das FQDN-zu-IPv6-Adress-Mapping für den FQDN und der/den vom Client verwendeten Adresse(n) aktualisieren.
NX_DHCPV6_CLIENT_DESIRES_SERVER_DO_DNS_UPDATE 1 Das FQDN-zu-IPv6-Adress-Mapping für den FQDN und der/den vom Client verwendeten Adresse(n) zum Server aktualisieren.
NX_DHCPV6_CLIENT_DESIRES_NO_SERVER_DNS_UPDATE 2 Anforderung an den Server, keine DNS-Updates für Client auszuführen.
Eingabeparameter
dhcpv6_ptr: Zeiger auf die DHCPv6-Clientinstanz
domain_name: Zeichenfolge mit dem Domänennamen
op: Typ der FQDN-Option, die angewendet werden soll (siehe Liste oben)
Rückgabewerte
NX_SUCCESS (0x00) FQDN-Option ist enthalten
NX_PTR_ERROR: (0x16) Zeigereingabe ist ungültig
NX_CALLER_ERROR (0x11) Muss aus dem Thread aufgerufen werden
Zulässig von
Threads
Beispiel
/* Set the FQDN option in Client DHCPv6 request. */nx_dhcpv6_request_option_FQDN(&dhcp_0, “DHCPv6_Client”, NX_DHCPV6_CLIENT_DESIRES_NO_SERVER_DNS_UPDATE);
Weitere Informationen
- nx_dhcpv6_request_option_domain_name
- nx_dhcpv6_request_option_time_server
- nx_dhcpv6_request_option_timezone
nx_dhcpv6_request_option_domain_name
Domänenname-Option der DHCPv6-Optionsanforderung hinzufügen
Prototyp
UINT nx_dhcpv6_request_option_domain_name(NX_DHCPV6 *dhcpv6_ptr);
Beschreibung
Dieser Dienst fügt der Anforderungsoption in den Client-Anforderungsnachrichten die Domänenname-Option hinzu. Wenn die Antwort vom Server Domänennamensdaten enthält, speichert der Client die Informationen über den Domänennamen, solange die Domänennamensgröße innerhalb der Puffergröße für den Domänennamen liegt. Diese Puffergröße ist eine konfigurierbare Option (NX_DHCPV6_DOMAIN_NAME_BUFFER_SIZE) mit einem Standardwert von 30 Bytes.
Eingabeparameter
- dhcpv6_ptr: Zeiger auf die DHCPv6-Clientinstanz
Rückgabewerte
NX_SUCCESS (0x00) Die Option Domänenname ist eingerichtet
NX_PTR_ERROR: (0x16) Zeigereingabe ist ungültig
NX_CALLER_ERROR (0x11) Muss aus dem Thread aufgerufen werden
Zulässig von
Threads
Beispiel
/* Set the domain name option in Client requests. */nx_dhcpv6_request_option_domain_name(&dhcp_0, NX_TRUE);
Weitere Informationen
- nx_dhcpv6_request_option_DNS_server
- nx_dhcpv6_request_option_time_server
- nx_dhcpv6_request_option_timezone
nx_dhcpv6_request_option_time_server
Zeitserverdaten als optionale Anforderung festlegen
Prototyp
UINT nx_dhcpv6_request_option_time_server(NX_DHCPV6 *dhcpv6_ptr);
Beschreibung
Mit diesem Dienst wird der Anforderungsoption Client-Anforderungsnachrichten die Option für Zeitserverinformationen hinzugefügt. Wenn die Antwort des Servers Zeitserverdaten enthält, speichert der Client den Zeitserver, sofern ausreichend Platz vorhanden ist. Die Anzahl von Zeitservern, die der Client speichern kann, wird durch die konfigurierbare Option bestimmt
NX_DHCPV6_NUM_TIME _SERVERS, wobei der Standardwert 1 lautet.
Eingabeparameter
- dhcpv6_ptr: Zeiger auf die DHCPv6-Clientinstanz
Rückgabewerte
NX_SUCCESS (0x00) Zeitserveroption wurde hinzugefügt
NX_PTR_ERROR: (0x16) Zeigereingabe ist ungültig
NX_CALLER_ERROR (0x11) Muss aus dem Thread aufgerufen werden
Zulässig von
Threads
Beispiel
/* Set the time server option in Client request messages. */nx_dhcpv6_request_option_time_server(&dhcp_0, NX_TRUE);
Weitere Informationen
- nx_dhcpv6_request_option_DNS_server
- nx_dhcpv6_request_option_domain_name
- nx_dhcpv6_request_option_timezone
nx_dhcpv6_request_option_timezone
Zeitzonendaten als optionale Anforderung festlegen
Prototyp
UINT nx_dhcpv6_request_option_timezone(NX_DHCPV6 *dhcpv6_ptr);
Beschreibung
Mit diesem Dienst wird der Client-Anforderungsoption die Option zum Anfordern von Zeitzoneninformationen hinzugefügt. Wenn die Antwort des Servers Zeitzonendaten enthält, speichert der Client die Zeitzoneninformationen, solange die Zeitzonengröße innerhalb der Puffergröße für die Zeitzone liegt. Diese Puffergröße ist eine konfigurierbare Option (NX_DHCPV6_TIME_ZONE_BUFFER_SIZE) mit einem Standardwert von 10 Bytes.
Eingabeparameter
- dhcpv6_ptr: Zeiger auf die DHCPv6-Clientinstanz
Rückgabewerte
NX_SUCCESS (0x00) Zeitzonenoption wurde hinzugefügt
NX_PTR_ERROR: (0x16) Zeigereingabe ist ungültig
NX_CALLER_ERROR (0x11) Muss aus dem Thread aufgerufen werden
Zulässig von
Threads
Beispiel
/* Set time zone option in Client request messages. */nx_dhcpv6_request_option_timezone(&dhcp_0, NX_TRUE);
Weitere Informationen
- nx_dhcpv6_request_option_DNS_server
- nx_dhcpv6_request_option_domain_name
- nx_dhcpv6_request_option_time_server
nx_dhcpv6_request_release
Eine DHCPv6-RELEASE-Nachricht senden
Prototyp
UINT nx_dhcpv6_request_release(NX_DHCPV6 *dhcpv6_ptr);
Beschreibung
Dieser Dienst sendet eine RELEASE-Nachricht im Clientnetzwerk. Wenn die Nachricht erfolgreich gesendet wurde, wird der Status erfolgreich gemeldet. Eine erfolgreicher Ausführung bedeutet jedoch nicht, dass der Client eine Antwort empfangen hat oder dass ihm bereits eine IPv6-Adresse gewährt wurde. Der DHCPv6 Client-Thread-Vorgang wartet auf eine Antwort vom DHCPv6-Server. Wenn eine Antwort empfangen wird, wird überprüft, ob die Antwort gültig ist, und die Daten werden im Clientdatensatz gespeichert.
Eingabeparameter
- dhcpv6_ptr: Zeiger auf die DHCPv6-Clientinstanz
Rückgabewerte
NX_SUCCESS (0x00) RELEASE-Nachricht wurde erfolgreich gesendet
NX_DHCPV6_NOT_STARTED (0xE92) DHCPv6-Client-Vorgang nicht gestartet
NX_DHCPV6_IA_ADDRESS_NOT_VALID (0xEAD) Adresse ist nicht an den Client gebunden
NX_INVALID_INTERFACE (0x4c) Wurde nicht in der IP-Adresstabelle gefunden
NX_PTR_ERROR: (0x16) Zeigereingabe ist ungültig
NX_CALLER_ERROR (0x11) Muss aus dem Thread aufgerufen werden
Zulässig von
Threads
Beispiel
/* Send an RELEASE message to the Server. */status = nx_dhcpv6_request_release(&dhcp_0);/* If status is NX_SUCCESS the Client successfully sent the RELEASE message. */
Weitere Informationen
- nx_dhcpv6_request_confirm
- nx_dhcpv6_request_inform_request
- nx_dhcpv6_request_solicit
nx_dhcpv6_request_solicit
Eine SOLICIT-Nachricht senden
Prototyp
UINT nx_dhcpv6_request_solicit(NX_DHCPV6 *dhcpv6_ptr);
Beschreibung
Dieser Dienst sendet eine SOLICIT-Nachricht im Netzwerk hinaus. Wenn die Nachricht erfolgreich gesendet wurde, wird der Status erfolgreich gemeldet. Eine erfolgreicher Ausführung bedeutet jedoch nicht, dass der Client eine Antwort empfangen hat oder dass ihm bereits eine IPv6-Adresse gewährt wurde. Der DHCPv6-Client-Thread-Vorgang wartet auf eine Antwort (eine Ankündigungsnachricht (ADVERTISE)) von einem DHCPv6-Server. Wenn eine Antwort eintrifft, wird überprüft, ob die Antwort gültig ist. Dann werden die Daten im Clientdatensatz gespeichert und der Client wird in den Anforderungsstatus aufgestuft.
Hinweis
Wenn die Rapid-Commit-Option eingestellt ist, wechselt der DHCPv6-Client direkt in den gebundenen Zustand, wenn er eine gültige Server-Ankündigungsnachricht (ADVERTISE) empfängt. Weitere Informationen finden Sie in der Dienstbeschreibung für nx_dhcpv6_request_solicit_rapid.
Eingabeparameter
- dhcpv6_ptr: Zeiger auf die DHCPv6-Clientinstanz
Rückgabewerte
NX_SUCCESS (0x00) SOLICIT-Nachricht wurde erfolgreich gesendet
NX_PTR_ERROR: (0x16) Zeigereingabe ist ungültig
NX_CALLER_ERROR (0x11) Muss aus dem Thread aufgerufen werden
Zulässig von
Threads
Beispiel
/* Send an SOLICIT message to the server. */status = nx_dhcpv6_request_solicit(&dhcp_0);/* If status is NX_SUCCESS the Client successfully sent the SOLICIT message. */
nx_dhcpv6_request_solicit_rapid
Eine SOLICIT-Nachricht mittels Rapid-Commit-Option senden
Prototyp
UINT nx_dhcpv6_request_solicit_rapid(NX_DHCPV6 *dhcpv6_ptr);
Beschreibung
Dieser Dienst sendet eine SOLICIT-Nachricht im Netzwerk hinaus, wobei die Rapid-Commit-Option aktiviert ist. Wenn die Nachricht erfolgreich gesendet wurde, wird der Status erfolgreich gemeldet. Eine erfolgreicher Ausführung bedeutet jedoch nicht, dass der Client eine Antwort empfangen hat oder dass ihm bereits eine IPv6-Adresse gewährt wurde. Der DHCPv6-Client-Thread-Vorgang wartet auf eine Antwort (eine Ankündigungsnachricht (ADVERTISE)) von einem DHCPv6-Server. Wenn eine Antwort eintrifft, wird überprüft, ob die Antwort gültig ist. Dann werden die Daten im Clientdatensatz gespeichert und der Client wird in den Gebunden-Status (BOUND) aufgestuft.
Eingabeparameter
- dhcpv6_ptr: Zeiger auf die DHCPv6-Clientinstanz
Rückgabewerte
NX_SUCCESS (0x00) SOLICIT-Nachricht wurde erfolgreich gesendet
NX_PTR_ERROR: (0x16) Zeigereingabe ist ungültig
NX_CALLER_ERROR (0x11) Muss aus dem Thread aufgerufen werden
Zulässig von
Threads
Beispiel
/* Send an SOLICIT message to the server. */status = nx_dhcpv6_request_solicit_rapid(&dhcp_0);/* If status is NX_SUCCESS the Client successfully sent the SOLICIT message. */
Weitere Informationen
- nx_dhcpv6_request_solicit
- nx_dhcpv6_request_confirm
- nx_dhcpv6_request_inform_request
- nx_dhcpv6_request_release
nx_dhcpv6_resume
DHCPv6-Client-Vorgang fortsetzen
Prototyp
UINT nx_dhcpv6_resume(NX_DHCPV6 *dhcpv6_ptr);
Beschreibung
Dieser Dienst setzt den DHCPv6-Client-Thread-Vorgang fort. Der aktuelle DHCPv6-Clientzustand wird verarbeitet (z. B. gebunden, Anfrage)
Eingabeparameter
- dhcpv6_ptr: Zeiger auf die DHCPv6-Clientinstanz
Rückgabewerte
NX_SUCCESS (0x00): Client erfolgreich fortgesetzt
NX_PTR_ERROR: (0x16) Zeigereingabe ist ungültig
NX_CALLER_ERROR (0x11) Muss aus dem Thread aufgerufen werden
Zulässig von
Threads
Beispiel
/* Resume the DHCPv6 Client task. */status = nx_dhcpv6_resume(&dhcp_0);/* If status is NX_SUCCESS the Client thread task successfully resumed. */
Weitere Informationen
- nx_dhcpv6_start
- nx_dhcpv6_stop
- nx_dhcpv6_suspend
nx_dhcpv6_set_ time_accrued
Legt die für den IP-Adress-Lease des Client aufgelaufende Zeit fest
Prototyp
UINT nx_dhcpv6_set_time_accrued( NX_DHCPV6 *dhcpv6_ptr, ULONG time_accrued);
Beschreibung
Dieser Dienst legt die Zeit fest, die für die globale IP-Adresse des Client aufgelaufen ist, seit sie vom Server zugewiesen wurde. Dies sollte nur verwendet werden, wenn ein Client zurzeit an eine zugewiesene IPv6-Adresse gebunden ist.
Eingabeparameter
dhcpv6_ptr: Zeiger auf die DHCPv6-Clientinstanz
time_accrued: Bei IP-Lease aufgelaufene Zeit
Rückgabewerte
NX_SUCCESS (0x00) Aufgelaufene Zeit wurde erfolgreich festgelegt
NX_PTR_ERROR: (0x16) Zeigereingabe ist ungültig
Zulässig von
Threads
Beispiel
/* Set time accrued since client’s assigned IP address was assigned. */status = nx_dhcpv6_set_time_accrued(&dhcp_0, time_accrued);/* If status is NX_SUCCESS the time accrued on the client IP address lease was successfully set. */
Weitere Informationen
- nx_dhcpv6_get_IP_address
- nx_dhcpv6_get_other_option_data
- nx_dhcpv6_get_lease_time_data
- nx_dhcpv6_get_time_accrued
nx_dhcpv6_start
DHCPv6-Client-Vorgang starten
Prototyp
UINT nx_dhcpv6_start(NX_DHCPV6 *dhcpv6_ptr);
Beschreibung
Dieser Dienst startet den DHCPv6-Client-Vorgang und bereitet den Client für die Ausführung des DHCPv6-Protokolls vor. Es wird überprüft, ob die Client-Instanz über ausreichende Informationen verfügt (z. B. eine Client-DUID). Dann wird der UDP-Socket zum Senden und Empfangen von DHCPv6-Nachrichten erstellt und gebunden und der Timer aktiviert, um die Sitzungszeit zu verfolgen sowie festzuhalten, wann der aktuelle IPv6-Lease abläuft.
Eingabeparameter
- dhcpv6_ptr: Zeiger auf die DHCPv6-Clientinstanz
Rückgabewerte
NX_SUCCESS (0x00) Client erfolgreich gestartet
NX_DHCPV6_MISSING_REQUIRED_OPTIONS (0xEA9) Erforderliche Client-Optionen fehlen
NX_PTR_ERROR: (0x16) Zeigereingabe ist ungültig
NX_CALLER_ERROR (0x11) Muss aus dem Thread aufgerufen werden
Zulässig von
Threads
Beispiel
/* Start the DHCPv6 Client task. */status = nx_dhcpv6_start(&dhcp_0);/* If status is NX_SUCCESS the Client successfully started. */
Weitere Informationen
- nx_dhcpv6_resume
- nx_dhcpv6_suspend
- nx_dhcpv6_stop
- nx_dhcpv6_reinitialize
nx_dhcpv6_stop
DHCPv6-Client-Vorgang beenden
Prototyp
UINT nx_dhcpv6_stop(NX_DHCPV6 *dhcpv6_ptr);
Beschreibung
Dieser Dienst beendet den DHCPv6-Client-Vorgang und löscht die Anzahl der Neuübertragungen, maximale Neuübertragungsintervalle, deaktiviert die Sitzungs- und Leaseablauftimer und löst die Bindung des DHCPv6-Client-Socketports auf. Um den Client neu zu starten, muss der Client zuerst beendet und optional erneut initialisiert werden, bevor eine andere Sitzung mit einem beliebigen DHCPv6-Server gestartet werden kann. Weitere Informationen dazu finden Sie im Abschnitt Kurze Beispiele.
Eingabeparameter
- dhcpv6_ptr: Zeiger auf die DHCPv6-Clientinstanz
Rückgabewerte
NX_SUCCESS (0x00) Client erfolgreich beendet
NX_DHCPV6_NOT_STARTED (0xE92) Client-Thread wurde nicht gestartet
NX_PTR_ERROR: (0x16) Zeigereingabe ist ungültig
NX_CALLER_ERROR (0x11) Muss aus dem Thread aufgerufen werden
Zulässig von
Threads
Beispiel
/* Stop the DHCPv6 Client task. */status = nx_dhcpv6_start(&dhcp_0);/* If status is NX_SUCCESS the Client successfully stopped. */
Weitere Informationen
- nx_dhcpv6_resume
- nx_dhcpv6_suspend
- nx_dhcpv6_reinitialize
- nx_dhcpv6_start
nx_dhcpv6_suspend
DHCPv6-Client-Vorgang anhalten
Prototyp
UINT nx_dhcpv6_suspend(NX_DHCPV6 *dhcpv6_ptr);
Beschreibung
Dieser Dienst sperrt den DHCPv6-Client-Vorgang und alle Anforderungen, die gerade verarbeitet werden. Timer werden deaktiviert und der Clientzustand wird auf Nicht Ausgeführt eingestellt.
Eingabeparameter
- dhcpv6_ptr: Zeiger auf die DHCPv6-Clientinstanz
Rückgabewerte
NX_SUCCESS (0x00) Client erfolgreich gesperrt
NX_DHCPV6_NOT_STARTED (0xe92) Client wird nicht ausgeführt und kann daher nicht gesperrt werden
NX_PTR_ERROR: (0x16) Zeigereingabe ist ungültig
NX_CALLER_ERROR (0x11) Muss aus dem Thread aufgerufen werden
Zulässig von
Threads
Beispiel
/* Suspend the DHCPv6 Client task. */status = nx_dhcpv6_suspend(&dhcp_0);/* If status is NX_SUCCESS the Client successfully suspended. */
Weitere Informationen
- nx_dhcpv6_resume
- nx_dhcpv6_start
- nx_dhcpv6_reinitialize
- nx_dhcpv6_stop