Concepts: IP addressing, visual interfaces, storage

Skills: HTML, CSS, Javascript

Background Information:

We discussed in class various models of IP addressing. In particular, the 32-bit IPv4 and 128-bit IPv6 schemes. IPv4 was further divided into five classes A, B, C, D, E, which differ both function as well as division between prefix and suffix, as well as a classless model which has an arbitrary boundary (specified by a mask) between prefix and suffix.

We will assume these are all public addresses that need to be globally unique at least in conjunction with the network mask as opposed to the private addresses which were separately discussed.

Description of Assignment:

The goal of this assignment is to provide an interface for assigning and managing IP addresses for the various types described above. There are several prices of information that will need to be entered by the user:

  • The choice of IPv4 or IPv6
  • The choice of classful (for IPv4) or classless
  • For classful addressing, the choice of class A-E
  • For classless, the mask that determines the boundary between prefix and suffix for IPv4, or between the global prefix and subnet prefix for IPv6
  • For IPv6, the choice whether zero compression should be applied to colon-hex
  • The choice of how many IP addresses are required by the user

You will probably use either a radio buttons or a dropdown to allow the user to make these choices

If the user chooses Class E, simply indicate that such addresses are reserved and no further action is required.

It is recommended when displaying the addresses whether as bits (0s and 1s), dotted decimal notation for (IPv4), or colon-hex for IPv6 that Courier font be used as it is fixed length. You should use a class (in the HTML/CSS sense of the word) within the HTML and corresponding CSS to handle that styling.

While you may assume that you are the sole authority on assigning IP addresses, you need to ensure that you dont reassign address that have already been used. To this end you will need some kind of persistent storage. You can use a text or xml file, a database if you are so inclined, of for the purposes of this assignment, it is probably adequate to use the store available within the users browser. (See https://www.w3schools.com/html/html5_webstorage.asp)

Academic Honesty!
It is not our intention to break the school's academic policy. Posted solutions are meant to be used as a reference and should not be submitted as is. We are not held liable for any misuse of the solutions. Please see the frequently asked questions page for further questions and inquiries.
Kindly complete the form. Please provide a valid email address and we will get back to you within 24 hours. Payment is through PayPal, Buy me a Coffee or Cryptocurrency. We are a nonprofit organization however we need funds to keep this organization operating and to be able to complete our research and development projects.