Programming Assignment #4 Solution




Please read the questions carefully before you start your work.


Please ask the instructor any time if you don’t understand the question or find any mistakes in the question.



In this assignment you will develop a program that will calculate subnet information based on specific inputs using python:


  • The program will accept the filename of a pcap file on the command line. This can be accomplished with argv.


  • The program will read in the pcap file. This can be done with rdpcap in the scapy module.


  • The program will display the following information from the 1st packet of the pcap file.
    1. Source IP address


  1. Requested IP address


  1. Source hardware address


  1. Destination hardware address


  • The program will build an ARP response to the first packet of the pcap with a response that the hardware address of 00:0c:29:c5:33:72 has the IP address requested. Your response should be sent directly to hardware address making the ARP request.


  • The program will display the following information about your response packet:


  1. Source MAC


  1. Destination MAC


  1. ARP Op code


  • The program will send the packet out the network interface.


You are required to use scapy and Python 2.7. You can use from scapy.all import * to import scapy.


The pcap file will only be ARP queries.


You can use the Assignment5.pcapng to test your script.





Grading Criterion:


The grade will be zero if the file is not submitted correctly or on time The grade will be zero if the program fails to run


Your program should solve the above requirements. At least ten points will be taken off for each


requirement that is not met.

Non-original work will be graded as a zero


If multiple submissions are allowed, only the latest submission will be graded


Submission instructions:


  • Name your file


  • Attach your file to the correct assignment under the Lessons category and submit


  • You are a CS major, that should be more directions than you needed


error: Content is protected !!