Protect node metadata using Network Policy in Kubernetes

Usually 169.254.169.254 holds node metadata on cloud environments like AWS or Hetzner. To deny access to it in a namespace use the following Network Policy:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: deny-metadata
  namespace: default
spec:
  podSelector: {}
  policyTypes:
  - Egress
  egress:
  - to:
    - ipBlock:
        cidr: 0.0.0.0/0
        except:
        - 169.254.169.254/32