You are on page 1of 4

Bryan Aguiar, Gabriel De Leon, Emerald Kunkle, Alberto Lucas

Team Cryptids. Group #6

06/20/2020

CST311

Programming Assignment #4 – Subnet Addressing in Mininet

1. Correct Network design that follows the IP addressing rules for this assignment, listed above,
and allows h1 and h2 to successfully ping each other. Draw and submit the network design in
pdf format with all interfaces labelled with interface names (e.g. s1-eth1) and interface IP
addresses.
2. Screen capture of the program that runs with no Python errors.
3. Screen capture of successful ‘ h1 ping h2 ’ and ‘ h2 ping h1 ’ at the mininet> prompt.

4. A list of lines that were changed and why


a. Line 36-37. Net.addSwitch were moved ahead of router additions to remove the build
error
b. Line 39,41,43. The routers Ip addresses were updated from an Ip address of 0.0.0.0 to
the ones we designated because
c. Line 50-51. Changed the ip addresses of the hosts and the default route to the router it
should be routed to.
d. Line 57-60. Mimicked linuxrouter.py to name the router interface name and ip address
to one we designated to ensure all connections are proper.
e. Line 62 – 63. Named each interface name and ip address of the interface for each router
to router link. This is to ensure the routers interface are properly named to what we
want and the ip addresses are the ones we want for each of those interfaces.
f. Line 77-82. Added 6 static routes. The bread and butter to create routing tables for each
router to tell the network the gateways and how to connect them.

5. Answers to these questions:

a. What were any interesting findings and lessons learned?


How each router needs static routes to properly forward packets to other routers, i.e.
clueless on destinations upon running base script from miniedit. Properly addressing
subnets to create connections between interfaces.

b. Why didn’t the original program forward packets between the hosts?
No established routing table for each router and the default gateways were used not
allowing packets to be forwarded properly between the routers.

c. Is the line ‘ r3.cmd('sysctl -w net.ipv4.ip_forward=1') ’ required?


Yes, because it helps the system to define the node as a router and allow it to forward
packets between network interfaces.

d. Intentionally break your working program, e.g.: change a subnet length, IP address, or
default route for a host. Explain why your change caused the network to break.
Removing the line asked in the previous question did not allow router 3 to forward the
packet to the router so the packets would get lost in route to the other host. Removing
static routes will cause connection between routers to not be able to send packets to
each other. Changing the default route on the host causes the host unable to find the
gateway towards the router.

You might also like