DEV Community

pathvector-dev profile picture

pathvector-dev

I build networking tools (netblame, pathwx) and write hands-on protocol labs — BGP to QUIC, all runnable with containerlab. Originals at blog.pathvector.dev

Joined Joined on 
Announce, withdraw, and peer down are three different code paths

Announce, withdraw, and peer down are three different code paths

Comments
9 min read
When Loc-RIB changes, every peer needs a different answer

When Loc-RIB changes, every peer needs a different answer

Comments
8 min read
Established is not a status label — it's a write permission

Established is not a status label — it's a write permission

Comments
7 min read
One route, one function chain: reading a BGP pipeline as code

One route, one function chain: reading a BGP pipeline as code

Comments
9 min read
When a BGP peer disappears, one session loss becomes many route decisions

When a BGP peer disappears, one session loss becomes many route decisions

Comments
8 min read
Export policy decides what leaves: reading BGP outbound state as code

Export policy decides what leaves: reading BGP outbound state as code

Comments
7 min read
Import policy rewrites the route before best-path ever sees it

Import policy rewrites the route before best-path ever sees it

Comments
8 min read
Validation State Doesn't Act By Itself

Validation State Doesn't Act By Itself

Comments
6 min read
Origin validation is a separate decision from best path

Origin validation is a separate decision from best path

Comments
7 min read
How a BGP UPDATE Changes State: Reading Withdrawal and Announcement as Code

How a BGP UPDATE Changes State: Reading Withdrawal and Announcement as Code

Comments
6 min read
What a BGP Neighbor Needs — Reading Session Setup as Code

What a BGP Neighbor Needs — Reading Session Setup as Code

Comments
7 min read
Split-Horizon DNS: One Name, Two Answers, and the Server Decides by Who's Asking

Split-Horizon DNS: One Name, Two Answers, and the Server Decides by Who's Asking

Comments
7 min read
DNS Round-Robin: The Cheapest Load Balancer Is Three A Records and a Rotating Answer

DNS Round-Robin: The Cheapest Load Balancer Is Three A Records and a Rotating Answer

Comments
7 min read
DNAT Explained: Publishing an Internal Service Through One Public Address and Port

DNAT Explained: Publishing an Internal Service Through One Public Address and Port

Comments
7 min read
Policy Routing: When the Source Address Picks the Path, Not the Destination

Policy Routing: When the Source Address Picks the Path, Not the Destination

Comments
7 min read
TCP MSS Clamping: Fixing Path MTU Black Holes by Rewriting the SYN

TCP MSS Clamping: Fixing Path MTU Black Holes by Rewriting the SYN

Comments
7 min read
BFD Explained: Catching a Silent Network Failure in Under a Second

BFD Explained: Catching a Silent Network Failure in Under a Second

Comments
8 min read
OSPF Explained: Flood the Map, Run Dijkstra, and Reroute in Seconds

OSPF Explained: Flood the Map, Run Dijkstra, and Reroute in Seconds

Comments
8 min read
ECMP Explained: Two Equal Paths, and the Kernel Hashes Flows Across Them

ECMP Explained: Two Equal Paths, and the Kernel Hashes Flows Across Them

Comments
8 min read
CUBIC vs BBR: How Your Congestion Control Choice Changes Throughput 7x on a Lossy Path

CUBIC vs BBR: How Your Congestion Control Choice Changes Throughput 7x on a Lossy Path

Comments
8 min read
Traffic Shaping with a Token Bucket: Cap a 56 Gbit/s Link at 10 Mbit/s Using tc

Traffic Shaping with a Token Bucket: Cap a 56 Gbit/s Link at 10 Mbit/s Using tc

Comments
7 min read
Redirects and Cookies: How Stateless HTTP Fakes Having a Memory

Redirects and Cookies: How Stateless HTTP Fakes Having a Memory

Comments
7 min read
Path MTU Discovery: Why Blocking ICMP Makes Big Pages Hang

Path MTU Discovery: Why Blocking ICMP Makes Big Pages Hang

Comments
8 min read
ARP Explained: How IPv4 Turns an IP Address into a MAC by Shouting at Everyone

ARP Explained: How IPv4 Turns an IP Address into a MAC by Shouting at Everyone

Comments
7 min read
DHCP Explained: How a Machine With No IP Address Gets One in Four Messages

DHCP Explained: How a Machine With No IP Address Gets One in Four Messages

Comments
7 min read
GRE Explained: The Layer-3 Tunnel That Wraps Everything and Encrypts Nothing

GRE Explained: The Layer-3 Tunnel That Wraps Everything and Encrypts Nothing

Comments
7 min read
How traceroute Really Works: TTL, ICMP Time-Exceeded, and Mapping a Path Hop by Hop

How traceroute Really Works: TTL, ICMP Time-Exceeded, and Mapping a Path Hop by Hop

Comments
8 min read
VXLAN Explained: An Overlay You Can Read on the Wire

VXLAN Explained: An Overlay You Can Read on the Wire

Comments
8 min read
WireGuard, Seen From Both Sides: The Same Ping as Ciphertext and Cleartext

WireGuard, Seen From Both Sides: The Same Ping as Ciphertext and Cleartext

Comments
9 min read
Mutual TLS Explained: Making the Client Prove Its Identity Too

Mutual TLS Explained: Making the Client Prove Its Identity Too

Comments
8 min read
DNSSEC in a Container Lab: Sign a Zone, Tamper With It, and Watch the Resolver Say No

DNSSEC in a Container Lab: Sign a Zone, Tamper With It, and Watch the Resolver Say No

Comments
11 min read
One Web Request, End to End: Watch curl Cross DNS, TCP, TLS, and HTTP in Order

One Web Request, End to End: Watch curl Cross DNS, TCP, TLS, and HTTP in Order

Comments
9 min read
HTTP/1.1 in the Clear: Read One Request and Response Line by Line, Then Watch 304 Save the Day

HTTP/1.1 in the Clear: Read One Request and Response Line by Line, Then Watch 304 Save the Day

Comments
8 min read
TLS 1.3 on the Wire: What an Eavesdropper Can Still See Before Encryption Kicks In

TLS 1.3 on the Wire: What an Eavesdropper Can Still See Before Encryption Kicks In

Comments
8 min read
One TCP Connection, From SYN to FIN: Capture the Whole Lifecycle in tcpdump

One TCP Connection, From SYN to FIN: Capture the Whole Lifecycle in tcpdump

Comments
10 min read
DNS Caching Explained: Watch TTLs Count Down and NXDOMAIN Get Cached Too

DNS Caching Explained: Watch TTLs Count Down and NXDOMAIN Get Cached Too

Comments
10 min read
A Network Protocol Learning Roadmap: 42 Hands-On Labs and 151 Code-Reading Sessions, Mapped

A Network Protocol Learning Roadmap: 42 Hands-On Labs and 151 Code-Reading Sessions, Mapped

Comments
3 min read
RPKI Origin Validation: Watch BGP Routes Turn Valid, Invalid, and Not Found

RPKI Origin Validation: Watch BGP Routes Turn Valid, Invalid, and Not Found

Comments
8 min read
Competing Origins: When Two ASes Announce the Same Prefix, Who Do You Believe?

Competing Origins: When Two ASes Announce the Same Prefix, Who Do You Believe?

Comments
9 min read
BGP UPDATE in Action: Watch a Route Appear, Disappear, and Come Back

BGP UPDATE in Action: Watch a Route Appear, Disappear, and Come Back

Comments
12 min read
BGP From Scratch: Announce One Prefix and Explain Every Field of the Route

BGP From Scratch: Announce One Prefix and Explain Every Field of the Route

Comments
12 min read
loading...