Исходники.Ру - Программирование
Исходники
Статьи
Книги и учебники
Скрипты
Новости RSS
Магазин программиста

Главная » Статьи Web-мастеру » PHP - Все статьи »

Обсудить на форуме Обсудить на форуме

IP адрес, подсети, маски.

Есть некоторые вещи которые я не способен считать в уме, но зато без каких либо затруднений могу написать программу для их расчета. Одна из них - это перерасчет подсетей.

Задача: из 255.255.255.255/24 получить 255.255.255.0/255.255.255.0 и 255.255.255.0-255.255.255.255

Решение:

$ip=explode("/","XXX.XXX.XXX.XXX/24");
$mask=0xFFFFFFFF;
for ($j=0;$j<32-$ip[1];$j++) $mask=$mask<<1;
$lip=ip2long($ip[0]);
print "<P>Результат: ".long2ip($lip&$mask)."/".long2ip($mask)."</P>";
print "<P>Результат: ".long2ip($lip&$mask)."-".long2ip(($lip&$mask)+(~$mask))."</P>";

Может пригодится:


Автор: Неизвестен
Прочитано: 4559
Рейтинг:
Оценить: 1 2 3 4 5

Комментарии: (0)

Добавить комментарий
Ваше имя*:
Ваш email:
URL Вашего сайта:
Ваш комментарий*:
Код безопастности*:

Рассылка новостей
Рейтинги
© 2007, Программирование Исходники.Ру