# CiliumL2AnnouncementPolicy — ARPs each LoadBalancer IP (from lb-ippool) on the # LAN so the EXTERNAL-IP is actually reachable. Without it, LB-IPAM assigns IPs # but nothing answers ARP (100% packet loss / incomplete ARP). One node per IP # holds the lease (leaderElection) to avoid ARP flapping. Requires kube-proxy # replacement (enabled) and Cilium L2 announcements (default since v1.14). apiVersion: cilium.io/v2alpha1 kind: CiliumL2AnnouncementPolicy metadata: name: homelab-l2-announce spec: loadBalancerIPs: true interfaces: - eno1