2015-11-18 7 views
-2

H;obtenir le nom d'en-tête et l'adresse IP dans une ligne en utilisant nmap

essaie d'obtenir le nom d'en-tête et l'adresse IP dans une ligne en utilisant Nmap, mais je na pas trouver une bonne façon de le faire j'ai essayé: (en utilisant mon routeur comme exemple):

J'utilise SSH

nmap -sS -n -p80 192.168.2.1 --script=http-headers -T5 --min-rate 1000 --max-retries 0 

sortie:

Nmap scan report for 192.168.2.1 
Host is up (0.12s latency). 
PORT STATE SERVICE 
80/tcp open http 
| http-headers: 
| WWW-Authenticate: Basic realm="TD-W8901G" 
| Content-Type: text/html 
| Transfer-Encoding: chunked 
| Server: RomPager/4.07 UPnP/1.0 
| Connection: close 
| EXT: 
| 
|_ (Request type: GET) 

ce que je cherche en sortie est:

192.168.2.1 => TD-W8901G or 
192.18.2.1:TD-W8901G 

Cordialement

+0

sans votre code, à ce stade, il ne ressemble pas à une question de programmation – davejal

+0

mettre à jour ma question s'il vous plaît vérifier – user3018257

+0

S'il vous plaît mettre à jour votre question, il est clair pour tout le monde ce que vous essayez d'atteindre.Je ne peux que supposer que vous essayez d'analyser le résultat NMAP avec PHP basé sur les étiquettes de cette question? – ins0

Répondre

0

comme ça avec awk:

nmap ... | awk '/^Nmap/{ip=$NF} /realm=/{gsub(/"/,"",$NF);gsub(/.*=/,"",$NF);print ip,$NF;exit}' 

Cela dit ... « si la ligne commence par "Nmap", sauf le dernier champ dans la variable ip. Si la ligne contient "realm =", supprimez toutes les guillemets doubles et dépouillez tout jusqu'à et y compris le signe égal. Imprimer la ip et le dernier champ restant, puis la sortie. ».

+0

Ce exactement ce que je cherchais merci beaucoup – user3018257

+0

Mon plaisir - bon la chance! –