Build a bit, test a bit
You have a design. Now you build it. A good builder does not put everything in place and then press the power switch.
They add one part, test it, then add the next. When something fails, they know it was the last thing they added.
By the end of this lesson
Note
I can add a server and a new subnet to a working system and test after every step.
Key words
| Word | What it means |
|---|---|
| Network | computers and devices joined together so they can share data |
| Subnet | a smaller network with its own range of addresses |
| Node | any device joined to a network, such as a PC or a server |
| Server | a computer that gives a service, such as a web page, to other devices |
| Gateway | the address a device uses to leave its own network |
| Router | a device that passes messages from one network to another |
| Static route | a route that a person writes by hand |
| Build log | a record of each step, the test after it and its result |
The cells students fill in are left blank in this preview.
Starter
Have a go
Starter
3 questionsYour answers are marked here and are not kept. A college account keeps every student’s marks.
This is practice
Important
The real Task 4a gives you the exam board's own network file to refine and build on. There is no such tool here. These commands build a small network in a lab with real tools. Ask your teacher what the real task lets you use.
Step 0: routes on router A
sudo ip netns exec r1 ip route replace 10.0.3.0/24 via 10.0.12.2; sudo ip netns exec r1 ip route replace 10.0.99.0/24 via 10.0.12.2A command for the lesson’s lab terminal. It is shown here and not run.
Step 0: the way back on router B
sudo ip netns exec r2 ip route replace 10.0.1.0/24 via 10.0.12.1A command for the lesson’s lab terminal. It is shown here and not run.
Step 1: start a web server
sudo ip netns exec mgmt bash -c "cd /tmp && python3 -m http.server 8080 --bind 10.0.99.2 >/dev/null 2>&1 &"A command for the lesson’s lab terminal. It is shown here and not run.
Test 1: ask the server for its page
sudo ip netns exec h1 python3 -c "import urllib.request; print(urllib.request.urlopen('http://10.0.99.2:8080/').status)"A command for the lesson’s lab terminal. It is shown here and not run.