morpheus.parsers.ip
Functions
hostmask (ips[, prefixlen]) |
Compute a column of hostmasks for a column of IP addresses. |
int_to_ip (values) |
Convert integer column to IP addresses. |
ip_to_int (values) |
Convert string column of IP addresses to integer values. |
is_global (ips) |
Indicates whether each address is global. |
is_ip (ips) |
Indicates whether each address is an ip string. |
is_link_local (ips) |
Indicates whether each address is link local. |
is_loopback (ips) |
Indicates whether each address is loopback. |
is_multicast (ips) |
Indicates whether each address is multicast. |
is_private (ips) |
Indicates whether each address is private. |
is_reserved (ips) |
Indicates whether each address is reserved. |
is_unspecified (ips) |
Indicates whether each address is unspecified. |
mask (ips, masks) |
Apply a mask to a column of IP addresses. |
netmask (ips[, prefixlen]) |
Compute a column of netmasks for a column of IP addresses. |
- hostmask(ips, prefixlen=16)[source]
Compute a column of hostmasks for a column of IP addresses. Addresses must be IPv4. IPv6 not yet supported.
- Parameters
- ipsSeriesType
IPv4 addresses to be checked
- prefixlen: integer
Length of the network prefix, in bits, for IPv4 addresses
- Returns
- rtypeSeriesType
Hostmask ouput from set of IP address
Examples
>>> import morpheus.parsers.ip as ip >>> import cudf >>> ip.hostmask(cudf.Series(["192.168.0.1","10.0.0.1"]), prefixlen=16) 0 0.0.255.255 1 0.0.255.255 Name: hostmask, dtype: object
- int_to_ip(values)[source]
Convert integer column to IP addresses. Addresses must be IPv4. IPv6 not yet supported.
- Parameters
- valuesSeriesType
uint32 representations of IP addresses
- Returns
- rtypeSeriesType
IPv4 addresses
Examples
>>> import morpheus.parsers.ip as ip >>> import cudf >>> ip.int_to_ip(cudf.Series([3232235521, 167772161], dtype=cudf.api.types.dtype("uint32"))) 0 192.168.0.1 1 10.0.0.1 dtype: object
- ip_to_int(values)[source]
Convert string column of IP addresses to integer values. Addresses must be IPv4. IPv6 not yet supported.
- Parameters
- valuesSeriesType
IPv4 addresses to be converted
- Returns
- rtypeSeriesType
Integer representations of IP addresses
Examples
>>> import morpheus.parsers.ip as ip >>> import cudf >>> ip.ip_to_int(cudf.Series(["192.168.0.1","10.0.0.1"])) 0 3232235521 1 167772161 dtype: uint32
- is_global(ips)[source]
Indicates whether each address is global. Addresses must be IPv4. IPv6 not yet supported.
- Parameters
- ipsSeriesType
IPv4 addresses to be checked
- Returns
- rtypeSeriesType
Boolean values true or false
Examples
>>> import morpheus.parsers.ip as ip >>> import cudf >>> ip.is_global(cudf.Series(["127.0.0.1","207.46.13.151"])) 0 False 1 True dtype: bool
- is_ip(ips)[source]
Indicates whether each address is an ip string. Addresses must be IPv4. IPv6 not yet supported.
- Parameters
- ipsSeriesType
IPv4 addresses to be checked
- Returns
- rtypeSeriesType
Boolean values true or false
Examples
>>> import morpheus.parsers.ip as ip >>> import cudf >>> ip.is_ip(cudf.Series(["192.168.0.1","10.123.0"])) 0 True 1 False dtype: bool
- is_link_local(ips)[source]
Indicates whether each address is link local. Addresses must be IPv4. IPv6 not yet supported.
- Parameters
- ipsSeriesType
IPv4 addresses to be checked
- Returns
- rtypeSeriesType
Boolean values true or false
Examples
>>> import morpheus.parsers.ip as ip >>> import cudf >>> ip.is_link_local(cudf.Series(["127.0.0.1","169.254.123.123"])) 0 False 1 True dtype: bool
- is_loopback(ips)[source]
Indicates whether each address is loopback. Addresses must be IPv4. IPv6 not yet supported.
- Parameters
- ipsSeriesType
IPv4 addresses to be checked
- Returns
- rtypeSeriesType
Boolean values true or false
Examples
>>> import morpheus.parsers.ip as ip >>> import cudf >>> ip.is_loopback(cudf.Series(["127.0.0.1","10.0.0.1"])) 0 True 1 False dtype: bool
- is_multicast(ips)[source]
Indicates whether each address is multicast. Addresses must be IPv4. IPv6 not yet supported.
- Parameters
- ipsSeriesType
IPv4 addresses to be checked
- Returns
- rtypeSeriesType
Boolean values true or false
Examples
>>> import morpheus.parsers.ip as ip >>> import cudf >>> ip.is_multicast(cudf.Series(["127.0.0.1","224.0.0.0"])) 0 False 1 True dtype: bool
- is_private(ips)[source]
Indicates whether each address is private. Addresses must be IPv4. IPv6 not yet supported.
- Parameters
- ipsSeriesType
IPv4 addresses to be checked
- Returns
- rtypeSeriesType
Boolean values true or false
Examples
>>> import morpheus.parsers.ip as ip >>> import cudf >>> ip.is_private(cudf.Series(["127.0.0.1","207.46.13.151"])) 0 True 1 False dtype: bool
- is_reserved(ips)[source]
Indicates whether each address is reserved. Addresses must be IPv4. IPv6 not yet supported.
- Parameters
- ipsSeriesType
IPv4 addresses to be checked
- Returns
- rtypeSeriesType
Boolean values true or false
Examples
>>> import morpheus.parsers.ip as ip >>> import cudf >>> ip.is_reserved(cudf.Series(["127.0.0.1","10.0.0.1"])) 0 False 1 False dtype: bool
- is_unspecified(ips)[source]
Indicates whether each address is unspecified. Addresses must be IPv4. IPv6 not yet supported.
- Parameters
- ipsSeriesType
IPv4 addresses to be checked
- Returns
- rtypeSeriesType
Boolean values true or false
Examples
>>> import morpheus.parsers.ip as ip >>> import cudf >>> ip.is_unspecified(cudf.Series(["127.0.0.1","10.0.0.1"])) 0 False 1 False dtype: bool
- mask(ips, masks)[source]
Apply a mask to a column of IP addresses. Addresses must be IPv4. IPv6 not yet supported.
- Parameters
- ipsSeriesType
IPv4 addresses to be checked
- masks: SeriesType
The host or subnet masks to be applied
- Returns
- rtypeSeriesType
Masked IP address from list of IPs
Examples
>>> import morpheus.parsers.ip as ip >>> import cudf >>> input_ips = cudf.Series(["192.168.0.1","10.0.0.1"]) >>> input_masks = cudf.Series(["255.255.0.0", "255.255.0.0"]) >>> ip.mask(input_ips, input_masks) 0 192.168.0.0 1 10.0.0.0 Name: mask, dtype: object
- netmask(ips, prefixlen=16)[source]
Compute a column of netmasks for a column of IP addresses. Addresses must be IPv4. IPv6 not yet supported.
- Parameters
- ipsSeriesType
IPv4 addresses to be checked
- prefixlen: int
Length of the network prefix, in bits, for IPv4 addresses
- Returns
- rtypeSeriesType
Netmask ouput from set of IP address
Examples
>>> import morpheus.parsers.ip as ip >>> import cudf >>> ip.netmask(cudf.Series(["192.168.0.1","10.0.0.1"]), prefixlen=16) 0 255.255.0.0 1 255.255.0.0 Name: net_mask, dtype: object