Skip to content

Instantly share code, notes, and snippets.

@aylmerbritto
Last active April 7, 2025 05:53
Show Gist options
  • Save aylmerbritto/5ddd5b27732ae4e547844bb9281dc094 to your computer and use it in GitHub Desktop.
Save aylmerbritto/5ddd5b27732ae4e547844bb9281dc094 to your computer and use it in GitHub Desktop.
KK's Networking Prep

What is Networking ?

When you say networking, it broadly refers to the entire ecosystem that allows computers, devices, and systems to communicate and share resources—locally or across the internet. It includes:

  1. Hardware – routers, switches, firewalls, cables, wireless access points, and network interface cards.
  2. Protocols – rules and standards like TCP/IP, HTTP, FTP, etc., that define how data moves.
  3. IP Addressing & Subnetting – assigning addresses to devices and organizing networks into smaller segments.
  4. Routing & Switching – how data finds its way between networks (routing) or within the same network (switching).
  5. Security – firewalls, VPNs, encryption, and access control to protect data and devices.
  6. Topology – the structure/layout of a network (star, mesh, bus, etc.).
  7. Services – DNS, DHCP, NAT, and other background processes that make networks usable.
  8. Wireless & Wired Communication – different mediums through which data is transmitted.

Hardwares

  1. Bhaiya explained very well. YouTube Video
  2. Cisco Business Model

Protocols

Imagine you and your friend are playing walkie-talkies. To understand each other, you both agree to say "Over" when you're done talking. That little rule is like a protocol—a way to make sure messages don’t get mixed up. In computer networking, protocols are like the rules of the game that help computers talk clearly to each other. Without them, it would be like everyone shouting in different languages at once—super confusing! So, protocols make sure messages go to the right place, in the right order, and everyone understands what’s being said.


Okay! So remember the walkie-talkie game? Now imagine TCP/IP as two best friends helping you send a letter to your friend far away. IP is like the post office—it figures out where to send the letter and how to get it there. TCP is like your careful mailman—it makes sure the letter arrives safely, in the right order, and knocks again if a page is missing. Together, TCP/IP are the smart helpers that make sure your message gets to the right person, complete and in the right order, even if it has to travel a long way!


Alright! So if TCP/IP are the helpers that deliver your letter safely, HTTP is like the type of letter you’re sending—specifically for asking and getting web pages. Imagine you’re writing a note that says, “Hey website, can I see your homepage?” and sending it through your helpers (TCP/IP). The website reads your note and sends back the page you asked for. That’s HTTP—a special way for your browser (like Chrome) to talk to websites and say, “Show me this!” It’s how the web works behind the scenes when you click on stuff online.

🌐 Common Networking Protocols and Appropriate Use Cases

  • HTTP / HTTPS"Can I see that webpage?"

    • HTTP is used when your browser talks to websites.
    • HTTPS is the same, but encrypted (like a locked letter).
  • SMTP / IMAP / POP3"I want to send or check my email."

    • SMTP: Sends emails (like dropping them at a post office).
    • IMAP: Reads emails while keeping them on the server (like checking your mail without taking it home).
    • POP3: Downloads and removes emails from the server (like taking your letters home).
  • FTP / SFTP"I need to send or receive big files."

    • FTP: Transfers files, but not secure.
    • SFTP: Same as FTP but with encryption (secure file transfer).
  • SSH"Let me control that computer from far away."

    • Securely logs you into another machine (like a command-line remote control).
  • TCP vs UDP"How careful should we be with the message?"

    • TCP: Reliable, checks every message (used for web browsing, email, etc.).
    • UDP: Fast, doesn't check (used for video calls, gaming, live streams).

Routing and Switches

  1. Your Fav Destination
  2. AI in Networking - Survey Paper
  3. Just Read Intro and Conclusion
  4. Sample Paper
  5. Just the Abstract

🚀 Network Automation Project Examples (Cisco-Focused)

These are real-world network automation projects suitable for enterprise environments and Cisco infrastructure.


🛡️ Project 1: Auto-Block Suspicious Traffic

Goal:
Automatically detect and block malicious or suspicious traffic on the network in real time.

How It Works:

  • Network monitoring tools (e.g., Cisco Stealthwatch, NetFlow analyzers) detect anomalies like port scans or brute-force attacks.
  • An alert triggers an automation script or workflow.
  • The automation tool (e.g., Python or Ansible) performs:
    • IP reputation check or correlation
    • Dynamic update of ACLs on routers/firewalls via NETCONF, RESTCONF, or Cisco DNA Center APIs
  • Sends a notification (email, Slack, etc.) to the security team.

Tools & Tech:

  • Cisco IOS XE / NX-OS devices
  • Python (netmiko, ncclient, Cisco SDKs), Ansible
  • Stealthwatch / NetFlow
  • Email or messaging for alerts

📡 Project 2: Daily Open Port Scanner + Report

Goal:
Scan critical infrastructure daily for open ports and generate a security report.

How It Works:

  • Scheduled Python/Nmap job runs daily against a list of critical IPs/subnets.
  • Results are parsed, formatted into an HTML or plain-text report.
  • Report is sent via email or posted to an internal dashboard.

Tools & Tech:

  • Nmap
  • Python (for scripting and reporting)
  • Cron or Jenkins (for scheduling)
  • SMTP / mail server for alerts

🏗️ Project 3: Automated Secure Network Device Provisioning

Goal:
Provision and secure new network devices automatically — no manual CLI work required.

How It Works:

  • New Cisco device powers on and receives a base config using Zero Touch Provisioning (ZTP).
  • Automation scripts push full configurations:
    • VLANs, IP addressing, ACLs, SNMP/NTP/AAA setup
    • Monitoring setup and access control
  • Device is registered with monitoring/telemetry tools (e.g., Prime, DNAC, or custom SNMP monitoring).

Tools & Tech:

  • Cisco ZTP or Plug-and-Play (PnP)
  • Ansible, Python, RESTCONF, NETCONF
  • Netmiko, Nornir, or Cisco SDKs
  • Monitoring via SNMP, Syslog, or Telemetry

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment