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.
Checking the stable version of the documentation...
IP
Наследует: Object
Интернет-протокол (IP) поддерживает такие функции, как разрешение DNS.
Описание
IP содержит функции поддержки для интернет-протокола (IP). Поддержка TCP/IP находится в разных классах (см. StreamPeerTCP и TCPServer). IP обеспечивает поддержку разрешения имен хостов DNS, как блокирующего, так и потокового.
Методы
void |
clear_cache(hostname: String = "") |
void |
erase_resolve_item(id: int) |
get_local_addresses() const |
|
get_local_interfaces() const |
|
get_resolve_item_address(id: int) const |
|
get_resolve_item_addresses(id: int) const |
|
get_resolve_item_status(id: int) const |
|
resolve_hostname(host: String, ip_type: Type = 3) |
|
resolve_hostname_addresses(host: String, ip_type: Type = 3) |
|
resolve_hostname_queue_item(host: String, ip_type: Type = 3) |
Перечисления
enum ResolverStatus: 🔗
ResolverStatus RESOLVER_STATUS_NONE = 0
Статус преобразователя имен хостов DNS: Нет статуса.
ResolverStatus RESOLVER_STATUS_WAITING = 1
Состояние преобразователя имен хостов DNS: Ожидание.
ResolverStatus RESOLVER_STATUS_DONE = 2
Статус преобразователя имен хостов DNS: Готово.
ResolverStatus RESOLVER_STATUS_ERROR = 3
Состояние преобразователя имен хостов DNS: Ошибка.
enum Type: 🔗
Type TYPE_NONE = 0
Тип адреса: Нет.
Type TYPE_IPV4 = 1
Тип адреса: Интернет-протокол версии 4 (IPv4).
Type TYPE_IPV6 = 2
Тип адреса: Интернет-протокол версии 6 (IPv6).
Type TYPE_ANY = 3
Тип адреса: Любой.
Константы
RESOLVER_MAX_QUERIES = 256 🔗
Максимально допустимое количество одновременных запросов DNS-резолвера, при превышении возвращается RESOLVER_INVALID_ID.
RESOLVER_INVALID_ID = -1 🔗
Недопустимая константа ID. Возвращается, если превышена RESOLVER_MAX_QUERIES.
Описания метода
void clear_cache(hostname: String = "") 🔗
Удаляет все кэшированные ссылки hostname. Если hostname не указан, удаляются все кэшированные IP-адреса.
void erase_resolve_item(id: int) 🔗
Удаляет указанный элемент id из очереди. Это следует использовать для освобождения очереди после ее завершения, чтобы можно было выполнять больше запросов.
PackedStringArray get_local_addresses() const 🔗
Возвращает все текущие адреса IPv4 и IPv6 пользователя в виде массива.
Array[Dictionary] get_local_interfaces() const 🔗
Возвращает все сетевые адаптеры в виде массива.
Каждый адаптер представляет собой словарь в форме:
{
"index": "1", # Индекс интерфейса.
"name": "eth0", # Имя интерфейса.
"friendly": "Ethernet One", # Понятное имя (может быть пустым).
"addresses": ["192.168.1.101"], # Массив IP-адресов, связанных с этим интерфейсом.
}
String get_resolve_item_address(id: int) const 🔗
Возвращает IP-адрес имени хоста в очереди, учитывая его очередь id. Возвращает пустую строку в случае ошибки или если разрешение еще не произошло (см. get_resolve_item_status()).
Array get_resolve_item_addresses(id: int) const 🔗
Возвращает решенные адреса или пустой массив, если произошла ошибка или разрешение еще не произошло (см. get_resolve_item_status()).
ResolverStatus get_resolve_item_status(id: int) const 🔗
Возвращает статус имени хоста в очереди как константу ResolverStatus с учетом его очереди id.
String resolve_hostname(host: String, ip_type: Type = 3) 🔗
Возвращает IPv4 или IPv6-адрес указанного имени хоста при разрешении (метод блокирующего типа). Тип возвращаемого адреса зависит от константы Type, заданной как ip_type.
PackedStringArray resolve_hostname_addresses(host: String, ip_type: Type = 3) 🔗
Разрешает заданное имя хоста блокирующим способом. Адреса возвращаются как Array адресов IPv4 или IPv6 в зависимости от ip_type.
int resolve_hostname_queue_item(host: String, ip_type: Type = 3) 🔗
Создает элемент очереди для преобразования имени хоста в адрес IPv4 или IPv6 в зависимости от константы Type, заданной как ip_type. Возвращает идентификатор очереди в случае успеха или RESOLVER_INVALID_ID в случае ошибки.