Fr3nch13/CakePHP Utilities

CommonNetwork
in package

Holds common functions needed for translating different ipv4 stuff.

Tags
TODO

Add the ability to calculate ipv6, for now, just return null/false/empty strings.

Table of Contents

Properties

$myInterface  : null|array<string, mixed>
Primary interface.
$myInterfaces  : array<string, mixed>
List of interfaces.
$myHostname  : null|string
The hostrname of the host machine.
$myIpaddresses  : array<string, string>
List of ip addresses for the host machine.

Methods

cidrToIpArray()  : array<int, string>
Get the array of IP Addresses from a CIDR.
cidrToNetmask()  : null|string
Convert a CIDR to a Netmask.
cidrToNetwork()  : null|string
Get Network Address from a CIDR subnet.
cidrToRange()  : array<int, int|string|null>
Get the Network's IP range from a CIDR.
gethostname()  : null|string
Gets my hostname
getMyInterfaces()  : null|array<string, mixed>
Gets the interface name of the given ip address, or all if none is given.
getPrimaryIps()  : null|array<string, string>
Gets the primary ips for this host.
ip2long()  : int
Converts an IP Address to a long integer.
ipInCidr()  : bool
If the IP Address is in the Network.
long2ip()  : null|string
Converts a long integer to an IP Address.
netmaskToArray()  : array<int, string>
Return a list of IP Addresses for a netmask.
netmaskToCidr()  : int
Convert Netmask to the CIDR.
validateIP()  : bool
Validates a human readable ip address.

Properties

$myInterface

Primary interface.

public null|array<string, mixed> $myInterface

$myInterfaces

List of interfaces.

public array<string, mixed> $myInterfaces = []

$myHostname

The hostrname of the host machine.

protected null|string $myHostname = null

$myIpaddresses

List of ip addresses for the host machine.

protected array<string, string> $myIpaddresses = []

Methods

cidrToIpArray()

Get the array of IP Addresses from a CIDR.

public cidrToIpArray(string $network_cidr) : array<int, string>

e.g. 10.1.10.0/28 = array(10.1.10.0, 10.1.10.1, 10.1.10.2, 10.1.10.3)

Parameters
$network_cidr : string

The network's CIDR.

Return values
array<int, string> —

The list of ip addresses in the network.

cidrToNetmask()

Convert a CIDR to a Netmask.

public cidrToNetmask(string $network_cidr) : null|string

e.g. 21 = 255.255.248.0

Parameters
$network_cidr : string

The cidr to convert.

Return values
null|string —

The Netmask.

cidrToNetwork()

Get Network Address from a CIDR subnet.

public cidrToNetwork(string $network_cidr) : null|string

e.g. 10.0.2.56/21 = 10.0.0.0

Parameters
$network_cidr : string

The network's cidr.

Return values
null|string —

The IP Address

cidrToRange()

Get the Network's IP range from a CIDR.

public cidrToRange(string $network_cidr[, bool $long = false ]) : array<int, int|string|null>

e.g. 10.1.10.0/28 = array(10.1.10.0, 10.1.10.3)

Parameters
$network_cidr : string

The Network CIDR.

$long : bool = false

If we should return the range as IP Addresses, or long integers.

Tags
throws
Throwable
Return values
array<int, int|string|null> —

The first and last IP Address in the Network.

gethostname()

Gets my hostname

public gethostname() : null|string
Return values
null|string —

The hostname of the system this is ruynning on.

getMyInterfaces()

Gets the interface name of the given ip address, or all if none is given.

public getMyInterfaces([null|string $ip = null ]) : null|array<string, mixed>
Parameters
$ip : null|string = null

The ip address of the interface to get.

Return values
null|array<string, mixed> —

Get the name of the interface.

getPrimaryIps()

Gets the primary ips for this host.

public getPrimaryIps() : null|array<string, string>
Return values
null|array<string, string> —

The primary ip address.

ip2long()

Converts an IP Address to a long integer.

public ip2long(string $ip) : int
Parameters
$ip : string

The IP Address.

Tags
throws
InvalidCharException

if the IP isn't actually an IP.

Return values
int —

The integer representing the IP Address.

ipInCidr()

If the IP Address is in the Network.

public ipInCidr(string $ip, string $network_cidr) : bool

e.g. is 10.5.21.30 in 10.5.16.0/20 == true is 192.168.50.2 in 192.168.30.0/23 == false

Parameters
$ip : string

The IP Address to check.

$network_cidr : string

The Network CIDR to check.

Return values
bool —

True if it's in the Network, False if it's not.

long2ip()

Converts a long integer to an IP Address.

public long2ip(mixed|float|int $ip) : null|string
Parameters
$ip : mixed|float|int

The Integer/float.

Return values
null|string —

The IP Address.

netmaskToArray()

Return a list of IP Addresses for a netmask.

public netmaskToArray(string $ipaddress, string $netmask) : array<int, string>
Parameters
$ipaddress : string

The Ip Address.

$netmask : string

The Netmask.

Return values
array<int, string> —

The list of IP Addresses.

netmaskToCidr()

Convert Netmask to the CIDR.

public netmaskToCidr(string $netmask) : int

e.g. 255.255.255.128 = 25

Parameters
$netmask : string

The Netmask representing the Network.

Return values
int —

The CIDR for the Network.

validateIP()

Validates a human readable ip address.

public validateIP(string $ip) : bool
Parameters
$ip : string

The IP Address to validate.

Return values
bool —

True if the IP Address is valid, or false if not.


        
On this page

Search results