Отбор диапазона ip в bash и другое

Dec 12, 2019 11:54

Получаем список свободных IP в сети
nmap -v -sP 192.168.3.0/24 | grep "host down" | awk {'print $5'}

Получение рандомного ip
nmap -v -sP 192.168.3.0/24 | grep "host down" | awk {'print $5'} | sort -R | head -1

В моём солучае зарезервированны IP с 1-10 и 250-254 ( + 0 и 255 ), поэтомы вырезаем их из вывода.
nmap -v -sP 192.168.3.0/24 | grep "host down" | awk {'print $5'} | grep -Ev '3\.([0-9]{1}$|10$|25[0-5]{1}$)+'

Разбор:
3\. - подставляем третий октет с точкой, в данном случае он фиксирован
([0-9]{1}$ - режем ip 0-9
10$ - режем 10-ый
25[0-5]{1}$ - режем 250-255

grep, nmap, bash

Previous post Next post
Up