8

Есть ли строка nmap, которая будет автоматически определять мой текущий IP-адрес и маску подсети и запускать ping-scan для всех? Например:

#> nmap -sP 0.0.0.0

Вместо вручную:

#> nmap -sP 192.168.100.0/24

3 ответа3

5

Я не думаю, что есть способ сделать это только с помощью nmap , но вы можете написать это: Вот быстрое и грязное решение:

#!/bin/bash

IP_AND_MASK=`ifconfig | grep "inet addr" | head -n1 | sed 's|.*addr:\([0-9\.]*\).*Mask:\([0-9\.]*\)|\1/\2|g'`
NETWORK=`ipcalc "$IP_AND_MASK" | grep "Network:" | sed 's|^Network:\s*\([0-9/\.]*\).*|\1|g'`
nmap -sP "$NETWORK"

Вы должны установить ipcalc чтобы это решение работало.

НТН

0

Пробег может варьироваться, но это должно работать хорошо в большинстве случаев ...

nmap -sP `hostname -I | sed 's/[0-9]\+\s/0\/24 /g'`
0

Это работает, но тогда вам все равно нужно знать свою собственную подсеть ... хотя копирование и вставка IP-адреса сохраняются.

nmap -sP /24

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .