Социальный веб-сайт о командах оболочки

Вы неправильно понимаете regex синтаксис. [16-32] не означает "соответствия 16, 17... или 32". Это означает "соответствие один символ, который равняется или 1 или 2 или в диапазоне 6-3" (который не является допустимым диапазоном, следовательно ошибка).

Возможно записать regex для соответствия диапазону целых чисел, но это сложно и подвержено ошибкам. В Вашем случае было бы намного легче использовать nmap --exclude опция исключить диапазоны Вы не хотите. Это понимает нотацию CIDR, которая является намного более простым способом описать диапазоны, о которых Вы говорите.

nmap -n -iR 0 --exclude 10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,224-255.-.-.- -sL >RANDOM-IPS.txt

Вы не упоминали петлевой блок (127.0.0.0/8), но, вероятно, необходимо исключить это также.

1
13.04.2017, 15:37
1 ответ

Возможно, commandlinefu или оболочка-fu?;-)

5
27.01.2020, 23:17

Теги

Похожие вопросы