package ipaddr

  1. Overview
  2. Docs

Module V6.PrefixSource

A module for manipulating IPv6 network prefixes (CIDR).

Sourcetype addr = t
Sourcetype t

Type of a internet protocol subnet: an address and a prefix length.

Sourceval mask : int -> addr

mask n is the pseudo-address of an n bit subnet mask.

Sourceval make : int -> addr -> t

make n addr is the cidr of addr with n bit prefix.

Sourceval prefix : t -> t

prefix cidr is the subnet prefix of cidr where all non-prefix bits set to 0.

Sourceval network_address : t -> addr -> addr

network_address cidr addr is the address with prefix cidr and suffix from addr. See <http://tools.ietf.org/html/rfc4291#section-2.3>.

Sourceval of_string_exn : string -> t

of_string_exn cidr is the subnet prefix represented by the CIDR string, cidr. Raises Parse_error if cidr is not a valid representation of a CIDR notation routing prefix.

Sourceval of_string : string -> (t, [> `Msg of string ]) result

Same as of_string_exn but returns a result type instead of raising an exception.

Sourceval of_string_raw : string -> int ref -> t

Same as of_string_exn but takes as an extra argument the offset into the string for reading.

Sourceval to_string : t -> string

to_string cidr is the CIDR notation string representation of cidr, i.e. XXX:XX:X::XXX/XX.

Sourceval pp : Format.formatter -> t -> unit

pp f cidr outputs a human-readable representation of cidr to the formatter f.

Sourceval to_buffer : Buffer.t -> t -> unit

to_buffer buf cidr writes the string representation of cidr to the buffer buf.

Sourceval of_netmask_exn : netmask:addr -> address:addr -> t

of_netmask_exn ~netmask ~address is the subnet prefix of address with netmask netmask.

Sourceval of_netmask : netmask:addr -> address:addr -> (t, [> `Msg of string ]) result

of_netmask ~netmask ~address is the cidr of address with netmask netmask.

Sourceval mem : addr -> t -> bool

mem ip subnet checks whether ip is found within subnet.

Sourceval subset : subnet:t -> network:t -> bool

subset ~subnet ~network checks whether subnet is contained within network.

Sourceval of_addr : addr -> t

of_addr ip create a subnet composed of only one address, ip. It is the same as make 128 ip.

Sourceval global_unicast_001 : t

Global Unicast 001, 2000::/3.

Sourceval unique_local : t

The Unique Local Unicast (ULA), fc00::/7.

Link-Local Unicast, fe80::/64.

Sourceval multicast : t

The multicast network, ff00::/8.

Sourceval ipv4_mapped : t

IPv4-mapped addresses, ::ffff:0:0/96.

Sourceval noneui64_interface : t

Global Unicast addresses that don't use Modified EUI64 interface identifiers, ::/3.

Sourceval solicited_node : t

Solicited-Node multicast addresses

Sourceval network : t -> addr

network subnet is the address for subnet.

Sourceval netmask : t -> addr

netmask subnet is the netmask for subnet.

Sourceval address : t -> addr

address cidr is the address for cidr.

Sourceval bits : t -> int

bits subnet is the bit size of the subnet prefix.

Sourceval first : t -> addr

first subnet is first valid unicast address in this subnet.

Sourceval last : t -> addr

last subnet is last valid unicast address in this subnet.

Sourceval hosts : ?usable:bool -> t -> addr Seq.t

hosts subnet is the sequence of host addresses in this subnet. By default the Subnet-Router anycast address is omitted. This can be changed by setting usable to false.

Sourceval subnets : int -> t -> t Seq.t

subnets n subnet is the sequence of subnets of subnet with a prefix length of n.

include Map.OrderedType with type t := t
Sourceval compare : t -> t -> int

A total ordering function over the keys. This is a two-argument function f such that f e1 e2 is zero if the keys e1 and e2 are equal, f e1 e2 is strictly negative if e1 is smaller than e2, and f e1 e2 is strictly positive if e1 is greater than e2. Example: a suitable ordering function is the generic structural comparison function Stdlib.compare.

OCaml

Innovation. Community. Security.