Two namespace outlines contain left0 and right0 as one paired link; the right namespace also owns a loopback destination.

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
Outer IPv4 contains UDP 4789, VXLAN VNI 42, inner Ethernet, and inner IP plus HTTP in the correct encapsulation order.

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 · 6 min · XB Field Notes
A client uses one ordinary ClusterIP Service entry that branches toward eligible Pods. Stable discovery does not guarantee uninterrupted requests.

Kubernetes Services give pods a stable home

A Service separates a stable discovery interface from replaceable backends. The before/after sets are model results, not a transport test. Stable discovery does not prove every request succeeds. Endpoint conditions, ports and datapaths need separate checks. The exact local model passed again; no Kubernetes or transport test was run. One address in front of many An ordinary ClusterIP Service keeps a virtual address during that object’s lifetime, and cluster DNS provides a discovery name. Callers can depend on that name while interchangeable Pods are replaced. This separates a stable client-facing contract from the lifecycle of individual backends, without requiring a config push for every replacement. ...

August 23, 2027 · 6 min · XB Field Notes
Connection and two reads share one overall budget. A further wait is not started after the budget is spent; a successful individual read does not ensure timely completion.

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
Three dependency boxes show alias, middle and target with independent TTLs of 9, 12 and 20 seconds from one answer. A separate HTTP identity band keeps Host as alias.lab.test plus the temporary port. The arrows are DNS dependencies, not URL redirects.

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 answers rotate between A then B and B then A, but one saved application choice sends twelve requests to the selected peer and zero to the other in the article example.

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 client reaches a node-facing NodePort entry only through a usable route and firewall policy; forwarding then targets an eligible backend. Allocation alone does not prove reachability.

NodePort exposes a Service through eligible node addresses

A NodePort Service allocates a cluster-wide port and arranges forwarding through eligible node addresses. It is useful for external load balancers, development environments and deliberately exposed services. It does not make every address on every machine reachable, nor does it promise an application-level listening socket on each node. Network routing, firewalls, proxy implementation and traffic policy remain part of the path. ...

May 11, 2027 · 4 min · XB Field Notes
The historical Go HTTP/1.1 exercise reuses one connection for two /ping requests and a 350 ms /slow handler even with IdleTimeout 200 ms. After the response, it waits for StateClosed before a GET uses a new identity. A separate incomplete-header probe uses ReadHeaderTimeout 500 ms and ends with EOF without invoking the handler. Client 2 s bounds are separate. No Nginx instance was tested, and this review did not rerun the source.

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