package dns-client
DNS resolver API
Install
Dune Dependency
Authors
Maintainers
Sources
dns-6.4.0.tbz
sha256=00472d566bbfd66da13642eab5fade12fde56b20dd7ac5c50415b88d052d6175
sha512=0ddeee4a155852c7ffa619de603e54dabe9ec315b79e4a1cb22a13884f9d3893458f1fa3c7b97f2eda60b29f1bfa401e53d531d8ded1089dcd8497ffa3ad1afb
doc/dns-client.mirage/Dns_client_mirage/Make/index.html
Module Dns_client_mirage.Make
Source
Parameters
module R : Mirage_random.S
module T : Mirage_time.S
module M : Mirage_clock.MCLOCK
module P : Mirage_clock.PCLOCK
module S : Tcpip.Stack.V4V6
Signature
include sig ... end
Source
val create :
?cache_size:int ->
?edns:[ `Auto | `Manual of Dns.Edns.t | `None ] ->
?nameservers:(Dns.proto * Transport.io_addr list) ->
?timeout:int64 ->
Transport.stack ->
t
Source
val getaddrinfo :
t ->
'response Dns.Rr_map.key ->
'a Domain_name.t ->
('response, [> `Msg of string ]) result Transport.io
Source
val gethostbyname :
t ->
[ `host ] Domain_name.t ->
(Ipaddr.V4.t, [> `Msg of string ]) result Transport.io
Source
val gethostbyname6 :
t ->
[ `host ] Domain_name.t ->
(Ipaddr.V6.t, [> `Msg of string ]) result Transport.io
Source
val get_resource_record :
t ->
'response Dns.Rr_map.key ->
'a Domain_name.t ->
('response,
[> `Msg of string
| `No_data of [ `raw ] Domain_name.t * Dns.Soa.t
| `No_domain of [ `raw ] Domain_name.t * Dns.Soa.t ])
result
Transport.io
Source
val get_raw_reply :
t ->
'response Dns.Rr_map.key ->
'a Domain_name.t ->
(Dns.Packet.reply, [> `Msg of string | `Partial ]) result Transport.io
Source
val nameserver_of_string :
string ->
(Dns.proto * Transport.io_addr, [> `Msg of string ]) result
nameserver_of_string authenticators str
returns a Transport.io_addr
from the given string. The format is:
udp:<ipaddr>(:port)?
for a plain nameserver and we will communicate with it via the UDP protocoltcp:<ipaddr>(:port)?
for a plain nameserver and we will communicate with it via the TCP protocoltls:<ipaddr>(:port)?((!hostname)?!authenticator)?
for a nameserver and we will communicate with it via the TCP protocol plus the TLS encrypted layer. The user can verify the nameserver via an authenticator (seeX509.Authenticator.of_string
for the format of it). The hostname can be provided to be used as peer name by the authenticator. By default,Ca_certs_nss.authenticator
is used.
Source
val connect :
?cache_size:int ->
?edns:[ `None | `Auto | `Manual of Dns.Edns.t ] ->
?nameservers:string list ->
?timeout:int64 ->
Transport.stack ->
t Lwt.t
connect ?cache_size ?edns ?nameservers ?timeout stack
creates a DNS entity which is able to resolve domain-name. It expects few optional arguments:
cache_size
the size of the LRU cacheedns
the behaviour of whether or not to send edns in queriesnameservers
a list of nameservers used to resolve domain-namestimeout
(in nanoseconds), passed tocreate
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
On This Page