การแก้ไขที่อยู่ MAC จากที่อยู่ IP ใน Linux


39

ฉันต้องเขียนสคริปต์ทุบตีซึ่งฉันต้องสร้างไฟล์ที่เก็บรายละเอียดของที่อยู่ IP ของโฮสต์และการจับคู่กับที่อยู่ MAC ที่สอดคล้องกัน

มีวิธีใดที่เป็นไปได้ที่ฉันสามารถค้นหาที่อยู่ MAC ของโฮสต์ (ระยะไกล) ใด ๆ เมื่อมีที่อยู่ IP ของโฮสต์อยู่

คำตอบ:


35

หากคุณต้องการค้นหาที่อยู่ MAC ของที่อยู่ IP ที่ระบุคุณสามารถใช้คำสั่งarpเพื่อค้นหาได้เมื่อคุณได้ทำการ ping ระบบ 1 ครั้ง

ตัวอย่าง

$ ping skinner -c 1
PING skinner.bubba.net (192.168.1.3) 56(84) bytes of data.
64 bytes from skinner.bubba.net (192.168.1.3): icmp_seq=1 ttl=64 time=3.09 ms

--- skinner.bubba.net ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 3.097/3.097/3.097/0.000 ms

ตอนนี้ค้นหาในตาราง ARP:

$ arp -a
skinner.bubba.net (192.168.1.3) at 00:19:d1:e8:4c:95 [ether] on wlp3s0

fing

หากคุณต้องการกวาด LAN ทั้งหมดสำหรับที่อยู่ MAC คุณสามารถใช้เครื่องมือบรรทัดคำสั่งfingเพื่อทำเช่นนั้น โดยทั่วไปจะไม่ได้ติดตั้งดังนั้นคุณจะต้องดาวน์โหลดและติดตั้งด้วยตนเอง

$ sudo fing 10.9.8.0/24

    นิ้วตัวอย่าง

อ้างอิง


ฉันรู้ว่านี่เป็นคำตอบเก่า แต่คุณมีความเข้าใจอย่างลึกซึ้งเกี่ยวกับวิธีการใช้งานของ Finger หรือไม่? ฉันพยายามเรียนรู้เกี่ยวกับเครือข่ายเลเยอร์นี้และเครื่องมือในการตรวจสอบ
akaphenom

1
@akaphenom หากคุณมีคำถามใหม่ ๆ โปรดตอบคำถามเหล่านั้นอย่างทันทีความคิดเห็นนั้นไม่ได้มีไว้สำหรับสิ่งนั้น
slm

8

คุณสามารถใช้arpคำสั่ง:

arp -an

แต่คุณสามารถใช้คำสั่งนี้ใน LAN เท่านั้นหากคุณต้องการค้นหาที่อยู่ MAC ของโฮสต์ระยะไกลใด ๆ บางทีคุณอาจต้องใช้เครื่องมือบางอย่างเพื่อจับแพ็คเก็ตเช่นtcpdumpและแยกผลลัพธ์


2
tcpdump(8)จะแสดงเฉพาะ MAC ท้องถิ่น (เช่น MAC ของเราเตอร์ขาล่าสุด) ส่วนหัวเลเยอร์ MAC ของแพ็กเก็ตอินพุตถูกถอดออกโดยเราเตอร์และอันใหม่จะถูกเพิ่มเข้าไปในแพ็กเก็ตขาออก
vonbrand

5

นี้เป็นจากคำถามและคำตอบของฉันในaskubuntu

คุณสามารถใช้คำสั่ง

   sudo nmap -sP -PE -PA21,23,80,3389 192.168.1.*

nmap:เครื่องมือสำรวจเครือข่ายและสแกนความปลอดภัย / พอร์ต จากคู่มือ:

-sP(ข้ามพอร์ตสแกน) ตัวเลือกนี้จะบอก Nmap ว่าจะไม่ทำการสแกนพอร์ตหลังจากค้นหาโฮสต์และพิมพ์เฉพาะโฮสต์ที่มีอยู่ซึ่งตอบสนองต่อการสแกน สิ่งนี้มักรู้จักกันในชื่อ“ การสแกนแบบปิง” แต่คุณสามารถขอให้สคริปต์ traceroute และ NSE โฮสต์ทำงานได้ นี่คือค่าเริ่มต้นที่น่ารำคาญกว่าการสแกนรายการหนึ่งขั้นตอนและมักจะสามารถใช้เพื่อจุดประสงค์เดียวกัน มันช่วยให้การสำรวจแสงของเครือข่ายเป้าหมายโดยไม่ดึงดูดความสนใจมากนัก การรู้จำนวนโฮสต์ที่ใช้งานมีค่ามากกว่าสำหรับผู้โจมตีมากกว่ารายการที่ได้จากการสแกนรายการของ IP ทุกตัวและชื่อโฮสต์

-PE; -PP; -PM (ประเภทปิง ICMP) นอกจากชนิดการค้นพบโฮสต์ TCP, UDP และ SCTP ที่ผิดปกติที่กล่าวถึงก่อนหน้านี้ Nmap สามารถส่งแพ็กเก็ตมาตรฐานที่ส่งโดยโปรแกรม ping ubiquitous Nmap ส่งแพ็คเก็ต ICMP 8 (คำขอ echo) ไปยังที่อยู่ IP เป้าหมายโดยคาดว่าจะเป็นประเภท 0 (ตอบกลับ echo) จากโฮสต์ที่พร้อมใช้งานโชคไม่ดีสำหรับผู้สำรวจเครือข่ายปัจจุบันโฮสต์และไฟร์วอลล์จำนวนมากปิดกั้นแพ็กเก็ตเหล่านี้ ต้องการโดย RFC 1122 [2] ด้วยเหตุนี้การสแกน ICMP-only จึงไม่ค่อยน่าเชื่อถือเพียงพอต่อเป้าหมายที่ไม่รู้จักผ่านทางอินเทอร์เน็ต แต่สำหรับผู้ดูแลระบบการตรวจสอบเครือข่ายภายในพวกเขาสามารถเป็นวิธีการปฏิบัติและมีประสิทธิภาพ ใช้ตัวเลือก -PE เพื่อเปิดใช้งานการร้องขอเสียงสะท้อนนี้

-A(ตัวเลือกการสแกนเชิงรุก) ตัวเลือกนี้ช่วยให้ตัวเลือกขั้นสูงและก้าวร้าวเพิ่มเติม

21,23,80,3389 พอร์ตเพื่อค้นหา

192.168.1.* ช่วงของ IP แทนที่ด้วยของคุณ


-sP ใช้สำหรับ "scanPing" ซึ่งเป็น -sn ใน nmap รุ่นที่ไม่เคยปรากฏมาก่อน
meawoppl

4

arping

arping -I <interface> -c 1 <host>

คำสั่งควรส่งคืนที่อยู่ MAC ในการตอบกลับ สิ่งที่ต้องการ,

$ arping -I eth0 -c1 192.168.1.2
ARPING 192.168.1.2 from 192.168.1.5 eth0
Unicast reply from 192.168.1.2 [08:01:27:38:EF:32]  0.746ms
Sent 1 probes (1 broadcast(s))
Received 1 response(s)

arpingให้บริการโดยแพคเกจiputils-arpingบนเดเบียน


arpingยังต้องมีการบอกว่าจะใช้อินเตอร์เฟส-Iตัวใดพร้อมกับตัวเลือก
Stephen Kitt

คุณสามารถใช้ arping -f เพื่อออกหลังจากการตอบครั้งแรก
Ryan Griggs
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.