A Service is a stable front door: its ClusterIP and DNS name never change, while the set of Pods behind it is recalculated from a label selector as Pods appear and disappear. Pod IPs themselves are never stable — a restarted Pod gets a new one. Per-Pod DNS exists only for headless Services, and no proxy Pod is created; the routing lives in each node's packet rules.
Official docs