{"id":51153132,"url":"https://github.com/kill-ux/deep-in-net","last_synced_at":"2026-06-26T08:01:50.747Z","repository":{"id":352215803,"uuid":"1203804363","full_name":"kill-ux/deep-in-net","owner":"kill-ux","description":"Networking fundamentals project using Cisco Packet Tracer — covers devices,  (DHCP, DNS, HTTP/S, FTP), OSI model layers, routing, and multi-subnet architectures across 8 progressive exercises.","archived":false,"fork":false,"pushed_at":"2026-06-25T09:32:18.000Z","size":760,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-06-25T11:05:10.893Z","etag":null,"topics":["cisco","cisco-packet-tracer","dhcp","dns","ftp","http","https","layers","osi","protocols","subnet"],"latest_commit_sha":null,"homepage":"https://github.com/kill-ux/deep-in-net","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kill-ux.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-04-07T11:55:09.000Z","updated_at":"2026-06-25T09:32:22.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/kill-ux/deep-in-net","commit_stats":null,"previous_names":["kill-ux/deep-in-net"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/kill-ux/deep-in-net","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kill-ux%2Fdeep-in-net","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kill-ux%2Fdeep-in-net/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kill-ux%2Fdeep-in-net/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kill-ux%2Fdeep-in-net/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kill-ux","download_url":"https://codeload.github.com/kill-ux/deep-in-net/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kill-ux%2Fdeep-in-net/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34808043,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-26T02:00:06.560Z","response_time":106,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cisco","cisco-packet-tracer","dhcp","dns","ftp","http","https","layers","osi","protocols","subnet"],"created_at":"2026-06-26T08:01:47.760Z","updated_at":"2026-06-26T08:01:50.735Z","avatar_url":"https://github.com/kill-ux.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# deep-in-net 🌐\n\nA hands-on networking project built with **Cisco Packet Tracer**, covering\nfoundational concepts in network design, device configuration, protocol\nbehavior, and the OSI model — from simple peer-to-peer connections to\nmulti-subnet routed architectures.\n\n![image](https://learn.zone01oujda.ma/api/content/root/01-edu_module/content/deep-in-net/pictures/serverRoomMeme.jpg)\n\n---\n\n## Table of Contents\n\n1. [OSI Model](#osi-model)\n2. [Cables](#cables)\n3. [Devices](#devices)\n4. [IP Addressing \u0026 Subnetting](#ip-addressing--subnetting)\n5. [Protocols](#protocols)\n6. [Routing](#routing)\n7. [Exercises](#exercises)\n8. [Bonus](#bonus)\n9. [File Structure](#file-structure)\n\n---\n\n## OSI Model\n\nThe OSI model describes the 7 layers of network communication.\nEvery protocol and device maps to a specific layer.\n\n\u003cimg src=\"https://datageneral.co/wp-content/uploads/2023/12/Capas-modelo-OSI.png\" width=\"40%\"\u003e\n\n```\nLayer 7 — Application   →  HTTP, HTTPS, FTP, DNS, DHCP\nLayer 6 — Presentation  →  TLS/SSL encryption\nLayer 5 — Session       →  session management\nLayer 4 — Transport     →  TCP, UDP (ports)\nLayer 3 — Network       →  IP, ICMP, ARP, Router\nLayer 2 — Data Link     →  MAC addresses, Switch, Frames\nLayer 1 — Physical      →  Cables, Hub, Bits\n```\n\n| Device | OSI Layer | Works with    |\n|--------|-----------|---------------|\n| Hub    | Layer 1   | Bits          |\n| Switch | Layer 2   | MAC addresses |\n| Router | Layer 3   | IP addresses  |\n\n---\n\n## Cables\n\n### RJ-45 — the 4 pins that matter\n\n```\nPin 1 — TX+   Pin 2 — TX−   (Transmit)\nPin 3 — RX+   Pin 6 — RX−   (Receive)\n```\n\nTX on one side must connect to RX on the other.\n\n### Port types\n\n| Type  | Device               | Transmits on | Receives on |\n| ----- | -------------------- | ------------ | ----------- |\n| MDI   | PC, Laptop  , Router | 1 \u0026 2        | 3 \u0026 6       |\n| MDI-X | Switch, Hub          | 3 \u0026 6        | 1 \u0026 2       |\n\n### The rule\n\n```\nMDI  ←→ MDI-X  →  Straight-through  (opposite types, swap in device)\nMDI  ←→ MDI    →  Crossover         (same type, cable does the swap)\nMDI-X ←→ MDI-X →  Crossover         (same type, cable does the swap)\n```\n\n### Straight-through\n\n```\nPC (MDI)                   Switch (MDI-X)\nTX+ pin1 ────────────────── pin1 RX+\nTX− pin2 ────────────────── pin2 RX−\nRX+ pin3 ────────────────── pin3 TX+\nRX− pin6 ────────────────── pin6 TX−\n```\n\n### Crossover pinout\n\n```\nPC A (MDI)                 PC B (MDI)\nTX+ pin1 ──────╮─────────── pin3 RX+\nTX− pin2 ────╮─╰─────────── pin6 RX−\nRX+ pin3 ────╰───────────── pin1 TX+\nRX− pin6 ──────────────────  pin2 TX−\n```\n\n### Reference\n\n| Connection      | Cable                  |\n| --------------- | ---------------------- |\n| PC → Switch     | Straight-through       |\n| PC → Router     | Crossover              |\n| PC → PC         | Crossover              |\n| Switch → Switch | Crossover              |\n| Switch → Router | Straight-through       |\n| Modern devices  | Either (Auto-MDI/MDIX) |\n\n---\n\n## Devices\n\n### Hub — Layer 1\n\nDumb repeater — any signal received is copied to ALL other ports.\n\n```\nPC-A sends to PC-C → hub floods to PC-B, PC-C, PC-D\nPC-B and PC-D must discard it → waste + collisions\n```\n\n- Half-duplex: send OR receive, never both\n- One shared collision domain for all devices\n- Uses CSMA/CD to handle collisions\n\n### Switch — Layer 2\n\nLearns MAC addresses and forwards frames only to the correct port.\n\n```\nPC-A sends to PC-C → switch sends ONLY to PC-C\nPC-B and PC-D hear nothing → efficient + private\n```\n\n- Full-duplex: send AND receive simultaneously\n- Each port is its own collision domain\n- Builds MAC address table from source MACs of incoming frames\n\n### Router — Layer 3\n\nConnects different networks and forwards packets based on destination IP.\n\n```\nSwitch  →  connects devices INSIDE one network\nRouter  →  connects DIFFERENT networks together\n```\n\nPacket forwarding:\n```\n1. Packet arrives with destination IP\n2. Router checks routing table (longest prefix match)\n3. Decrements TTL by 1\n4. Rewrites MAC address (src=router, dst=next hop)\n5. Forwards out correct interface\n```\n\nIP address never changes hop to hop. MAC address changes at every hop.\n\n---\n\n## IP Addressing \u0026 Subnetting\n\n### Subnet formula\n\n```\nBlock size  =  2^(32 - prefix)\nUsable IPs  =  block size - 2\nNetwork     =  floor(IP ÷ block size) × block size\nBroadcast   =  network + block size - 1\n```\n\n### Example — 111.111.111.83/29\n\n```\nStep 1: 32 - 29 = 3 host bits → 2³ = 8 (block size)\nStep 2: 83 ÷ 8 = 10.375\nStep 3: drop decimal → 10\nStep 4: 10 × 8 = 80 ← network address\nStep 5: 80 + 8 - 1 = 87 ← broadcast\n\n111.111.111.80 → network  (reserved)\n111.111.111.81 → host ✓\n111.111.111.82 → host ✓\n111.111.111.83 → host ✓  ← your IP\n111.111.111.84 → host ✓\n111.111.111.85 → host ✓\n111.111.111.86 → host ✓\n111.111.111.87 → broadcast (reserved)\n```\n\n### Common subnet reference\n\n```\nPrefix  Mask                 Block   Usable\n/24     255.255.255.0          256      254\n/26     255.255.255.192         64       62\n/27     255.255.255.224         32       30\n/28     255.255.255.240         16       14\n/29     255.255.255.248          8        6\n/30     255.255.255.252          4        2\n/32     255.255.255.255          1        1\n```\n\n---\n\n## Protocols\n\n### Protocol \u0026 Port Reference\n\n| Protocol | Port  | Transport | Layer | Purpose                    |\n|----------|-------|-----------|-------|----------------------------|\n| DHCP     | 67/68 | UDP       | L7    | Automatic IP assignment    |\n| DNS      | 53    | UDP/TCP   | L7    | Name → IP resolution       |\n| HTTP     | 80    | TCP       | L7    | Web (unencrypted)          |\n| HTTPS    | 443   | TCP       | L7    | Web (TLS encrypted)        |\n| FTP      | 20/21 | TCP       | L7    | File transfer              |\n| RIP      | 520   | UDP       | L7    | Dynamic routing            |\n| ARP      | —     | —         | L2/3  | IP → MAC resolution        |\n| ICMP     | —     | IP proto  | L3    | Ping, traceroute, errors   |\n| OSPF     | —     | IP 89     | L3    | Dynamic routing enterprise |\n\n### TCP vs UDP\n\n```\nTCP  →  reliable, ordered, connection-oriented\n         confirms every packet → HTTP, HTTPS, FTP\n\nUDP  →  fast, no guarantee, connectionless\n         fire and forget → DHCP, DNS, RIP\n```\n\n### ARP\n\nConverts IP → MAC before any frame can be sent.\n\n```\nPC checks ARP cache → not found\nPC broadcasts: \"Who has 192.168.1.20?\"  (FF:FF:FF:FF:FF:FF)\nTarget replies: \"I do — AA:BB:CC:DD:EE:FF\"  (unicast)\nPC stores in ARP cache → sends frame\n```\n\n```\nSame subnet  →  ARP for destination IP\nOther subnet →  ARP for default gateway IP\n```\n\n### ICMP\n\nUsed for testing and error reporting. Not for data transfer.\n\n```\nType 0   Echo Reply             →  ping response\nType 8   Echo Request           →  ping request\nType 3   Destination Unreachable →  cannot reach host\nType 11  Time Exceeded          →  TTL = 0 (traceroute)\n```\n\n### DHCP\n\nDORA handshake:\n```\nD — DISCOVER    broadcast  \"I need an IP\"          src=0.0.0.0\nO — OFFER       reply      \"I offer 192.168.1.10\"\nR — REQUEST     broadcast  \"I accept 192.168.1.10\"\nA — ACKNOWLEDGE reply      \"It's yours\"\n```\n\nAssigns: IP, subnet mask, gateway, DNS server, lease time.\n\n### DNS\n\nRecord types:\n```\nA      domain → IPv4     main address record\nCNAME  alias  → name     www → domain (alias)\nMX     domain → mail     email routing\nPTR    IP     → domain   reverse lookup\nTXT    domain → text     SPF, DKIM, verification\n```\n\nIn Exercise 3:\n```\ndeep-in-net.local → 192.168.1.99     A record\ndeep-in-net.com   → deep-in-net.local CNAME record\n```\n\n### FTP\n\n```\nPort 21 → control (commands)\nPort 20 → data    (file transfer)\n\nPermissions: R read  W write  D delete  N rename  L list\nRWDNL = full access\n```\n\n### HTTP \u0026 HTTPS\n\n```\nHTTP   →  plain text    port 80    insecure\nHTTPS  →  TLS encrypted port 443   secure\n```\n\nTLS handshake:\n```\n1. Client Hello   →  supported versions + ciphers\n2. Server Hello   →  chosen cipher + certificate\n3. Verify cert    →  check CA, domain, expiry\n4. Key exchange   →  encrypted pre-master secret\n5. Session key    →  both sides derive same key independently\n6. Finished       →  tunnel confirmed, data flows\n```\n\n### RIP\n\n```\nType: Distance Vector | Metric: hop count | Max: 15 | Port: UDP 520\n\nrouter rip\n version 2\n network 192.168.1.0\n no auto-summary\n```\n\n### OSPF\n\n```\nType: Link State | Metric: bandwidth cost | Max: unlimited | Port: IP 89\n\nrouter ospf 1\n network 192.168.1.0 0.0.0.255 area 0\n```\n\nNote: OSPF uses wildcard masks — inverse of subnet mask.\n255.255.255.0 → 0.0.0.255 | 255.255.255.252 → 0.0.0.3\n\n---\n\n## Routing\n\n### Static vs Dynamic\n\n```\nStatic   →  admin adds routes manually, simple, no overhead\n             does not adapt if link fails\n\nDynamic  →  routers share routes automatically (RIP or OSPF)\n             adapts when topology changes\n```\n\n### Default Gateway\n\nIP of the router interface on the device's local subnet.\nUsed to forward packets destined outside the local network.\n\n### Serial — DCE and DTE\n\n```\nDCE  →  provides clock signal (ISP side in real life)\nDTE  →  receives clock (customer router)\n```\n\nIn Packet Tracer: clock icon = DCE → must configure clock rate.\n\n```\nclock rate 64000  =  64 Kbps\nno shutdown       =  turn interface ON (all interfaces OFF by default)\n```\n\n---\n\n## Exercises\n\n### Exercise 1 — Direct PC Communication\n\n**Topology:** 3 pairs of PCs connected directly.\n\n**Cable:** Crossover — PC to PC = MDI to MDI = same type → cable must swap TX↔RX.\n\n**IP addresses from topology:**\n\n```\nPair 1 — /24 subnet:\n  PC1: 192.168.1.4/24   mask 255.255.255.0\n  PC0: 192.168.1.3/24   mask 255.255.255.0\n\nPair 2 — /29 subnet (block of 8):\n  PC3: 192.168.13.83/29  mask 255.255.255.248\n  PC2: 192.168.13.81/29  mask 255.255.255.248\n  Block check: 83 ÷ 8 = 10 → 10×8=80 (network), 87 (broadcast)\n  Both .81 and .83 are in range 80–87 ✓\n\nPair 3 — /29 subnet:\n  PC5: 129.168.13.249/29  mask 255.255.255.248\n  PC4: 192.168.13.254/29  mask 255.255.255.248\n```\n\n**Steps:**\n```\n1. Place two PCs\n2. Connect with crossover cable\n3. Click PC → Desktop → IP Configuration → Static\n4. Enter IP and mask (no gateway needed — direct connection)\n5. Repeat for each pair\n```\n\n**Verify:**\n```\nPC0\u003e ping 192.168.1.4    → reply ✓\nPC2\u003e ping 192.168.13.83  → reply ✓\n```\n\n---\n\n### Exercise 2 — Switch vs Hub\n\n**Topology:** 5 PCs on 2960-24TT switch | 5 PCs on hub.\n\n**IP addresses:**\n```\nSwitch group — /29 subnet (block 8):\n  S-PC1 to S-PC5: 193.168.1.1/29 to 193.168.1.5/29\n  mask: 255.255.255.248\n\nHub group — /27 subnet (block 32):\n  H-PC1 to H-PC5: 193.168.1.193/27 to 193.168.1.197/27\n  mask: 255.255.255.224\n```\n\n**Steps:**\n```\n1. Place 2960-24TT switch and a hub separately\n2. Connect each PC with straight-through cable (PC=MDI → Switch/Hub=MDI-X)\n3. Assign static IPs to each PC (same subnet per group)\n4. No gateway needed — all same subnet\n```\n\n**Behavior difference:**\n```\nSwitch → unicast to correct port only\nHub    → floods to ALL ports, others discard\n```\n\n**Verify:**\n```\nS-PC1\u003e ping 193.168.1.5    → reply ✓\nH-PC1\u003e ping 193.168.1.197  → reply ✓\n```\n\n---\n\n### Exercise 3 — Network Services\n\n**Topology:** 4 servers + 6 PCs on one 2960-24TT switch.\n\n**Server static IPs:**\n\n| Server      | IP            | Mask          | Service              |\n|-------------|---------------|---------------|----------------------|\n| HTTP SERVER | 192.168.1.99  | 255.255.255.0 | HTTPS only           |\n| FTP SERVER  | 192.168.1.100 | 255.255.255.0 | File transfer        |\n| DNS SERVER  | 192.168.1.101 | 255.255.255.0 | Name resolution      |\n| DHCP SERVER | 192.168.1.102 | 255.255.255.0 | IP assignment        |\n\n**PCs:** receive IPs automatically from DHCP (range starts at 192.168.1.7/24).\n\n**Steps:**\n\n1 — Set static IPs on all 4 servers:\n```\nClick server → Desktop → IP Configuration → Static\nIP: as table above | Mask: 255.255.255.0 | DNS: 192.168.1.101\n```\n\n2 — Configure DHCP server:\n```\nClick DHCP server → Services → DHCP → ON\n  Default gateway: 192.168.1.1\n  DNS server:      192.168.1.101\n  Start IP:        192.168.1.7\n  Subnet mask:     255.255.255.0\n```\n\n3 — Configure HTTPS server:\n```\nClick HTTP server → Services → HTTP → OFF\nClick HTTP server → Services → HTTPS → ON\nEdit index.html → add hello message\n```\n\n4 — Configure DNS server:\n```\nClick DNS server → Services → DNS → ON\nAdd:  deep-in-net.local  A      192.168.1.99\nAdd:  deep-in-net.com    CNAME  deep-in-net.local\n```\n\n5 — Configure FTP server:\n```\nClick FTP server → Services → FTP → ON\nAdd user: deepinnet / deepinnet / RWDNL\n```\n\n6 — Set PCs to DHCP:\n```\nClick PC → Desktop → IP Configuration → DHCP\nPC receives IP automatically\n```\n\n**Verify:**\n```\nPC\u003e ping 192.168.1.99                    → server reachable ✓\nPC\u003e browser → https://deep-in-net.com    → hello page ✓\nPC\u003e ftp 192.168.1.100 → login deepinnet  → access ✓\n```\n\n---\n\n### Exercise 4 — Router Basics\n\n**Topology:** PC0 ── Router1 (1841) ── PC1\n\n**IP addresses:**\n```\nPC0:     192.168.1.2/30   gateway 192.168.1.1\nPC1:     192.168.2.2/30   gateway 192.168.2.1\nRouter1: Fa0/0 = 192.168.1.1/30  (toward PC0)\n         Fa0/1 = 192.168.2.1/30  (toward PC1)\n```\n\n**Steps:**\n```\nRouter1\u003e enable\nRouter1# configure terminal\n\ninterface FastEthernet0/0\n ip address 192.168.1.1 255.255.255.252\n no shutdown\n\ninterface FastEthernet0/1\n ip address 192.168.2.1 255.255.255.252\n no shutdown\n\nend\nwrite memory\n```\n\nSet on PCs:\n```\nPC0: IP 192.168.1.2  mask 255.255.255.252  gateway 192.168.1.1\nPC1: IP 192.168.2.2  mask 255.255.255.252  gateway 192.168.2.1\n```\n\n**Verify:**\n```\nPC0\u003e ping 192.168.2.2   → reply ✓\nPC1\u003e ping 192.168.1.2   → reply ✓\n```\n\n---\n\n### Exercise 5 — Two Subnets via Router\n\n**Topology:** Switch0 ── Router0 (2911) ── Switch1\n\n**IP addresses:**\n```\nSubnet 1 — /29 (block 8):\n  PC0–PC4: 192.168.1.2 to 192.168.1.6/29\n  Router0 Gi0/0: 192.168.1.1/29  mask 255.255.255.248\n\nSubnet 2 — /27 (block 32):\n  PC5–PC9: 192.168.1.194 to 192.168.1.198/27\n  Router0 Gi0/1: 192.168.1.193/27  mask 255.255.255.224\n```\n\n**Steps:**\n```\nRouter0\u003e enable\nRouter0# configure terminal\n\ninterface GigabitEthernet0/0\n ip address 192.168.1.1 255.255.255.248\n no shutdown\n\ninterface GigabitEthernet0/1\n ip address 192.168.1.193 255.255.255.224\n no shutdown\n\nend\nwrite memory\n```\n\nSet on PCs:\n```\nSubnet1 PCs: mask 255.255.255.248  gateway 192.168.1.1\nSubnet2 PCs: mask 255.255.255.224  gateway 192.168.1.193\n```\n\n**Verify:**\n```\nPC0\u003e ping 192.168.1.194   → cross-subnet ✓\nPC5\u003e ping 192.168.1.2     → cross-subnet ✓\n```\n\n---\n\n### Exercise 6 — Static Routing\n\n**Topology:** PC0 ── Router0 ──serial── Router1 ── PC2\n\n**IP addresses:**\n```\nPC0:     192.168.1.2/24     gateway 192.168.1.1\nPC2:     192.168.2.2/24     gateway 192.168.2.1\n\nRouter0: Fa0/0   = 192.168.1.1/24   (toward PC0)\n         Se0/0/0 = 10.10.0.1/30     (toward Router1) DCE\n\nRouter1: Se0/0/0 = 10.10.0.2/30    (toward Router0) DTE\n         Fa0/0   = 192.168.2.1/24   (toward PC2)\n```\n\n**Steps:**\n\nRouter0 (DCE — clock icon):\n```\nenable\nconfigure terminal\n\ninterface FastEthernet0/0\n ip address 192.168.1.1 255.255.255.0\n no shutdown\n\ninterface Serial0/0/0\n ip address 10.10.0.1 255.255.255.252\n clock rate 64000\n no shutdown\n\nip route 192.168.2.0 255.255.255.0 10.10.0.2\nend\nwrite memory\n```\n\nRouter1 (DTE):\n```\nenable\nconfigure terminal\n\ninterface FastEthernet0/0\n ip address 192.168.2.1 255.255.255.0\n no shutdown\n\ninterface Serial0/0/0\n ip address 10.10.0.2 255.255.255.252\n no shutdown\n\nip route 192.168.1.0 255.255.255.0 10.10.0.1\nend\nwrite memory\n```\n\n**Verify:**\n```\nPC0\u003e ping 192.168.2.2       → reply ✓\nPC2\u003e ping 192.168.1.2       → reply ✓\nRouter0# show ip route      → S 192.168.2.0 via 10.10.0.2 ✓\n```\n\n---\n\n### Exercise 7 — Multi-device Routing\n\n**Topology:** PC0–PC4 on Switch0 ── Router0 ──serial── Router2 ── Switch1 ── Laptop0, PC5–PC7\n\n**IP addresses:**\n```\nSubnet 1: 192.168.1.0/24\n  PC0–PC4: 192.168.1.2–192.168.1.6/24\n  Router0 Fa0/0: 192.168.1.1/24\n\nSerial: 10.10.0.0/30\n  Router0 Se0/0/0: 10.10.0.1/30  (DCE)\n  Router2 Se0/0/0: 10.10.0.2/30  (DTE)\n\nSubnet 2: 192.168.2.0/24\n  Laptop0, PC5–PC7: 192.168.2.2–192.168.2.5/24\n  Router2 Fa0/0: 192.168.2.1/24\n```\n\n**Steps:**\n\nRouter0 (DCE):\n```\ninterface FastEthernet0/0\n ip address 192.168.1.1 255.255.255.0\n no shutdown\ninterface Serial0/0/0\n ip address 10.10.0.1 255.255.255.252\n clock rate 64000\n no shutdown\nip route 192.168.2.0 255.255.255.0 10.10.0.2\n```\n\nRouter2 (DTE):\n```\ninterface Serial0/0/0\n ip address 10.10.0.2 255.255.255.252\n no shutdown\ninterface FastEthernet0/0\n ip address 192.168.2.1 255.255.255.0\n no shutdown\nip route 192.168.1.0 255.255.255.0 10.10.0.1\n```\n\n**Verify:**\n```\nPC0\u003e ping 192.168.2.2      → reply ✓\nLaptop0\u003e ping 192.168.1.2  → reply ✓\n```\n\n---\n\n### Exercise 8 — Three-Subnet Full Mesh\n\n**Topology:** 3 routers, 3 switches, 3 subnets, 2 DHCP servers.\n\n**IP addresses:**\n```\nSubnet 1: 192.168.1.0/26  (block 64, usable .1–.62)\n  PC0–PC4 + DHCP1 on Switch0\n  Router0 Gi0/0: 192.168.1.1/26  mask 255.255.255.192\n\nSerial link 1 (Router0 ↔ Router2): 10.10.0.0/30\n  Router0 Se0/0/0: 10.10.0.1/30  (DCE)\n  Router2 Se0/0/0: 10.10.0.2/30\n\nSerial link 2 (Router2 ↔ Router1): 10.10.1.0/30\n  Router2 Se0/0/1: 10.10.1.2/30\n  Router1 Se0/0/0: 10.10.1.1/30\n\nSubnet 2: 192.168.2.0/24\n  DHCP2, Laptop0, PC5–PC7 on Switch3\n  Router1 Fa0/0: 192.168.2.1/24  mask 255.255.255.0\n\nSubnet 3: 192.168.3.160/28  (block 16, usable .161–.174)\n  PC8, PC9, PC710, DHCP2(1) on Switch2\n  Router2 Fa0/0: 192.168.3.161/28  mask 255.255.255.240\n```\n\n**Steps:**\n\nRouter0:\n```\ninterface GigabitEthernet0/0\n ip address 192.168.1.1 255.255.255.192\n no shutdown\ninterface Serial0/0/0\n ip address 10.10.0.1 255.255.255.252\n clock rate 64000\n no shutdown\nip route 192.168.2.0 255.255.255.0 10.10.0.2\nip route 192.168.3.160 255.255.255.240 10.10.0.2\n```\n\nRouter2:\n```\ninterface Serial0/0/0\n ip address 10.10.0.2 255.255.255.252\n no shutdown\ninterface Serial0/0/1\n ip address 10.10.1.2 255.255.255.252\n no shutdown\ninterface FastEthernet0/0\n ip address 192.168.3.161 255.255.255.240\n no shutdown\nip route 192.168.1.0 255.255.255.192 10.10.0.1\nip route 192.168.2.0 255.255.255.0 10.10.1.1\n```\n\nRouter1:\n```\ninterface Serial0/0/0\n ip address 10.10.1.1 255.255.255.252\n no shutdown\ninterface FastEthernet0/0\n ip address 192.168.2.1 255.255.255.0\n no shutdown\nip route 192.168.1.0 255.255.255.192 10.10.1.2\nip route 192.168.3.160 255.255.255.240 10.10.1.2\n```\n\n**Verify:**\n```\nPC0\u003e ping 192.168.2.2     → subnet1 → subnet2 ✓\nPC0\u003e ping 192.168.3.162   → subnet1 → subnet3 ✓\nPC5\u003e ping 192.168.3.162   → subnet2 → subnet3 ✓\nRouter0# show ip route    → all 3 subnets present ✓\n```\n---\n\n## File Structure\n\n```\ndeep-in-net/\n├── ex01.pkt    direct PC pairs (crossover)\n├── ex02.pkt    switch vs hub\n├── ex03.pkt    DHCP, DNS, HTTPS, FTP servers\n├── ex04.pkt    basic router\n├── ex05.pkt    two subnets via router\n├── ex06.pkt    static routing two routers\n├── ex07.pkt    multi-device routing\n├── ex08.pkt    three-subnet full mesh\n└── README.md   this file\n```\n\n---\n\n\u003e \"Networking plays a critical role in various IT specialties,\n\u003e and is particularly essential for cloud and DevOps engineering.\n\u003e Be curious and never stop searching!\"\n\n\n\n  \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkill-ux%2Fdeep-in-net","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkill-ux%2Fdeep-in-net","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkill-ux%2Fdeep-in-net/lists"}