dns

DNS клиент


a(domain [, settings])

Метод для получения A-записей конкретного домена.

Параметры

#ТипОписание
1строкадомен
1таблицапараметры

Возвращаемые значения

#ТипОписание
1таблицасписок A записей

Пример

local dns = require"dns"
local inspect = require"inspect"
local dns_settings = {}
local records = dns.a("google.com", dns_settings)
print(inspect(records))

-- вывод:
-- { "172.217.19.110" }

cname(domain [, settings])

  • ns
  • axfr
  • top

ns(domain)

Получает список NS-серверов для указанного домена.

Параметры

#ТипОписание
1строкадоменное имя

Результат

#ТипОписание
1таблицасписок NS-серверов

Пример

local dns = require("dns")
local ns_servers = dns.ns("example.com")
for _, server in ipairs(ns_servers) do
    print(server)
end

-- вывод: 
-- ns1.example.com
-- ns2.example.com

axfr(domain)

Выполняет AXFR-запрос (полную передачу зоны) для указанного домена.

Параметры

#ТипОписание
1строкадоменное имя

Результат

#ТипОписание
1таблицасписок записей зоны

Пример

local dns = require("dns")
local records = dns.axfr("example.com")
for _, record in ipairs(records) do
    print(record.name, record.type, record.data)
end

-- вывод: 
-- example.com. SOA ns1.example.com. admin.example.com.

top(domain)

Получает корневой домен (домен верхнего уровня) для указанного домена.

Параметры

#ТипОписание
1строкадоменное имя

Результат

#ТипОписание
1строкадомен верхнего уровня

Пример

local dns = require("dns")
print(dns.top("sub.example.com"))

-- вывод: 
-- example.com