1DNS::LDNS::Resolver(3)User Contributed Perl DocumentationDNS::LDNS::Resolver(3)
2
3
4
6 DNS::LDNS::Resolver - DNS resolver
7
9 use DNS::LDNS ':all'
10
11 my r = new DNS::LDNS::Resolver(filename => '/my/resolv.conf')
12 my r = new DNS::LDNS::Resolver(file => \*FILE)
13 my r = new DNS::LDNS::Resolver
14
15 bool = r->dnssec
16 r->set_dnssec(bool)
17
18 bool = r->dnssec_cd # Resolver sets the CD bit
19 r->set_dnssec_cd(bool)
20
21 port = r->port
22 r->set_port(port)
23
24 bool = r->recursive
25 r->set_recursive(bool)
26
27 bool = r->debug
28 r->set_debug(bool)
29
30 count = r->retry
31 r->set_retry(count)
32
33 count = r->retrans
34 r->set_retrans(count)
35
36 bool = r->fallback # Resolver truncation fallback mechanism
37 r->set_fallback(bool)
38
39 bool = r->ip6
40 r->set_ip6(bool)
41
42 size = r->edns_udp_size
43 r->set_edns_udp_size(size)
44
45 bool = r->usevc # Use virtual circuit (TCP)
46 r->set_usevc(bool)
47
48 r->fail
49 r->set_fail
50
51 r->defnames
52 r->set_defnames
53
54 r->dnsrch
55 r->set_dnsrch
56
57 r->igntc
58 r->set_igntc
59
60 bool = r->random # randomize nameserver before usage
61 r->set_random(bool)
62
63 rrlist = r->dnssec_anchors # list of trusted DNSSEC anchors
64 r->push_dnssec_anchor(rr)
65 r->set_dnssec_anchors(rrlist)
66
67 rdata = r->domain # Domain to add to relative queries
68 r->set_domain(rdata)
69
70 @rdata = r->nameservers
71 count = r->nameserver_count
72 r->push_nameserver(rdata)
73 rdata = r->pop_nameserver
74 r->nameservers_randomize
75
76 str = r->tsig_keyname
77 r->set_tsig_keyname(str)
78
79 str = r->tsig_algorithm
80 r->set_tsig_algorithm(str)
81
82 str = r->tsig_keydata
83 r->set_tsig_keydata(str)
84
85 count = r->searchlist_count
86 r->push_searchlist(rdata)
87 @rdata = r->searchlist
88
89 @times = r->rtt # Round trip times
90 r->set_rtt(@rtt)
91 time = r->nameserver_rtt(pos)
92 r->set_nameserver_rtt(pos, time)
93
94 (sec, usec) = r->timeout
95 r->set_timeout(sec, usec)
96
97 # DNSSec validation
98 rrlist = r->fetch_valid_domain_keys(domain, keys)
99 rrlist = r->fetch_valid_domain_keys_time(domain, keys, checktime)
100 rrlist = r->validate_domain_ds(domain, keys)
101 rrlist = r->validate_domain_ds_time(domain, keys, checktime)
102 rrlist = r->validate_domain_dnskey(domain, keys)
103 rrlist = r->validate_domain_dnskey_time(domain, keys, checktime)
104 status = r->verify_trusted(rrset, rrsigs, validation_keys)
105 status = r->verify_trusted_time(rrset, rrsigs, checktime, validation_keys)
106 bool = r->trusted_key(keys, trusted_keys)
107 chain = r->build_data_chain(qflags, dataset, pkt, orig_rr)
108
109 # Query
110 pkt = r->query(rdata, type, class, flags)
111 pkt = r->search(rdata, type, class, flags)
112 query = r->prepare_query_pkt(rdata, type, class, flags)
113 answer = r->send(rdata, type, class, flags)
114 answer = r->send_pkt(query)
115 rrlist = r->get_rr_list_addr_by_name(name, class, flags)
116 rrlist = r->get_rr_list_name_by_addr(addr, class, flags)
117
119 http://www.nlnetlabs.nl/projects/ldns
120
122 Erik Pihl Ostlyngen, <erik.ostlyngen@uninett.no>
123
125 Copyright (C) 2013 by UNINETT Norid AS
126
127 This library is free software; you can redistribute it and/or modify it
128 under the same terms as Perl itself, either Perl version 5.14.2 or, at
129 your option, any later version of Perl 5 you may have available.
130
131
132
133perl v5.32.0 2020-07-28 DNS::LDNS::Resolver(3)