HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
In this lab you will create an emulated network using the Emulab environment. Using an emulator allows one to prototype network architectures and performance. In this lab, you will investigate addressing and routing. You will use this network in future labs, so make sure that you document your network
To get you involved with a simulation environment that supports the development of networking. When designing a new network, it is difficult to acquire all the hardware and software. Also, performance and other networking issues can be investigate prior to building the network.
To start you on your way to developing a network that will be used in future labs.
To expose you to assigning IP addresses and fixed-length IP subnet addresses.
This lab is based on experiment 15 from Hands-On Networking with Internet Technologies by Douglas Comer (2nd edition, 2005). Janet Davis did the first conversion to Emulab
This is a team project in that each team will have their own network developed within Emulab. It is expected that you will talk to other students, faculty, etc., about the project.
You have plenty of time couple to complete this assignment if you start early to allow time to acquire the necessary Emulab resources.
Create an \textit{ns}file to configure the following network. Don't start your experiment just yet.
Your network will include four LANs. LAN A is connected to LAN B by a router and to LAN C by another router. LAN B is connected to LAN C by another router and LAN C is connected to LAN D by another router. In addition to the routers, each LAN has two other hosts.
With pencil and paper, plan the addressing scheme for your network.
Use the IP address 192.168.0.0 as the overall network address.
Use the third octet to assign a unique subnet address to each of the four LANs.
In assigning each router interface, determine a
'standard' method of assigning router IP addresses on each subnet.
What approach is used on the CS Network? (Hint: Use netstat
-r -n and look at the default route.)
Modify your
ns
file to specify an address for each
interface using the command tb-set-ip-lan,
which is
documented here.
Use
netstat -r -n, ping,
and traceroute to check out your network.
(Don't go overboard; checking a few paths should suffice.) Record these
exchanges using script
and paste them into your notebook.
tb-set-node-startcmd $routerName
"/proj/Nelson/router-startup"
For each host, add a line of
the following form to your
ns.
file:
tb-set-node-startcmd $nodeName
"/proj/Nelson/host-startup <net-address>
<netmask> <router-name>"
net-address should be the address of your network, 192.168.0.0. Normally this would be a default route, but you need to be able to ssh to your nodes over the Internet!
The result of adding these lines is to run scripts located
in the /proj/Nelson directory
upon startup of each node.
Janet wrote these scripts, and
we will
look at them later.
LET ME KNOW IF YOU RUN INTO PROBLEMS WITH THIS!
Note that the script files assume your routers are named
routerA,
routerB,
routerC,
and
routerD,
If you've given them different names,
you should
make your own copies of the files
router-startup,
host-startup, and
gated.conf
in your Emulab home directory,
/users/<username>.
Use netstat -r -n, ping,
and traceroute to check out your network.
Record these exchanges using script
and paste them into your notebook.
/proj/Nelson
directory. Answer the following questions.router-startup
script do?host-startup
script do?gated.conf
file? ing, traceroute, and netstat -r.
tevc -e Nelson/{proj name} now link2 down
tevc -e Nelson/{proj name} now link2 up
Read about Emulab's event interface in the advanced tutorial.
Take a router down by executing a following command of the
following form: tevc -e proj/exp now routerAB down
Use netstat -r -n, ping,
and traceroute to see how routes have changed
as a result of this change in network connectivity. Record
these exchanges using script and paste them
into your notebook.
Bring the router back up and see whether the original routes are restored.
ftp, telnet, http, etc.
Consider the CIDR block 192.186.0.0/13. Use 9 additional bits (beyond the /13 prefix) for subnet addressing, and assign a unique subnet address to each of the 5 networks in your intranet. Write down the addresses in CIDR notation.
Assign an IP address to each router interface, and configure each router with an address and mask for each of its interfaces.
Configure the routing table in each router with next-hop information for each of the five possible destination networks. (Do not enable automatic routing update protocols).
Assign each host an IP address, and configure each host to know its address.
Use
ping and
traceroute to checkout your network.
Record these exchanges using script.
Emulab is a shared resource used by many schools and research labs. Thus, you might have to schedule your time to ensure that you can get particular resources. That is especially true for this assignment, which will require a total of 12 nodes!
Traffic Generation Issues
Include your
nsfile, a visualization of your network, answers
to any questions embedded in the lab exercises, and appropriate script
sessions.
Use whois to find out who owns
the 192.168.0.0 class B address block. Why do you think
you were
asked you to use this as the address for your network?
Why do you think we did not have you change
the default route for your nodes? (Hint: Look back at the default route
in the output you got from netstat -r -n.
What was the address of the default router?)
How long did you spend on this lab? How did you spend your time?
Last Modified Thursday, 03-Apr-2014 12:23:05 PDT