Как преобразовать сетевую маску в определенную сетевую маску.Преобразование netmasks php
Пример: 127.0.0.0/16 Преобразование в/24 маску сети.
Он должен вывести что-то вроде:
127.0.0.0/24
127.0.1.0/24
127.0.2.0/24
127.0.2.0/24
и т.д. вплоть до 127.0.255.0/24.
Как это можно сделать с помощью PHP? Я нашел этот инструмент: http://jodies.de/ipcalc он закодирован в PERL. Как я могу получить аналогичную funcitonality с помощью PHP?
Я нашел это: http://jasonkolpin.com/classes/ipcalc/demo.php хотя кажется сломанным .. Вероятно, попробуем исправить.
Обновление: Я в основном запускаю: $exec = shell_exec("/usr/local/bin/ipcalc 127.0.0.0/16 24 -b -n");
и разбираю Сеть: поле. Это в основном конвертирует 127.0.0.0/16 во все/24s.
Убедитесь, что ipcalc установлен на хост, чтобы выполнить это. Вы можете сделать это с помощью yum install ipcalc
в CentOS или apt-get install ipcalc
в Ubuntu или cd /usr/ports/net-mgmt/ipcalc/ && make install clean
на FreeBSD :)
Wow, что является удивительным. Попробуем! Благодаря! – ChrisG