Session 1 - DNS Introduction
Getting Started (5 min) - Introduction of DNS
- Students will watch this video https://www.youtube.com/watch?v=72snZctFFtA from 0:47 to 3:22 to introduce the function of DNS.
- Students should consider the video and the pre-lesson reading to answer the following question: "What is the purpose of the Domain Name System?"
- After the students have finished journaling, the teacher should give these explanations to clarify DNS and further set up the lesson:
- The purpose of DNS is to resolve domain names to IP address for computers on the Internet.
- Our purpose as a class is to understand what DNS means, how it works, what benefits it provides, and some challenges it faces.
Guided Activity (40 min)
Part 1 (20 min) - Investigation
Version 1 - If students have access to the system console window, use it to complete the following steps.
Directions for Host Configuration and DNS in Action Using the Console Window:
- Console Based Use: (cmd prompt)
- Find your host’s IP address: (ipconfig)
- Find the IP address of the default gateway (ipconfig)
- Find the physical address of the default gateway (arp –a)
- Resolve domain names: (nslookup)
- google.com
- umbc.edu
- domain.name
- Domain names recently resolved: View the HOST DNS cache (ipconfig /displaydns)
- Unknown domain names: Find the IP address of the local DNS server: (ipconfig /all)
Version 2 - If the Console is blocked for your students, you can still demonstrate most of the console commands on your computer. If it is blocked for you as well, use a web site such as pingtool.org and the prompts below.
Note: If the Console is blocked, students will need a way to obtain unique IP addresses. A document named "DHCP Simulator" (in the lesson folder) contains 30 unique IP formatted addresses. Print and cut out the blocks and allow a student dubbed DHCP to give them out at random.
Directions for Host Configuration and DNS in Action Activity Without the Console Window:
- Find your host’s IP address: (http://centralops.net/co/, http://pingtool.org/). Survey student results and explain that the values are the often the same because the network uses one computer to make connection outside the local network.
- Watch the first 40 seconds of DNS Cache Poisoning (https://www.youtube.com/watch?v=1d1tUefYn4U)
- Use traceroute to find the number of routers (hops) involved in getting to apcsprinciples.org.
- Resolve domain names: (nslookup)
- google.com
- umbc.edu
- domain.name
- Domain names already resolved: Copy the IP addresses to a browser’s web address bar and visit two of the domains from number 4.
- Unknown domain names: Review the traceroute results to each domain. What is the IP address of the default gateway?
Part 2 (10 min) - Journal
Journal Questions for Version 1:
Students should attempt to answer these questions based on the previous activity:
- How do you access a command prompt?
- What console command do we use to find our IP address and the IP address of the default gateway?
- How can we find the physical address of the default gateway?
- How do Internet bound packets get to the default gateway?
- How can we look up (resolve) unknown IP addresses from the console?
- How can we see a list of the domain names and IP address already resolved by our host computer?
- How does your computer resolve unknown domain names into their addresses?
Suggested Answers
- In Windows XP, click Start>run then type cmd.
- At a console prompt, type ipconfig.
- At a console prompt, arp -a.
- IP packets are sent inside physically addressed frames.
- Use nslookup followed by the domain name.
- At a console prompt, ipconfig /displaydns
- The computer obtains the IP address by requesting it from the local DNS server.
Journal Questions for Version 2:
Students should attempt to answer these questions based on the previous activity:
- The Console is just one tool that can be used to find a computer's actual IP address. How is the Console accessed on your computer at home, if you have one?
- Why does pingtool.org not give us our real IP address?
- What is the role of the local DNS server?
- What is the purpose of the routers on the Internet?
- Why did domain.name not resolve to an IP address?
- What do we call the list of domain names and IP addresses already resolved by our host computer?
- How does a computer resolve unknown domain names into their addresses?
Part 3 (10 min) - Diagram
Put the following list of DNS and other devices on the board. As a class, students are to create a diagram of the way devices 1 – 5 interact to resolve domain names (similar to the last picture in the overview.) Have students draw the picture on the board and agree that it is correct before they “write” it in their journals.
- Host
- Local DNS
- Root
- Top Level Domain
- Authoritative Name
- Web Server
- Router
Wrap Up (5 min) - Introduce Improvisation
Have students watch "The Way of Improvisation" https://www.youtube.com/watch?v=MUO-pWJ0riQ with the remainder of class (up to 4 minutes).
Session 2 - All the world is a stage, and all the men and women merely players
Getting Started/Introducing Activity (5 min)
The teacher will explain the following activity to the students:
- We are going to simulate the function of DNS as used to obtain web pages on the Internet, creating a sort of improvisational play.
- Just as the original developers did, we will use a trust model:
- Assume everyone is cooperating.
- Use an “end-to-end architecture” that keeps the center of our network as simple as possible.
- (Have students record both of these characteristics of the Internet in their journals.)
- Together with DNS, web servers, and Internet routers, students playing the role of each device will request, resolve, and deliver web pages.
- Along the way, we will likely run into several problems and failures (learning opportunities). As we do, we will resolve them together and record our insights in our journals.
Show DNS explained (https://www.youtube.com/watch?v=72snZctFFtA) 3:20 - 5:39.
Guided Activity (40 min) - Improvisation Activity
Part 1 (30 min) - DNS Device Roles
- In small “author” groups, have students prepare scripts for students who will play a device.
- Each group creates a card or page for their device.
- One side of the page contains the device name and an explanation of its role. (The explanation is to be brief – fewer than 25 words but enough to give a non-expert the general idea of the role of the device.)
- The other side of the paper contains a more detailed explanation of the service the device provides, including the devices with which it communicates, a list of the data required for the server to function, and an explanation of how the data is initially acquired.
- Each group should print one draft copy of their scripts. Students share (rotate) their device scripts with another group.
- Each group makes constructive criticisms and returns scripts to their authors. (If time permits, you may want to repeat this round.)
- "Author" groups make revisions and print 4 copies of each device page. (Use front and back of the paper if possible.)
- Collect these and keep them sorted by device.
Part 2 (10 min) - Web Servers
Teachers will explain that the Internet is much bigger than the Web, but for our simulation purposes, we will only be trying to access web pages from web servers.
- Depending on the size of the class, pick two or three domain names to simulate, such as .com and .net. Select two domains from each top-level domain. (For instance, for .com, you might select google.com and amazon.com.)
- Divide the class into groups such as the "google group", the "amazon group", and the other subdomains selected.
- Each student in each group finds a unique page from their second-level domain and prints two copies of the first page of the web page each student selects.
- Have students write a one-word title for their page on the top of the paper and submit it to you, placing the pages in piles by subdomain.
Closing (5 min) - Journal
Have students pick one or more of the following questions to answer in their journals:
- Just as the original Internet developers did, we are using a trust model - assuming everyone is cooperating. Why do you think we used a trust model?
- The Internet’s end-to-end architecture makes connecting to it simple. Why do you think an end-to-end architecture encourages invention and innovation of Internet-based systems?
Tell students that once we get our model working, we will introduce some challenges and investigate strategies to cope with them.
If time permits, the stage setup for the next lesson, "How the Internet Works: DNS Activity", can be started. In particular, it is helpful to work out the number of students you will have in each DNS simulation role. This needs to be determined before the next class. For suggested role group sizes, see the introduction of the next lesson.
When pairing up students in "Think - Pair - Share," use a random generator such as random.org (use list tool) to randomly pair students.