Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

IP

Eredita: Object

Funzioni di supporto del protocollo Internet (IP) come la risoluzione del DNS.

Descrizione

IP contiene funzioni di supporto per il protocollo Internet (IP). Il supporto TCP/IP è in classi diverse (vedi StreamPeerTCP e TCPServer). IP fornisce supporto per la risoluzione dei nomi host DNS, sia bloccante sia sui thread.

Metodi

void

clear_cache(hostname: String = "")

void

erase_resolve_item(id: int)

PackedStringArray

get_local_addresses() const

Array[Dictionary]

get_local_interfaces() const

String

get_resolve_item_address(id: int) const

Array

get_resolve_item_addresses(id: int) const

ResolverStatus

get_resolve_item_status(id: int) const

String

resolve_hostname(host: String, ip_type: Type = 3)

PackedStringArray

resolve_hostname_addresses(host: String, ip_type: Type = 3)

int

resolve_hostname_queue_item(host: String, ip_type: Type = 3)


Enumerazioni

enum ResolverStatus: 🔗

ResolverStatus RESOLVER_STATUS_NONE = 0

Stato del risolutore di nomi host DNS: nessuno stato.

ResolverStatus RESOLVER_STATUS_WAITING = 1

Stato del risolutore di nomi host DNS: in attesa.

ResolverStatus RESOLVER_STATUS_DONE = 2

Stato del risolutore di nomi host DNS: fatto.

ResolverStatus RESOLVER_STATUS_ERROR = 3

Stato del risolutore di nomi host DNS: errore.


enum Type: 🔗

Type TYPE_NONE = 0

Tipo di indirizzo: Nessuno.

Type TYPE_IPV4 = 1

Tipo di indirizzo: Protocollo Internet versione 4 (IPv4).

Type TYPE_IPV6 = 2

Tipo di indirizzo: Protocollo Internet versione 6 (IPv6).

Type TYPE_ANY = 3

Tipo di indirizzo: Qualsiasi.


Costanti

RESOLVER_MAX_QUERIES = 256 🔗

Numero massimo di richieste consentite in parallelo al risolutore DNS. Viene restituito RESOLVER_INVALID_ID se superato.

RESOLVER_INVALID_ID = -1 🔗

Costante di ID non valido. Restituita se si supera il valore di RESOLVER_MAX_QUERIES.


Descrizioni dei metodi

void clear_cache(hostname: String = "") 🔗

Rimuove tutti i riferimenti memorizzati nella cache di un nome host (hostname). Se non viene specificato alcun hostname, vengono rimossi tutti gli indirizzi IP memorizzati nella cache.


void erase_resolve_item(id: int) 🔗

Rimuove un determinato elemento id dalla coda. Dovrebbe essere usato per liberare una coda dopo che è stata completata per consentire l'esecuzione di più richieste.


PackedStringArray get_local_addresses() const 🔗

Restituisce tutti gli indirizzi IPv4 e IPv6 attuali dell'utente sotto forma di array.


Array[Dictionary] get_local_interfaces() const 🔗

Restituisce tutti gli adattatori di rete in un array.

Ogni adattatore è un dizionario del formato:

{
    "index": "1", # Indice dell'interfaccia.
    "name": "eth0", # Nome dell'interfaccia.
    "friendly": "Ethernet One", # Un nome descrittivo (potrebbe essere vuoto).
    "addresses": ["192.168.1.101"], # Un array di indirizzi IP associati a questa interfaccia.
}

String get_resolve_item_address(id: int) const 🔗

Restituisce l'indirizzo IP di un nome host in coda, specificato il suo id nella coda. Restituisce una stringa vuota in caso di errore o se la risoluzione non è ancora avvenuta (vedi get_resolve_item_status()).


Array get_resolve_item_addresses(id: int) const 🔗

Restituisce gli indirizzi risolti, oppure un array vuoto se si è verificato un errore o la risoluzione non è ancora avvenuta (vedi get_resolve_item_status()).


ResolverStatus get_resolve_item_status(id: int) const 🔗

Restituisce lo stato di un nome host in coda come costante di ResolverStatus, specificato il suo id nella coda.


String resolve_hostname(host: String, ip_type: Type = 3) 🔗

Restituisce l'indirizzo IPv4 o IPv6 di un determinato nome host quando risolto (metodo di tipo bloccante). Il tipo di indirizzo restituito dipende dalla costante di Type specificata in ip_type.


PackedStringArray resolve_hostname_addresses(host: String, ip_type: Type = 3) 🔗

Risolve un determinato nome host in modo bloccante. Gli indirizzi vengono restituiti come un Array di indirizzi IPv4 o IPv6 a seconda di ip_type.


int resolve_hostname_queue_item(host: String, ip_type: Type = 3) 🔗

Crea un elemento di coda per risolvere un nome host in un indirizzo IPv4 o IPv6 a seconda della costante di Type specificata in ip_type. Restituisce l'ID nella coda in caso di successo oppure RESOLVER_INVALID_ID in caso di errore.