ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 

  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА














     АРХИВ :: Apache-Talk
Apache-Talk mailing list archive (apache-talk@lists.lexa.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[apache-talk] Re[2]: [apache-talk] Сжатие Гео-базы для mod_ geo.



Здравствуйте Алекс,

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/
Без бэкапа по жизни.



 




Copyright © Lexa Software, 1996-2009.