# rangogm/ccna-labs architecture

> Architecture diagram of the GitHub repository rangogm/ccna-labs, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-25). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/rangogm/ccna-labs
- Repository: https://github.com/rangogm/ccna-labs

## Overview

Rango-Networking-Lab is a collection of CCNA networking exercises and research labs, not an application with a shared runtime. The documented learning workflow is to select a topic, study its lab guide and configuration goals, practice in Packet Tracer or CML (sometimes with Linux/Windows hosts), and verify behavior using the lab’s stated checks. The graph groups the documented capabilities by domain; source excerpts were unavailable, so connections describe only this documented workflow, not implementation-level calls.

Main entry points: [`01-VLAN-BASIC-(PKT)/README.md`](https://github.com/rangogm/ccna-labs/blob/main/01-VLAN-BASIC-(PKT)/README.md) (VLANs and Trunks), [`05-STP-(CML-+-PKT)/README.md`](https://github.com/rangogm/ccna-labs/blob/main/05-STP-(CML-%2B-PKT)/README.md) (STP Protection), [`06-Ethernet-Channel-&-ASIC-Hashing-(CML-+-PKT)/README.md`](https://github.com/rangogm/ccna-labs/blob/main/06-Ethernet-Channel-%26-ASIC-Hashing-(CML-%2B-PKT)/README.md) (EtherChannel), [`24-Port-Security-(Research)/README.md`](https://github.com/rangogm/ccna-labs/blob/main/24-Port-Security-(Research)/README.md) (Port Security)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_switching["Switching"]
  node_vlan["VLANs and Trunks<br/>[README.md]"]
  node_stp["STP Protection<br/>[README.md]"]
  node_etherchannel["EtherChannel<br/>[README.md]"]
  node_portsecurity["Port Security<br/>[README.md]"]
  node_dot1x["802.1X Research<br/>[README.md]"]
  node_defense["Access-Layer Defense<br/>[README.md]"]
end

subgraph group_routing["Routing and Resilience"]
  node_intervlan["Inter-VLAN Routing<br/>[README.md]"]
  node_ipv4routes["IPv4 Routing<br/>[README.md]"]
  node_dynamicroutes["Dynamic Routing<br/>[README.md]"]
  node_ospf["OSPF Areas and Elections<br/>[README.md]"]
  node_ha["HSRP Availability<br/>[README.md]"]
end

subgraph group_ipv6["IPv6"]
  node_ipv6base["IPv6 Connectivity<br/>[README.md]"]
  node_slaac["SLAAC and Hosts<br/>[README.md]"]
  node_ipv6routing["IPv6 Routing<br/>[README.md]"]
  node_ospfv3["OSPFv3<br/>[README.md]"]
  node_dhcpv6["DHCPv6<br/>[README.md]"]
end

subgraph group_services["Services and Security"]
  node_security["ACL and NAT<br/>[README.md]"]
  node_dns["Hybrid DNS<br/>[README.md]"]
  node_monitoring["Monitoring and Time<br/>[README.md]"]
  node_logging["Centralized Logging<br/>[README.md]"]
  node_research["Defense Research Phases"]
end

node_learner(("Learner"))
node_pt["Packet Tracer"]
node_cml["CML and VMs"]

node_learner -->|"selects topic"| node_vlan
node_learner -->|"selects topic"| node_stp
node_learner -->|"selects topic"| node_etherchannel
node_learner -->|"selects topic"| node_portsecurity
node_learner -->|"selects topic"| node_dot1x
node_learner -->|"selects topic"| node_defense
node_learner -->|"selects topic"| node_intervlan
node_learner -->|"selects topic"| node_ipv4routes
node_learner -->|"selects topic"| node_dynamicroutes
node_learner -->|"selects topic"| node_ospf
node_learner -->|"selects topic"| node_ha
node_learner -->|"selects topic"| node_ipv6base
node_learner -->|"selects topic"| node_slaac
node_learner -->|"selects topic"| node_ipv6routing
node_learner -->|"selects topic"| node_ospfv3
node_learner -->|"selects topic"| node_dhcpv6
node_learner -->|"selects topic"| node_security
node_learner -->|"selects topic"| node_dns
node_learner -->|"selects topic"| node_monitoring
node_learner -->|"selects topic"| node_logging
node_learner -->|"studies phases"| node_research
node_vlan -->|"practice in"| node_pt
node_stp -->|"practice in"| node_cml
node_etherchannel -->|"practice in"| node_cml
node_portsecurity -->|"practice in"| node_cml
node_dot1x -->|"validate on"| node_cml
node_defense -->|"designs labs for"| node_cml
node_intervlan -->|"practice in"| node_cml
node_ipv4routes -->|"practice in"| node_pt
node_dynamicroutes -->|"practice in"| node_cml
node_ospf -->|"practice in"| node_cml
node_ha -->|"practice in"| node_cml
node_ipv6base -->|"practice in"| node_pt
node_slaac -->|"analyze with"| node_cml
node_ipv6routing -->|"practice in"| node_cml
node_ospfv3 -->|"practice in"| node_cml
node_dhcpv6 -->|"practice in"| node_cml
node_security -->|"practice in"| node_cml
node_dns -->|"practice in"| node_cml
node_monitoring -->|"practice in"| node_cml
node_logging -->|"practice in"| node_cml
node_research -->|"evaluates in"| node_cml

click node_vlan "https://github.com/rangogm/ccna-labs/blob/main/01-VLAN-BASIC-(PKT)/README.md"
click node_stp "https://github.com/rangogm/ccna-labs/blob/main/05-STP-(CML-%2B-PKT)/README.md"
click node_etherchannel "https://github.com/rangogm/ccna-labs/blob/main/06-Ethernet-Channel-%26-ASIC-Hashing-(CML-%2B-PKT)/README.md"
click node_portsecurity "https://github.com/rangogm/ccna-labs/blob/main/24-Port-Security-(Research)/README.md"
click node_dot1x "https://github.com/rangogm/ccna-labs/blob/main/25-802.1X-Control-Plane-(Research)/README.md"
click node_defense "https://github.com/rangogm/ccna-labs/blob/main/26-Access-Layer-Defense-in-Depth-(Research-Paper)/README.md"
click node_intervlan "https://github.com/rangogm/ccna-labs/blob/main/03-Inter-VLAN-Routing-(CML-%2B-PKT)/README.md"
click node_ipv4routes "https://github.com/rangogm/ccna-labs/blob/main/07-Static-Routing-(CML-%2B-PKT)/README.md"
click node_dynamicroutes "https://github.com/rangogm/ccna-labs/blob/main/08-Dynamic-Routing-RIPv2-(CML-%2B-PKT)/README.md"
click node_ospf "https://github.com/rangogm/ccna-labs/blob/main/10A-OSPF-Single-Area-(CML-%2B-PKT)/README.md"
click node_ha "https://github.com/rangogm/ccna-labs/blob/main/11B-HSRP-Enterprise-Grade-High-Availability-(CML)/README.md"
click node_ipv6base "https://github.com/rangogm/ccna-labs/blob/main/12A-IPv6-Addressing-%26-Basic-Connectivity-(PKT)/README.md"
click node_slaac "https://github.com/rangogm/ccna-labs/blob/main/12C-IPV6-SLAAC-(CML-FOCUSED)/README.md"
click node_ipv6routing "https://github.com/rangogm/ccna-labs/blob/main/13-IPv6-Static-Routing-(CML-%2B-PKT)/README.md"
click node_ospfv3 "https://github.com/rangogm/ccna-labs/blob/main/14-OSPFv3-(CML-%2B-PKT)/README.md"
click node_dhcpv6 "https://github.com/rangogm/ccna-labs/blob/main/15-DHCPv6-Implementation-STATELESS-%26-STATEFUL-(CML-FOCUSED)/README.md"
click node_security "https://github.com/rangogm/ccna-labs/blob/main/20-Extended-ACL-%26-Services-(CML-%2B-PKT)/README.md"
click node_dns "https://github.com/rangogm/ccna-labs/blob/main/17-Hybrid-DNS-Infrastructure-(CML)/README.md"
click node_monitoring "https://github.com/rangogm/ccna-labs/blob/main/23-SNMPv3-(CML)/README.md"
click node_logging "https://github.com/rangogm/ccna-labs/blob/main/21-Enterprise-Syslog-(CML-%2B-PKT)/README.md"
click node_research "https://github.com/rangogm/ccna-labs/blob/main/26-Access-Layer-Defense-in-Depth-(Research-Paper)/docs/05-phase0-baseline.md"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_vlan,node_stp,node_etherchannel,node_portsecurity,node_dot1x,node_defense toneBlue
class node_intervlan,node_ipv4routes,node_dynamicroutes,node_ospf,node_ha toneAmber
class node_ipv6base,node_slaac,node_ipv6routing,node_ospfv3,node_dhcpv6 toneMint
class node_security,node_dns,node_monitoring,node_logging,node_research toneRose
class node_learner,node_pt,node_cml toneIndigo
```

## Components

### Switching

- [VLANs and Trunks](https://github.com/rangogm/ccna-labs/blob/main/01-VLAN-BASIC-(PKT)/README.md): `01-VLAN-BASIC-(PKT)/README.md`
- [STP Protection](https://github.com/rangogm/ccna-labs/blob/main/05-STP-(CML-%2B-PKT)/README.md): `05-STP-(CML-+-PKT)/README.md`
- [EtherChannel](https://github.com/rangogm/ccna-labs/blob/main/06-Ethernet-Channel-%26-ASIC-Hashing-(CML-%2B-PKT)/README.md): `06-Ethernet-Channel-&-ASIC-Hashing-(CML-+-PKT)/README.md`
- [Port Security](https://github.com/rangogm/ccna-labs/blob/main/24-Port-Security-(Research)/README.md): `24-Port-Security-(Research)/README.md`
- [802.1X Research](https://github.com/rangogm/ccna-labs/blob/main/25-802.1X-Control-Plane-(Research)/README.md): `25-802.1X-Control-Plane-(Research)/README.md`
- [Access-Layer Defense](https://github.com/rangogm/ccna-labs/blob/main/26-Access-Layer-Defense-in-Depth-(Research-Paper)/README.md): `26-Access-Layer-Defense-in-Depth-(Research-Paper)/README.md`

### Routing and Resilience

- [Inter-VLAN Routing](https://github.com/rangogm/ccna-labs/blob/main/03-Inter-VLAN-Routing-(CML-%2B-PKT)/README.md): `03-Inter-VLAN-Routing-(CML-+-PKT)/README.md`
- [IPv4 Routing](https://github.com/rangogm/ccna-labs/blob/main/07-Static-Routing-(CML-%2B-PKT)/README.md): `07-Static-Routing-(CML-+-PKT)/README.md`
- [Dynamic Routing](https://github.com/rangogm/ccna-labs/blob/main/08-Dynamic-Routing-RIPv2-(CML-%2B-PKT)/README.md): `08-Dynamic-Routing-RIPv2-(CML-+-PKT)/README.md`
- [OSPF Areas and Elections](https://github.com/rangogm/ccna-labs/blob/main/10A-OSPF-Single-Area-(CML-%2B-PKT)/README.md): `10A-OSPF-Single-Area-(CML-+-PKT)/README.md`
- [HSRP Availability](https://github.com/rangogm/ccna-labs/blob/main/11B-HSRP-Enterprise-Grade-High-Availability-(CML)/README.md): `11B-HSRP-Enterprise-Grade-High-Availability-(CML)/README.md`

### IPv6

- [IPv6 Connectivity](https://github.com/rangogm/ccna-labs/blob/main/12A-IPv6-Addressing-%26-Basic-Connectivity-(PKT)/README.md): `12A-IPv6-Addressing-&-Basic-Connectivity-(PKT)/README.md`
- [SLAAC and Hosts](https://github.com/rangogm/ccna-labs/blob/main/12C-IPV6-SLAAC-(CML-FOCUSED)/README.md): `12C-IPV6-SLAAC-(CML-FOCUSED)/README.md`
- [IPv6 Routing](https://github.com/rangogm/ccna-labs/blob/main/13-IPv6-Static-Routing-(CML-%2B-PKT)/README.md): `13-IPv6-Static-Routing-(CML-+-PKT)/README.md`
- [OSPFv3](https://github.com/rangogm/ccna-labs/blob/main/14-OSPFv3-(CML-%2B-PKT)/README.md): `14-OSPFv3-(CML-+-PKT)/README.md`
- [DHCPv6](https://github.com/rangogm/ccna-labs/blob/main/15-DHCPv6-Implementation-STATELESS-%26-STATEFUL-(CML-FOCUSED)/README.md): `15-DHCPv6-Implementation-STATELESS-&-STATEFUL-(CML-FOCUSED)/README.md`

### Services and Security

- [ACL and NAT](https://github.com/rangogm/ccna-labs/blob/main/20-Extended-ACL-%26-Services-(CML-%2B-PKT)/README.md): `20-Extended-ACL-&-Services-(CML-+-PKT)/README.md`
- [Hybrid DNS](https://github.com/rangogm/ccna-labs/blob/main/17-Hybrid-DNS-Infrastructure-(CML)/README.md): `17-Hybrid-DNS-Infrastructure-(CML)/README.md`
- [Monitoring and Time](https://github.com/rangogm/ccna-labs/blob/main/23-SNMPv3-(CML)/README.md): `23-SNMPv3-(CML)/README.md`
- [Centralized Logging](https://github.com/rangogm/ccna-labs/blob/main/21-Enterprise-Syslog-(CML-%2B-PKT)/README.md): `21-Enterprise-Syslog-(CML-+-PKT)/README.md`
- [Defense Research Phases](https://github.com/rangogm/ccna-labs/blob/main/26-Access-Layer-Defense-in-Depth-(Research-Paper)/docs/05-phase0-baseline.md): `26-Access-Layer-Defense-in-Depth-(Research-Paper)/docs/05-phase0-baseline.md`

### Other components

- **Learner**
- **Packet Tracer**
- **CML and VMs**

## Connections

- Learner → VLANs and Trunks: selects topic
- Learner → STP Protection: selects topic
- Learner → EtherChannel: selects topic
- Learner → Port Security: selects topic
- Learner → 802.1X Research: selects topic
- Learner → Access-Layer Defense: selects topic
- Learner → Inter-VLAN Routing: selects topic
- Learner → IPv4 Routing: selects topic
- Learner → Dynamic Routing: selects topic
- Learner → OSPF Areas and Elections: selects topic
- Learner → HSRP Availability: selects topic
- Learner → IPv6 Connectivity: selects topic
- Learner → SLAAC and Hosts: selects topic
- Learner → IPv6 Routing: selects topic
- Learner → OSPFv3: selects topic
- Learner → DHCPv6: selects topic
- Learner → ACL and NAT: selects topic
- Learner → Hybrid DNS: selects topic
- Learner → Monitoring and Time: selects topic
- Learner → Centralized Logging: selects topic
- Learner → Defense Research Phases: studies phases
- VLANs and Trunks → Packet Tracer: practice in
- STP Protection → CML and VMs: practice in
- EtherChannel → CML and VMs: practice in
- Port Security → CML and VMs: practice in
- 802.1X Research → CML and VMs: validate on
- Access-Layer Defense → CML and VMs: designs labs for
- Inter-VLAN Routing → CML and VMs: practice in
- IPv4 Routing → Packet Tracer: practice in
- Dynamic Routing → CML and VMs: practice in
- OSPF Areas and Elections → CML and VMs: practice in
- HSRP Availability → CML and VMs: practice in
- IPv6 Connectivity → Packet Tracer: practice in
- SLAAC and Hosts → CML and VMs: analyze with
- IPv6 Routing → CML and VMs: practice in
- OSPFv3 → CML and VMs: practice in
- DHCPv6 → CML and VMs: practice in
- ACL and NAT → CML and VMs: practice in
- Hybrid DNS → CML and VMs: practice in
- Monitoring and Time → CML and VMs: practice in
- Centralized Logging → CML and VMs: practice in
- Defense Research Phases → CML and VMs: evaluates in
