Модуль, скрипт или алгоритм для преобразования диапазона IP в нотацию CIDR - PullRequest
3 голосов
/ 22 марта 2011

Как я могу преобразовать много диапазонов IP в нотацию CIDR?Все, что я нашел, - это ip2cidr service , но у меня> 200K IP-записей.

Ответы [ 2 ]

3 голосов
/ 22 марта 2011
0 голосов
/ 17 марта 2014

Использование netaddr:

from netaddr import *
ips = ['192.168.37.111', '192.168.37.112']
all_ips = list(iter_iprange(ips[0], ips[1]))
ip_address = cidr_merge(all_ips)
cidr = []
for ip in ip_address:
    cidr.append(str(ip.cidr))
...