Здравствуйте Алекс,
AT> Т.е:
AT> 10.0.0.0/8 US
AT> 10.128.0.0/9 ZA
AT> 11.0.0.0/8 US
AT> можно склеить в
AT> 10.0.0.0/7 US
AT> 10.128.0.0/9 ZA
А как посчитать, что 10.0.0.0/8 + 11.0.0.0/8 = 10.0.0.0/7 ? Есть
модуль на перле, который склеивает таким макаром интервалы?
auto-sum.pl делает, то что ты сейчас описал? На
http://lexa.ru/programs/runetworks.html скупо написано о том что
делают скрипты.
AT> Далее - рекурскивно.
AT> Простейший алгоритм, нифига не эффективный, но сходящийся максимум за
AT> 32 итерации:
AT> a) сортируем все по IP (началу диапазона)
AT> б) склеиваем все подходящие /32 в /31 (отличающиеся 32-м битом и с одинаковым
AT> кодом страны), затем /31 в /30 и так далее.
AT> При этом маски у склеиваемых должны быть одинаковыми.
Признаюсь честно, я не копенганен в операциях над подсетями, потому и
задаю столько глупых вопросов. Никак в голову не влезет как они
преобразуются.
С уважением,
Михаил Монашёв, SoftSearch.ru
Member of Independent Software Developers Forum (ISDEF)
mailto:postmaster@xxxxxxxxxxxxx
ICQ# 166233339
http://softsearch.ru/
Без бэкапа по жизни.