# blackhole — connectTimeout(S6) 재현용 "SYN 이 응답 없이 드롭되는" 목적지.
#
#  endpoint 198.51.100.10 은 RFC 5737 TEST-NET-2(문서용, 실 호스트 없음) 대역이다. 선택 이유:
#  파드의 default route(0.0.0.0/0 via 게이트웨이)가 이 대역을 커버하므로 SYN 이 "실제로 발송"되지만
#  응답이 오지 않는다 → SYN 재전송하다 DR 의 connectTimeout(1s)이 먼저 만료 → 커넥션 시도 실패.
#  (Class E 240.0.0.0/4 는 커널에 route 자체가 없어 즉시 ENETUNREACH → connect_fail 로 빠지고
#   connect_timeout 이 안 잡힌다. "발송되나 무응답"이어야 timeout 이 뜬다.)
#
#  결과: 503 + response flag UF(upstream connection failure) + upstream_cx_connect_timeout++.
#  resolution: STATIC + endpoints 로 목적지를 고정. exportTo: ["."] 로 conn-lab 내부로만 가시화.
#  port name:http 라 L7 클러스터로 관리된다. (client sidecar DNS 프록시가 이 host 를 VIP 로
#  auto-allocate 해 fortio 의 사전 DNS 조회를 통과시킨다 — 20-client.yaml 참조.)
apiVersion: networking.istio.io/v1
kind: ServiceEntry
metadata:
  name: blackhole
  namespace: conn-lab
spec:
  exportTo: ["."]
  hosts: ["blackhole.lab.internal"]
  location: MESH_EXTERNAL
  resolution: STATIC
  ports:
    - { number: 80, name: http, protocol: HTTP }
  endpoints:
    - address: 198.51.100.10      # RFC 5737 TEST-NET-2 — SYN 발송되나 무응답(→ connectTimeout)
      ports: { http: 80 }
