One endpoint being administratively up is insufficient when its paired endpoint is down.

A veth pair carries frames between two endpoints; routing supplies their meaning

A veth pair consists of two interconnected virtual Ethernet devices. A frame transmitted through one is delivered to the other, where the receiving network stack or bridge handles it. The two ends can reside in separate Linux network namespaces, making the pair useful for container networking. Creating the pair supplies a link; addresses, routes, bridge membership, forwarding, and access policy are additional configuration. ...

November 21, 2027 · 6 min · XB Field Notes
A VNI mismatch breaks the overlay even when the two underlay addresses still communicate.

VXLAN needs matching tunnel parameters as well as a working underlay

VXLAN carries an Ethernet frame inside a UDP packet so an overlay network can cross an IP underlay. Tunnel endpoints encapsulate and decapsulate frames, while a 24-bit VXLAN Network Identifier, or VNI, identifies the virtual segment. The outer IP addresses route between endpoints; the inner Ethernet and IP addresses serve the overlay. These are separate layers with separate reachability and configuration requirements. ...

October 28, 2027 · 5 min · XB Field Notes
A stable name in front of a shifting set of pods.

Kubernetes Services give pods a stable home

You cannot memorise a Pod that will be recreated. A Service fixes an address in front of them, keeping callers stable while pods churn. One address in front of many A Deployment gives you multiple, interchangeable pods, and each one has its own IP that will soon be recreated. A Service is the stable home in front of them: you declare a name and a selector, and the platform hands the Service a virtual cluster IP plus a DNS name that stay fixed. Cluster DNS resolves that name, so components (other pods, an Ingress, a load balancer) refer to the Service, never to an individual pod address. That is the point of the abstraction, the address is durable even though everything standing behind it is disposable. ...

August 23, 2027 · 6 min · XB Field Notes
An observe-decide-act diagram beside the words Bound every wait, share one deadline.

Connection timeouts prevent silent hangs

A timeout names how long a particular operation may wait. It is not automatically a deadline for the whole request, and it does not prove that the remote operation stopped. Separate connection establishment, individual reads, and the caller’s overall budget before choosing numbers or interpreting a timeout error. ...

August 1, 2027 · 5 min · XB Field Notes
DNS follows the alias to an address while HTTP continues using the original hostname.

A CNAME changes DNS resolution while the requested hostname stays the same

A CNAME record associates an alias name with another DNS name. When resolving an address through that alias, a resolver follows the target until it obtains the requested data or encounters a failure. This lets a public hostname remain stable while its DNS dependency changes. It does not redirect a browser to another URL or replace the application’s requested hostname. ...

July 9, 2027 · 6 min · XB Field Notes
DNS can return several peers while a client repeatedly chooses just one of them.

Multiple DNS addresses do not guarantee balanced or healthy traffic

Several A or AAAA records at one name provide an address set. A DNS server may rotate the order it returns, but the receiving resolver and application decide how to use that set. Ordinary address records contain no request-load measurement or application-health result. Their presence alone does not promise equal traffic, automatic failover, or even a particular first address across implementations. ...

July 6, 2027 · 6 min · XB Field Notes
A per-node listening port plus the cluster load-balancer behind it.

NodePort publishes a service on every node's fixed port

A Service of type NodePort does one blunt thing: it reserves a port in the 30000-32767 range and makes every node in the cluster listen on it. kube-proxy programs the same forwarding rule into the iptables or IPVS tables of every machine, so curl <any-node-ip>:<nodePort> reaches the Service no matter which node answers. That is the whole appeal — external reachability with no cloud load balancer, no DNS record and no ingress controller. ...

May 11, 2027 · 5 min · XB Field Notes
An observe-decide-act diagram beside the words Idle is a policy, not proof of failure.

Idle timeouts recycle edge connections

An idle timeout closes a connection after a defined period without qualifying activity. It is a resource policy, not proof that the client disappeared. Quiet connections can belong to healthy clients; the useful question is which activity resets which timer, and what the protocol allows after closure. ...

April 26, 2027 · 6 min · XB Field Notes