Networking for Web Developers

About This Course

How does the Web work? Under the hood of HTTP there's a whole stack of networking protocols. Explore the underpinnings of the net with tools like `traceroute`, `tcpdump`, and `nc`.

Why Take This?

As a web developer, it's handy to know a bit about the TCP/IP stack, IP addressing, DNS, and other protocols that underlie the Web technologies you use.

Prerequisites and Requirements

**You have written code that makes use of HTTP.** As a beginning backend developer, you may have written code that accepts or performs HTTP requests. But you'd like to know more about what's going on "under the hood" when you use HTTP. **You can use the Linux command line.** To follow the material in this course, you'll need to enter commands into the shell and make sense of their output. You'll use command-line programs like `ping` and `tcpdump` to gather information about computers on the network. **You have used the Internet.** If you're looking at this page, you pass this requirement! This course does not assume that you are configuring routers or building firewalls in your spare time. It is really intended as an introduction. **You have access to a Linux system to run commands.** If you're taking this course as part of a Udacity Nanodegree program, you can use the Linux-based development environment that we have set up for you. [Find out how to access it here.](https://www.udacity.com/account#!/development_environment) Many of the practical exercises in this course can be done using another Unix-like shell environment, but you may get different results for some exercises.
You've used the Internet. Now find out more about how it works.