DevLog

엔지니어링 블로그를 한 곳에서 탐색하고, 최근 발행 흐름을 빠르게 파악할 수 있는 서비스 입니다.

Quick Links

  • Latest Feed
  • Engineering Directory

Support

  • 소개
  • 개인정보처리방침

Contribute

  • 원하는 블로그 추가 (준비 중)
  • Feedback

© 2026 DevLog Inc. All rights reserved.

본 사이트는 공개 RSS 피드를 통해 콘텐츠를 수집하며, 모든 콘텐츠의 저작권은 원저작자에게 있습니다.

Back to Feed
Read Original

Contents

Continue Reading

  • More from 채널 톡
  • Related reads#Istio
#DevOps

Istio 2편: Envoy config로 해부하는 Ambient mode

Istio 2편: Envoy config로 해부하는 Ambient mode
01

Summary

사이드카 없는 Istio, Envoy 설정 속에 숨겨진 Ambient 모드의 실체를 공개합니다

HBONE 터널링부터 ztunnel의 iptables 마법까지, 시니어 엔지니어가 낱낱이 해부한 트래픽의 여정

혁신적인 Istio Ambient 모드가 실제로 어떻게 동작하는지 궁금하신가요? 채널코퍼레이션 엔지니어들이 Envoy xDS 설정과 리눅스 저수준 네트워킹을 직접 파헤쳐 HBONE과 ztunnel의 메커니즘을 시각화했습니다. 복잡한 이론을 넘어 실제 설정값을 통해 서비스 메쉬의 미래 기술을 깊이 있게 탐구합니다.

  • 01Envoy의 Internal Listener와 InternalUpstreamTransport를 조합한 HBONE 프로토콜의 구체적 구현 사례
  • 02istio-cni가 Pod 네트워크 네임스페이스에 직접 소켓을 생성하는 'In-pod ztunnel' 아키텍처 상세 분석
  • 03iptables 0x539 및 0x111 마킹을 활용하여 트래픽 무한 루프를 방지하고 응답 패킷을 효율적으로 처리하는 기법
  • 04Gateway-Waypoint-Pod로 이어지는 커스텀 트래픽 경로를 통한 L7 정책 통합 관리 전략
  • 05Out-of-mesh와 In-mesh 대상에 따른 Endpoint 메타데이터 분기 및 동적 라우팅 메커니즘 해설

+RECOMMENDATION

Istio Ambient 모드 도입 시 발생할 수 있는 트러블슈팅 역량을 키우고 싶은 플랫폼 엔지니어와 Envoy 프록시의 고도화된 설정 기법을 배우려는 개발자에게 필독을 권장합니다.

The Problem

Istio Ambient 모드의 핵심인 HBONE 터널링과 ztunnel의 트래픽 리다이렉션 원리가 개념적으로는 알려져 있으나, 실제 Envoy 설정(xDS)과 네트워크 레벨에서 어떻게 구현되는지에 대한 구체적인 분석이 부족한 상황입니다.

The Solution

Istio Gateway의 Envoy 설정을 단계별(Listener, Route, Cluster, Endpoint)로 분석하여 Internal Listener와 tunneling_config를 통한 HBONE 구현을 확인하고, istio-cni와 iptables 마킹을 이용한 ztunnel의 네임스페이스 수준 소켓 제어 방식을 규명합니다.

The Result

HTTP 요청이 Gateway에서 목적지 Pod까지 도달하는 전 과정을 기술적으로 증명하였으며, 특히 채널팀은 인지 부하 감소를 위해 모든 L7 정책을 Waypoint에서 통합 관리하는 아키텍처를 채택하여 운영 효율성을 높였습니다.

Trade-off

라우팅 정책 통합 관리를 위해 Gateway가 직접 Pod로 연결되는 기본 경로 대신 Waypoint를 경유하게 함으로써, 추가적인 네트워크 홉(Hop)에 따른 미세한 지연 시간 발생과 아키텍처 복잡도가 증가하는 트레이드오프가 발생했습니다.

03

Key Concepts

Concept · 01

HBONE (HTTP-Based Overlay Network)

HTTP/2 CONNECT 메서드와 mTLS를 결합하여 트래픽을 캡슐화하고 안전하게 전달하는 Istio Ambient의 터널링 프로토콜입니다.

  • Envoy의 tunneling_config를 통해 TCP 트래픽을 HTTP/2 CONNECT 요청으로 변환합니다.
  • Internal Listener를 거쳐 mTLS 인증이 적용된 15008 포트로 터널링을 수행합니다.
Concept · 02

In-pod ztunnel

ztunnel 프로세스가 호스트 레벨에서 동작하면서도 각 Pod의 네트워크 네임스페이스 내에 직접 소켓을 생성하여 트래픽을 가로채는 방식입니다.

  • istio-cni가 Pod의 네트워크 FD(File Descriptor)를 ztunnel에 전달하여 크로스 네임스페이스 소켓을 생성합니다.
  • Pod 내부에서 보면 15008 포트 등이 열려 있지만 실제로는 ztunnel 프로세스가 이를 소유합니다.
Concept · 03

Packet Marking (0x539/0x111)

iptables 규칙 내에서 트래픽의 출처와 상태를 구분하기 위해 패킷에 부여하는 고유한 식별자입니다.

  • 0x539 마크를 통해 ztunnel이 생성한 패킷이 다시 자신에게 리다이렉트되는 무한 루프를 방지합니다.
  • 0x111 CONNMARK를 사용하여 이미 수립된 커넥션의 응답 패킷이 리다이렉트 없이 통과하도록 제어합니다.
Continue reading · same source

채널 톡More from 채널 톡

View all posts from 채널 톡
  • [신청 중] AI Product Frontiers: AI 시대, 최전선에서 방향을 만드는 사람들

    MeetupAI InfrastructureArtificial Intelligence
    1일 전
  • 채널콘 2026 디자인 비하인드

    FramerGenerative AILocalization
    2일 전
  • Swift 6 어때요? (1): 스레드, 블록, 태스크

    Swift ConcurrencyGCDRxSwift
    2일 전
  • 5년, 340개의 이야기로 이어온 개발 문화

    Developer RelationsKnowledge SharingEngineering Culture
    3일 전
  • 유저챗 개인정보 마스킹 개발기

    RegexRE2ReDoS
    4일 전

Related reads#Istio

Explore #Istio
채널 톡

Istio 3-4편: 507 status code와 istiod disconnected 탐지

#Istio1개월 전
채널 톡

Istio 3-2편: Partially Enrolled Pod와 Untaint Controller

#Istio1개월 전
Flex·ArgoCD

[인프라를 소프트웨어처럼 3/5] 환경은 브랜치에서 태어난다: Environment Variant

#Istio1개월 전
채널 톡

Istio 3-1편: 503과 Half-open Connection

#Istio2개월 전
NAVER D2·Kubernetes

MLXP : Kubernetes LLM Serving 최적화 기술 도입기

#Istio2개월 전

Source

채널 톡
채널 톡
Engineering Blog

Published · April 14, 2026

Topics

IstioEnvoyAmbient ModeHBONEKubernetes