Pfx.dns_ptr
You're seeing just the function
dns_ptr
, go back to Pfx module for more information.
Specs
Returns a reverse DNS name (pointer) for given pfx
.
The prefix will be padded right with 0
-bits to a multiple of 8 for IPv4 prefixes and
to a multiple of 4 for IPv6 prefixes. Note that this might give unexpected results.
So dns_ptr/1
works best if the prefix given is actually a multiple of 4 or 8.
Examples
iex> dns_ptr("10.10.0.0/16")
"10.10.in-addr.arpa"
# "1.2.3.0/23" actually encodes as %Pfx{bits: <<1, 2, 1::size(7)>>, maxlen: 32}
# and padding right with 0-bits to a /24 yields the 1.2.2.0/24 ...
iex> dns_ptr("1.2.3.0/23")
"2.2.1.in-addr.arpa"
iex> dns_ptr("acdc:1976::/32")
"6.7.9.1.c.d.c.a.ip6.arpa"
iex> dns_ptr("acdc:1975::b1ba:2021")
"1.2.0.2.a.b.1.b.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.5.7.9.1.c.d.c.a.ip6.arpa"