IP
IP, IP, Ooray! Simple IP Address representations.
Installation
If available in Hex, the package can be installed
by adding ip to your list of dependencies in mix.exs:
def deps do
[
{:ip, "~> 0.1.0"}
]
endUsage
ip provides representations for IP addresses and subnets for Elixir with a bunch of helpful stuff tacked on the side.
iex> "192.0.2.1"
...> |> IP.Address.from_string!
#IP.Address<192.0.2.1 DOCUMENTATION>
iex> "2001:db8::"
...> |> IP.Address.from_string!
#IP.Address<2001:db8:: DOCUMENTATION>
iex> outside = IP.Prefix.from_string!("2001:db8::/64")
...> inside = IP.Prefix.eui_64!(outside, "60:f8:1d:ad:d8:90")
...> IP.Prefix.contains_address?(outside, inside)
trueDocumentation can be generated with ExDoc and published on HexDocs. Once published, the docs can be found at https://hexdocs.pm/ip.