Advertisement
MikiSoft

Get local IPs of devices with their respective MACs on connected network

Sep 17th, 2020 (edited)
1,270
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.50 KB | None | 0 0
  1. # Requirements: netifaces, scapy[basic], ipaddress
  2.  
  3. from netifaces import ifaddresses, gateways, AF_INET
  4. from ipaddress import IPv4Network
  5. from scapy.all import ARP, Ether, srp
  6. iface = gateways()['default'][AF_INET][1]
  7. ifaddresses = ifaddresses(iface)[AF_INET][0]
  8. answered, _ = srp(Ether(dst='ff:ff:ff:ff:ff:ff')/ARP(pdst=str(IPv4Network(ifaddresses['addr']+'/'+ifaddresses['netmask'], strict=False))), iface=iface, timeout=1, verbose=False)
  9. for i in answered:
  10.     print('IP: '+i[1].psrc, 'MAC: '+i[1].hwsrc)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement