How can I convert a netmask to a specific netmask.
Example: 127.0.0.0/16 Convert to /24 netmask.
It should output something like:
127.0.0.0/24
127.0.1.0/24
127.0.2.0/24
127.0.2.0/24
etc. all the way up to 127.0.255.0/24.
How can this be accomplished through PHP? I found this tool: http://jodies.de/ipcalc it's coded in PERL. How can I get similar funcitonality using PHP?
I found this: http://jasonkolpin.com/classes/ipcalc/demo.php although it seems broken.. Probably will try and fix it.
Update SOLVED: I basically run: $exec = shell_exec("/usr/local/bin/ipcalc 127.0.0.0/16 24 -b -n");
and parse out the Network: field. This basically converts 127.0.0.0/16 to all /24s.
Make sure that ipcalc is installed on the host to accomplish this. You can do this by using yum install ipcalc
in CentOS, or apt-get install ipcalc
in Ubuntu, or cd /usr/ports/net-mgmt/ipcalc/ && make install clean
on FreeBSD :)