Merry Christmas & Happy 2027! Less downtime. More good times. Celebrating 13 years of sorlavit.com
Skip to content
Sorlavit KimIT Support, Network & Infrastructure Services Let’s talk

ปุ่มแปลไทยจะเปิดบทความผ่าน Google Translate เพื่อแปลอัตโนมัติ โดยคงโค้ดและคำสั่งไว้ตามต้นฉบับ

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 · เริ่มภาคปฏิบัติ ↓

Compiled for Sorlavit Kim · Published · Updated · 3 min read

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.

Evidence to record in your worksheet
  • 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
  1. 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: 32
    Expected 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.

  2. 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.

  3. 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 route
    Expected 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.

The included self-contained Python fixture was executed successfully in this Linux environment. External products and production infrastructure were not exercised.

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.

Source & further reading

Python ipaddress

Independently written summary reviewed on 2026-11-04. The example illustrates a possible application; it is not a client case study.

Share this article

Back to all articles