Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
mapcidr — Утилита для выполнения множества операций для заданных подсетей/CIDR диапазонов. | Kitploit
Инструменты/GitHubGitHub/projectdiscovery/mapcidr
РазведкаКартирование сетиСбор информацииУтилиты и фреймворки
GitHubprojectdiscovery/mapcidr

mapcidr

Утилита для выполнения множества операций для заданных подсетей/CIDR диапазонов.

Репозиторий
1.2k1112 дней назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться
Сайт

mapCIDR

Утилита для выполнения различных операций с заданной подсетью / диапазоном CIDR.

Возможности • Установка • Использование • Библиотека • Присоединиться к Discord


mapCIDR разработан для упрощения распределения нагрузки при массовом сканировании; его можно использовать как в качестве библиотеки, так и в качестве автономного CLI-инструмента.

Возможности

mapCIDR

  • Развёртывание CIDR (по умолчанию)
  • Разделение CIDR (sbh, sbc)
  • Агрегация CIDR/IP (a, aa)
  • Сопоставление CIDR/IP (match-ip)
  • Фильтрация CIDR/IP (filter-ip)
  • Сортировка CIDR/IP (s, sr)
  • Подсчёт хостов CIDR (count)
  • Поддержка нескольких форматов IP (ip-format)
  • Перемешивание IP/портов (si, sp)
  • Конвертация IPv4/IPv6 (t4, )

Установка

root@kitploit:~
go install -v github.com/projectdiscovery/mapcidr/cmd/mapcidr@latest

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

root@kitploit:~
mapcidr -h

Эта команда покажет справку по инструменту. Ниже перечислены все доступные ключи.

root@kitploit:~
INPUT:
   -cl, -cidr string[]  CIDR/IP/Файл со списком CIDR/IP для обработки

PROCESS:
   -sbc int                  Разделить CIDR на заданное количество подсетей
   -sbh int                  Разделить CIDR на подсети с заданным количеством хостов
   -a, -aggregate            Агрегировать IP/CIDR в минимальную подсеть
   -aa, -aggregate-approx    Агрегировать разреженные IP/CIDR в минимальную приближённую подсеть
   -c, -count                Подсчитать количество IP в заданном CIDR
   -t4, -to-ipv4             Преобразовать IP в формат IPv4
   -t6, -to-ipv6             Преобразовать IP в формат IPv6
   -ip-format, -if string[]  Форматы IP (0,1,2,3,4,5,6,7,8,9,10,11)
   -zpn, -zero-pad-n int     Количество дополняемых нулей (по умолчанию 3)
   -zpp, -zero-pad-permute   Включить перестановки от 0 до zero-pad-n для каждого октета

FILTER:
   -f4, -filter-ipv4         Отфильтровать IPv4 адреса из ввода
   -f6, -filter-ipv6         Отфильтровать IPv6 адреса из ввода
   -skip-base                Пропустить базовые IP (оканчивающиеся на .0) в выводе
   -skip-broadcast           Пропустить широковещательные IP (оканчивающиеся на .255) в выводе
   -mi, -match-ip string[]   IP/CIDR/Файл со списком IP/CIDR для сопоставления (через запятую, файл)
   -fi, -filter-ip string[]  IP/CIDR/Файл со списком IP/CIDR для фильтрации (через запятую, файл)

MISCELLANEOUS:
   -s, -sort                  Отсортировать входные IP/CIDR по возрастанию
   -sr, -sort-reverse         Отсортировать входные IP/CIDR по убыванию
   -si, -shuffle-ip           Перемешать входные IP в случайном порядке
   -sp, -shuffle-port string  Перемешать пары IP:Port в случайном порядке

UPDATE:
   -up, -update                 Обновить mapcidr до последней версии
   -duc, -disable-update-check  Отключить автоматическую проверку обновлений mapcidr
   
OUTPUT:
   -verbose            Подробный режим
   -o, -output string  Файл для записи вывода
   -silent             Тихий режим
   -version            Показать версию проекта

Запуск mapCIDR

Чтобы получить список IP для заданного CIDR, используйте следующую команду:

Развёртывание CIDR

root@kitploit:~
mapcidr -cidr 173.0.84.0/24
root@kitploit:~
                   ____________  ___    
  __ _  ___ ____  / ___/  _/ _ \/ _ \
 /  ' \/ _ '/ _ \/ /___/ // // / , _/   
/_/_/_/\_,_/ .__/\___/___/____/_/|_| v0.5
          /_/                                                     	 

		projectdiscovery.io

[WRN] Используйте с осторожностью. Вы несёте ответственность за свои действия
[WRN] Разработчики не несут ответственности за неправильное использование или ущерб.

173.0.84.0
173.0.84.1
173.0.84.2
173.0.84.3
173.0.84.4
173.0.84.5
173.0.84.13
173.0.84.14
173.0.84.15
173.0.84.16

Также можно получить список IP для заданного диапазона IP с помощью следующей команды:

root@kitploit:~
$ echo "192.168.0.0-192.168.0.5" | mapcidr
root@kitploit:~
192.168.0.0
192.168.0.1
192.168.0.2
192.168.0.3
192.168.0.4
192.168.0.5

Разделение CIDR по количеству подсетей

Чтобы разделить заданный CIDR или список CIDR на указанное количество подсетей или на несколько одинаковых меньших подсетей, используйте следующую команду:

root@kitploit:~
mapcidr -cidr 173.0.84.0/24 -sbc 10 -silent
root@kitploit:~
173.0.84.0/27
173.0.84.32/27
173.0.84.64/27
173.0.84.96/27
173.0.84.128/27
173.0.84.160/27
173.0.84.208/28
173.0.84.192/28
173.0.84.240/28
173.0.84.224/28

Разделение CIDR по количеству хостов

Чтобы разделить заданный CIDR на подсети с равным количеством хостов в каждой, используйте следующую команду:

root@kitploit:~
mapcidr -cidr 173.0.84.0/16 -sbh 20000 -silent
root@kitploit:~
173.0.0.0/18
173.0.64.0/18
173.0.128.0/18
173.0.192.0/18

Примечание: Идеальное разделение возможно только тогда, когда требуемое количество подсетей или хостов в подсети является степенью двойки. В противном случае инструмент попытается автоматически найти наилучшую стратегию разделения для получения желаемого результата.

Агрегация CIDR/IP

Чтобы объединить несколько диапазонов CIDR в меньший блок подсети, используйте следующую команду:

root@kitploit:~
$ mapcidr -cl cidrs.txt -aggregate

Чтобы вывести блоки CIDR для заданного списка IP, используйте следующую команду:

root@kitploit:~
$ mapcidr -il ips.txt -aggregate

Также возможно выполнение приближённой агрегации для разреженных групп IP (только версия 4). Конечный интервал будет содержать смежные IP, не принадлежащие входным данным:

root@kitploit:~
$ cat ips.txt 

1.1.1.1
1.1.1.16
1.1.1.31
root@kitploit:~
$ cat ips.txt | mapcidr -aggregate-approx

1.1.1.0/27

Чтобы вывести блоки CIDR для заданного диапазона IP (IPv4 | IPv6), используйте следующую команду:

root@kitploit:~
 $ mapcidr  -cl 192.168.0.1-192.168.0.255 -aggregate
 ИЛИ
 $ echo 192.168.0.1-192.168.0.255 | mapcidr -aggregate
root@kitploit:~
192.168.0.1/32
192.168.0.2/31
192.168.0.4/30
192.168.0.8/29
192.168.0.16/28
192.168.0.32/27
192.168.0.64/26
192.168.0.128/25

Сопоставление / фильтрация IP из CIDR

Чтобы сопоставить IP из заданного списка диапазонов CIDR, используйте следующую команду:

root@kitploit:~
$ mapcidr -cidr 192.168.1.0/24 -mi 192.168.1.253,192.168.1.252
$ mapcidr -cidr 192.168.1.0/24 -mi ip_list_to_match.txt

Чтобы отфильтровать IP из заданного списка диапазонов CIDR, используйте следующую команду:

root@kitploit:~
$ mapcidr -cidr 192.168.1.224/28 -fi 192.168.1.233,192.168.1.234
$ mapcidr -cidr 192.168.1.224/28 -fi ip_list_to_filter.txt

Форматы IP

Чтобы представить заданный IP в нескольких форматах, можно использовать флаг -if 0 для отображения всех поддерживаемых значений форматов. Конкретный тип формата можно отобразить, указав соответствующий индексный номер, как перечислено здесь. В настоящее время поддерживается 10 уникальных форматов.

root@kitploit:~
$ echo 127.0.1.0 | mapcidr -if 0 -silent

127.0.1.0
127.1
0177.0.01.0
0x7f.0x0.0x1.0x0
0x7f000100
0xabfa659dfa7f000100
281472812450048
111111111111111101111111000000000000000100000000
0x7f.0.01.0x0
::ffff:7f00:0100
%31%32%37%2E%30%2E%31%2E%30
127.000.001.000

Конвертация IP

Адреса IPv4 | IPv6 могут быть преобразованы из обозначения v6 в v4 или из отображённого IPv4 в адрес IPv4 с помощью флагов -t4 и -t6 в IPv4 и IPv6 соответственно.

root@kitploit:~
$ cat ips.txt 

1.1.1.1
2.2.2.2
root@kitploit:~
$ mapcidr -cl ips.txt -t6

00:00:00:00:00:ffff:0101:0101
00:00:00:00:00:ffff:0202:0202

Примечание:

Не все IPv6-адреса могут быть преобразованы в IPv4. Можно конвертировать только действительные IPv4-представленные IPv6-адреса.

Подсчёт хостов CIDR

Чтобы подсчитать количество хостов для заданного CIDR или списка CIDR, используйте следующую команду:

root@kitploit:~
$ echo 173.0.84.0/16 | mapcidr -count -silent

65536

Ввод ASN

Чтобы получить IP-адреса для номера ASN, используйте следующую команду:

root@kitploit:~
echo AS15133 | mapcidr -silent

5.104.64.0
5.104.64.1
5.104.64.2
5.104.64.3
5.104.64.4

Использование mapCIDR в качестве библиотеки

Библиотеку можно использовать непосредственно в программах на Go. В приведённых ниже фрагментах кода показано, как разделить CIDR на подсети и как разделить его на подсети, содержащие определённое количество хостов:

root@kitploit:~
package main

import (
	"fmt"

	"github.com/projectdiscovery/mapcidr"
)

func main() {
	// Разделить CIDR на две подсети
	subnets1 := mapcidr.SplitN("192.168.1.0/24", 2)
	for _, subnet := range subnets1 {
		fmt.Println(subnet)
	}
	// Разделить CIDR на две подсети, содержащие по 128 хостов каждая
	subnets2 := mapcidr.SplitByNumber("192.168.1.0/24", 128)
	for _, subnet := range subnets2 {
		fmt.Println(subnet)
	}

	// Вывести все IP в CIDR
	ips, _ := mapcidr.IPAddresses("192.168.1.0/24")
	for _, ip := range ips {
		fmt.Println(ip)
	}
}

mapCIDR создан с 🖤 командой projectdiscovery.

Скачать инструмент
t6
  • Ввод CIDR из STDIN (pipe)