Network Security and Router Managment

You might also like

Download as txt, pdf, or txt
Download as txt, pdf, or txt
You are on page 1of 1

#!

/usr/bin/env python
import scapy.all as scapy
import argparse

def get_arguments():
parser = argparse.ArgumentParser()
parser.add_argument("-t", "--target", dest="target", help="Sepcify target ip or
ip range")
options = parser.parse_args()
return options

def scan(ip):
arp_packet = scapy.ARP(pdst=ip)
broadcast_packet = scapy.Ether(dst="ff:ff:ff:ff:ff:ff")
arp_broadcast_packet = broadcast_packet/arp_packet
answered_list = scapy.srp(arp_broadcast_packet, timeout=1, verbose=False)[0]
client_list = []

for element in answered_list:


client_dict = {"ip": element[1].psrc, "mac": element[1].hwsrc}
client_list.append(client_dict)

return client_list

def print_result(scan_list):
print("IP\t\t\tMAC\n----------------------------------------")
for client in scan_list:
print(client["ip"] + "\t\t" + client["mac"])

options = get_arguments()
result_list = scan(options.target)
print_result(result_list)

You might also like