Zum Inhalt

Dns client

DNS_CLIENT

Type Funktionsbaustein
IN_OUT IP_C IP_C (Parametrierungsdaten)
S_BUF NETWORK_BUFFER (Sendedaten)
R_BUF NETWORK_BUFFER (Empfangsdaten)
INPUT ACTIVATE BOOL (Abfrage starten durch positive Flanke)
DOMAIN STRING (Domain Name oder IP als String)
IP4_DNS DWORD (IPv4 Adresse des DNS-Server)
OUTPUT IP4 DWORD (IPv4 Adresse der angefragten Domain)
DONE BOOL (IP der Domain erfolgreich ermittelt)
ERROR DWORD (Fehlercode)
DNS_CLIENT ermittelt aus den übergebenen qualifizierten DOMAIN Namen die zugehörige IPv4 Adresse z.B. „www.oscat.de“ . Dazu wird eine DNS-Abfrage über den parametrierten DOMAIN Namen bei einen DNS-Server gemacht. Bei positiver Flanke von ACTIVATE wird die angegebene DOMAIN zwischen gespeichert, so dass diese nicht länger vorhanden sein muss. Sollte die Abfrage mehrere IP-Adressen liefern, so wird immer die mit dem höchsten Wert von TTL (Time To Live) benutzt. Als IP4_DNS kann ein beliebiger öffentlicher DNS-Server verwendet werden. Wenn die SPS hinter einen DSL-Router sitzt, kann dieser über seine Gateway-Adresse dieser als DNS-Server verwendet werden. Was letztendlich auch bei wiederkehrenden Abfragen zu schnelleren Antwortzeiten führt, da diese im Router-Cache verwaltet werden. Bei positiven Ergebnis DONE = TRUE enthält IP4 die gesuchte IP-Adresse, bis zum Start der nächsten Abfrage durch positive Flanke von ACTIVATE. Wird im DOMAIN Name eine gültige IPv4 Adresse erkannt, wird logischerweise keine DNS-Abfrage mehr durchgeführt und gleich in konvertierter Form wieder bei IPv4 ausgegeben und DONE auf TRUE gesetzt. ERROR liefert im Fehlerfall die genaue Ursache.
Fehlercodes

dns_client

Wert Ursprung Beschreibung
B3 B2 B1
nn nn nn
xx xx xx
xx xx xx
xx xx xx
xx xx xx
xx xx xx
xx xx xx
xx xx xx
xx xx xx
xx xx xx
xx xx xx
xx xx xx
xx xx xx