हाय मैं एक छोटे से bash स्क्रिप्ट पर काम कर रहा हूं जो हर 5 मिनट में लैन को स्कैन करेगा और लाइव होस्ट प्राप्त करेगा और फिर उनके मैक पते प्राप्त करेगा।
अब तक मेरे पास यह है:
nmap -sP -n -oG - 10.0.0.1-20 | grep "Up" | awk "{print $2}"
जो मुझे आईपी पते देता है। अब मुझे कुछ ऐसा करना है
arp -an | grep "ip"
लेकिन मैं "बैश करने के लिए नया हूँ और मैं नहीं जानता कि कैसे :)
उत्तर:
उत्तर № 1 के लिए 4यहाँ एक स्क्रिप्ट है जो वास्तव में आप क्या चाहते हैं:
#!/bin/bash
HOSTS=$(nmap -sP -n -oG - 192.168.1.1-10 | grep "Up" | awk "{print $2}")
for host in ${HOSTS}; do
arp -an | grep ${host} | awk "{print $2 $4}"
done
जवाब के लिए 2 № 2
उपयोग करने का प्रयास करें arp-scan
, उदाहरण:
sudo arp-scan --interface=wlan0 192.168.1.0/24
जवाब के लिए 0 № 3
क्वेरी के दूसरे भाग के लिए आप उपयोग कर सकते हैं:
for host in $(nmap -sP -n -oG - 192.168.83.1-35 | grep "Up" | awk "{print $2}");
do arping $host -c 1;
done
जवाब के लिए 0 № 4
यह एक संक्षिप्त प्रारूप में सभी रिकॉर्ड को आउटपुट करता है:
nmap -n -sP 10.0.3.0/24 | awk "/Nmap scan report/{printf $5;printf " ";getline;getline;print $3;}"
यह आईपी "s / MAC" के लिए भी काम करता है जो हैंपहले से ही मेजबान ARP तालिका में नहीं है। यह एक अच्छी बात है। मेरे सिस्टम पर स्वीकृत उत्तर से स्क्रिप्ट केवल मेजबान दिखाता है जो एआरपी तालिका में सूचीबद्ध हैं ...
का परिणाम:
10.0.3.100 B8:27:EB:8E:C5:51
10.0.3.101 00:26:B6:E1:4B:EB
10.0.3.112 00:01:29:02:55:25
etc..