![]() |
Модераторы: ginnie, korob2001 |
![]() ![]() ![]() |
|
ISQman |
|
||||
Шустрый ![]() Профиль Группа: Участник Сообщений: 66 Регистрация: 22.7.2008 Репутация: нет Всего: нет |
вот от этой криворукости и мы страдаем, в общем вот код, где небыло маски вообще я добавлял /24
чуть не забыл работаю под фряхой имхо винда сакс Это сообщение отредактировал(а) ISQman - 30.7.2008, 09:41 |
||||
|
|||||
ISQman |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 66 Регистрация: 22.7.2008 Репутация: нет Всего: нет |
наверное всётаки никто не сталкивался с таким гемором...
тогда такой вопорс, как ещё проверить вхождения подсеток? |
|||
|
||||
ginnie |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1287 Регистрация: 6.1.2008 Где: Москва Репутация: 6 Всего: 49 |
ISQman, если честно, я из Ваших пояснений так и не понял задачу, которую надо решить. Про вхождение подсеток amg, решение уже привел. Вам, вероятно, надо что другое, но вот что - не понятно!
Присоединяюсь к просьбе amg
Это сообщение отредактировал(а) ginnie - 31.7.2008, 17:46 -------------------- Написать код, понятный компьютеру, может каждый, но только хорошие программисты пишут код, понятный людям. (Мартин Фаулер. Рефакторинг) |
|||
|
||||
ISQman |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 66 Регистрация: 22.7.2008 Репутация: нет Всего: нет |
глубоко извиняюсь покурил мануальчики, и всё стало на свои места
amg и ginnie, Вы просто чудо а не люди))) СЫПЫСЫ вам от чистого сердца ![]() ![]() великие шаманы программирования ![]() |
|||
|
||||
ISQman |
|
||||
Шустрый ![]() Профиль Группа: Участник Сообщений: 66 Регистрация: 22.7.2008 Репутация: нет Всего: нет |
Всё чудесно, только вот вопрос каким таким чудесным образом вывод получается такого вида? 212.40.60/24 213.155.0/19 213.231.0/18 т.е ип теперь состоит из 3-х "частей" а не из 4-х Это сообщение отредактировал(а) ISQman - 20.8.2008, 12:07 |
||||
|
|||||
ISQman |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 66 Регистрация: 22.7.2008 Репутация: нет Всего: нет |
а есть ли альтернатива данному способу?
т.к. при переборе фул вью на более чем 2к подсетей роутер уходит в раздумие минут на 10... |
|||
|
||||
amg |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1145 Регистрация: 3.8.2006 Где: Новосибирск Репутация: 9 Всего: 50 |
Если под "данным способом" Вы имеете в виду тот код, который я приводил где-то в начале, то первое, что приходит в голову -- это переписать тот дурацкий цикл, который совершенно справедливо критиковал ginnie. Возможно, будет ускорение, м.б. даже в разы.
Дальнейшее ускорение -- это уже нужно менять алгоритм и/или используемый модуль. Возможно, сначала отсортировать список и очевидные случаи удалить сразу ... И кстати, на отсортированном списке при условии "правильного" цикла (который не тупо перебирает все подряд, а делает выход, как только обнаруживает совпадение) даже без удаления "в ручную" очевидных случаев программа будет работать быстрее (возможно, сильно быстрее). Это сообщение отредактировал(а) amg - 28.10.2009, 09:14 |
|||
|
||||
ISQman |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 66 Регистрация: 22.7.2008 Репутация: нет Всего: нет |
цикл я переписал сразу, а счас просто ищу вот тот самый алгоритм/модуль, который будет работать быстрее...
идея на данный момент есть, например, ключами для начала использовать глые ипы без маски, а значения будут масками, таким образом я хоть смогу отсеять часть дубликатов (параллельно проверять маски и оставльять наименшую)... кстати есть ещё идея и вот как раз с ней я никак не могу подружиться в плане кода: можно подсети сравнить побитово (благодаря маске), но как правильна побитово разложить увы я так и не понял, да и как сравнить. допустим есть 172.16.0.0/15 минимальный ип будет 172.16.0.1 бродкаст - 172.17.255.255 в данном случае все подсети аля 172.17.0.0/24 172.16.0.0/24 должны отсеятся (если таковы имеются в списке) и т.д. пока реализовую первую задумку вот что наковырял:
ключами являются ипы, значения - маски втолько остался вопрос стоит ли сливать в подсетки... Это сообщение отредактировал(а) ISQman - 28.10.2009, 13:18 |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Perl: Системное программирование" | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Perl: Системное программирование | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |