CCNA Exam Preparation / Study method
CCNA technique 010: Timed subnetting — practice and verify
Solve a /27 IPv4 subnet by hand, verify the network and usable range with Python, then check the next subnet without memorizing the first answer.
Start hands-on practice · เริ่มภาคปฏิบัติ ↓Practical guide · คู่มือลงมือทำ
Download worksheet · ดาวน์โหลดขั้นตอนDetailed practical guide
Prepare your workspace and inputs
Start with host 192.0.2.77/27, a documentation-only address. Before running the script, write the network, broadcast, first host, last host and usable host count. Set a timer if measuring recall speed; correctness is the first pass criterion.
Platform context: Paper and Python 3.10+ with ipaddress. No router changes or simulator license required.
Scenario to reproduce or investigate
You must configure a host and gateway in the same /27 without assigning the network or broadcast address. A familiar last octet is not enough; determine the actual address block.
- Actual target and platform release
- Exact inputs or substituted values
- Baseline result
- Per-step expected and observed output
- Failure encountered and corrective action
- Final acceptance and recovery state
-
Calculate the block on paper
A /27 leaves five host bits. The last-octet block size is 32, so boundaries are 0, 32, 64, 96 and so on. Address 77 belongs to the block beginning at 64. Write the five required values before revealing the script result.
Command, configuration or input
Input: 192.0.2.77/27 Mask: 255.255.255.224 Last-octet block size: 32Expected result · ผลที่ควรเห็นYour prediction identifies 192.0.2.64/27, not 192.0.2.77/27 as the network address.
If it fails · เมื่อไม่ผ่านIf you subtract 27 from 32 and use 5 as the increment, convert the five host bits to 2**5 addresses first.
-
Run the independent address check
Save as subnet_check.py and run python3 subnet_check.py. The program checks both the original host and a changed host across the next block boundary. It also rejects a proposed gateway in the wrong subnet.
Save and run this example
from ipaddress import ip_interface, ip_address interface = ip_interface("192.0.2.77/27") network = interface.network hosts = list(network.hosts()) assert str(network) == "192.0.2.64/27" assert str(network.broadcast_address) == "192.0.2.95" assert str(hosts[0]) == "192.0.2.65" assert str(hosts[-1]) == "192.0.2.94" assert len(hosts) == 30 assert ip_address("192.0.2.65") in network assert ip_address("192.0.2.97") not in network changed = ip_interface("192.0.2.97/27").network assert str(changed) == "192.0.2.96/27" print("Network 192.0.2.64/27; broadcast 192.0.2.95") print("Usable 192.0.2.65-192.0.2.94; hosts 30") print("Changed host 192.0.2.97 belongs to 192.0.2.96/27")Expected result · ผลที่ควรเห็นThe original usable range is .65 through .94, with 30 hosts. The changed .97 host belongs to the .96/27 network.
If it fails · เมื่อไม่ผ่านIf Python raises a parsing error, check the slash notation and address octets. Do not generalize the subtract-two host rule to /31 or /32 networks; those have distinct semantics.
-
Translate the answer into a configuration check
For a simulator lab, choose host .77/27 and a permitted gateway such as .65 in the same isolated topology. Verify the configured mask and gateway before testing a remote network. A local-subnet calculation does not prove that the gateway interface exists or that routing beyond it works. Repeat the paper calculation with .126/27 before looking at Python.
Command, configuration or input
Record: configured address | mask | gateway | expected local network | observed routeExpected result · ผลที่ควรเห็นYour simulator or worksheet uses a host address and gateway from the same usable range and treats gateway reachability as a separate test.
If it fails · เมื่อไม่ผ่านIf a correctly addressed host cannot reach a local gateway, check interface state, VLAN and link before changing the subnet calculation.
Check the result before marking this passed
The first answer is .64/27 with broadcast .95 and 30 usable hosts. The changed .97 address moves to .96/27. The recorded gateway is inside the usable range and is not the network or broadcast address.
Record the observed result and evidence location in the downloaded worksheet. Mark unresolved or untested conditions explicitly.
Recovery and cleanup
No network is modified by the script. If you use a simulator, save its original topology before edits and restore that file after the address exercise.
Apply to actual work and known limits
Use the same calculation for real assigned addresses, then verify actual VLAN, interface, gateway and route configuration. Documentation-only addresses in this exercise are not destinations to probe on the public internet.
Observed local fixture output · ผลรันตัวอย่าง
Run the independent address check
Network 192.0.2.64/27; broadcast 192.0.2.95 Usable 192.0.2.65-192.0.2.94; hosts 30 Changed host 192.0.2.97 belongs to 192.0.2.96/27
Background, explanations and original notes
Practice task
Set a short practice timer and calculate network, broadcast, and usable range for 192.0.2.77/27; check against .64, .95, and .65-.94.
Expected reasoning
A consistent calculation procedure is more reliable than memorizing isolated answers.
Produce evidence
Keep a dated practice record with your initial answer, the reasoning behind it, the checked result, and the exact point where you hesitated. Create a second example with different values so that the answer cannot come from remembering the first exercise.
Introduce a counterexample
Change one condition in the timed subnetting exercise and predict the result before checking it. Explain which observation would disprove your hypothesis. Restore the baseline, repeat from blank notes and keep both results.
Exam scope
Independent CCNA 200-301 v1.1 exercise, checked against Cisco resources on 2 November 2026. It is not a recalled exam question. The collection’s 200 techniques do not represent exam question counts or weights. Check Cisco’s current exam rules and your simulator’s supported syntax.