CIS 656, Dr Ott, Spring 2006, Project B. Network Description. This is a hypothetical private network inside NJIT, with a private address space, connected through a NAT Router (Network Address Translation) to the rest of the NJIT network, and thus to the rest of the Internet. A drawing of this network now can be found on Dr Ott's web page. For a computer (router) the drawing is not necessary: all relevant information is given below. But the drawing makes life easier for us humans! There are 11 Routers inside the private network (R1, ... , R11). There are 14 subnetworks inside the private network (I, ... , XIV). The NAT router is outside the private network. Network XIV is the boundary and has only two interfaces on it: it is a ``point to point link'', see Forouzan page 369. This is irrellevant to the project. Network addresses and MTUs: Netw address MTU I 10.5.16.0/20 4464 II 10.5.0.0/20 576 III 10.4.0.0/20 65535 IV 10.5.32.0/20 4352 V 10.5.48.0/20 17914 VI 10.5.64.0/20 1500 VII 10.5.80.0/20 4464 VIII 10.5.96.0/20 1500 IX 10.6.0.0/18 17914 X 10.6.64.0/18 1500 XI 10.7.0.0/16 1500 XII 10.3.0.0/16 65535 XIII 10.2.0.0/20 65535 XIV 10.1.0.0/24 65535 Interfaces: R1: A1 to I, A2 to II, A3 to III, A4 to IV, A5 to V, A6 to VI. R2: A7 to I, A8 to VII. R3: A9 to VI, A10 to VII. R4: A11 to V, A12 to VIII. R5: A13 to V, A14 to IX. R6: A15 to IX, A16 to X. R7: A17 to IV, A18 to XI. R8: A19 to X, A20 to XI. R9: A21 to III, A22 to XII. R10: A23 to XII, A24 to XIII. R11: A25 to XIII, A26 to XIV. NAT Router: A27 to XIV. The other port(s) on the NAT router do not concern us. Addresses of interfaces. (If I goofed, like using an address twice, or give an address not in the subnework the interface is on, please let me know). A1 10.5.16.1 A2 10.5.0.1 A3 10.4.0.1 A4 10.5.32.1 A5 10.5.48.1 A6 10.5.64.1 A7 10.5.24.0 A8 10.5.80.1 A9 10.5.72.0 A10 10.5.80.2 A11 10.5.56.0 A12 10.5.96.1 A13 10.5.52.0 A14 10.6.0.1 A15 10.6.32.0 A16 10.6.64.1 A17 10.5.40.0 A18 10.7.0.1 A19 10.6.96.0 A20 10.7.128.0 A21 10.4.8.0 A22 10.3.0.1 A23 10.3.8.0 A24 10.2.0.1 A25 10.2.8.0 A26 10.1.0.1 A27 10.1.0.128 Routing is ``min-hop'': Routers always try to use the route that has the smallest number of intermediate routers. There are some ties: From R1 to VII routing could go over either R2 or R3. The decision is to go over (I, R2). (Larger MTU). From R1 to X routing could go over either (R7, R8) or over (R5, R6). The decision is to go over (V, R5, IX, R6). (Larger minimal MTU). Note: This way of breaking ties can be done by a human using static routing, not by routers using RIP or OSPF ! All routers (but R11) have a default route to or toward R11. R11 does not have a default route. All packets with destination outside 10.0.0.0/8 it forwards to the NAT router. All packets with destination address in one of the subnetworks I, ... , XIII it handles as the theory says it must. (For network XIII it also checks existence of the destination, using ARP or some such mechanism). Packets with destination A26 it sends to its own higher level software. Packets with destination A27 it delivers to A27. All other packets with destination in 10.0.0.0/8 it drops on the floor and (if possible) it sends an ICMP error message for these. (The NAT Router uses state information to do address translation. Not your concern in this project). In Project B: You will create forwarding tables for R1 and for R11, using the prescriptions above. You will write a program that for packets deliverd to one of the interfaces A1, ... , A6 and A25, A26: Prints the content of the packet (as in project A), Decides how to handle the packet (direct delivery, forwarding, drop, ICMP error message, fragmentation, etc), prints the outgoing fragments. The only IP options present will be No-Op and Strict Source Route. For an example, see the website of Dr Ott, CIS 656 Fall 2002. (Miniproject and Maxiproject). R11 ``knows'' that on network XIV there are only two interfaces: A26 and A27. Further, assume that whenever direct delivery is required, the destination interface indeed exists, and that an entry in the arp cache already exists.