1. 어떤 패턴일 때 네트워크부터 의심할까요
Google Antigravity(또는 유사하게 Google 생태 안에서 Gemini 모델을 호출하는 에이전트 IDE)를 켠 직후, 에디터 상태 표시줄만 도는데 응답 본문이 비거나, 패널이 “연결을 기다립니다”에 머무는 패턴입니다. 종종 앱 레벨 오류 문자열에는 타임오버, TLS 레이어의 핸드셰이크 유예 초과, EAI_AGAIN류의 DNS 이름 실패처럼 읽히는 코드가 따라붙지만, 사용자 체감은 모두 같은 “무한 회전”으로 보입니다.
대표 재현 패턴은 둘로 갈립니다. 먼저 Chrome이나 Edge 탭에서는 gemini.google.com이 곧바로 열리는데, 같은 기기·같은 Clash 노드 상태에서 에이전트 패널만 실패합니다. 두 번째는 웹 브라우저도 불안하지만 브라우저에 비해 에이전트가 더 극단적으로 느리거나 중간부터 잘리는 패턴입니다. 전자는 종종 호스트 문자열 문제가 아니라 프로세스가 프록시 경로 밖으로 빠져나간다는 신호이며, 후자는 규칙 분류 순서 역전·DNS 교착·혼잡 노드 손실처럼 Google 공통 패턴 가능성을 열어 두어야 합니다.
load-balance보다 같은 출구 유지 가능한 구성부터 비교하세요.
2. 에이전트 IDE는 시스템 프록시만으로는 부족한 경우가 많습니다
많은 데스크톱 앱과 달리, VS Code 호환 UI를 감싼 에이전트 IDE는 내부에서 Node·Go 등 런타임 기반 헬스 체커와 백그라운드 MCP 스타일 툴링을 돌립니다. 이 과정들이 HTTP_PROXY 환경 변수나 OS 수준 PAC를 일관적으로 따르지 않으면 결과적으로 Google API 엔드포인트까지 직접 연결을 시도하게 됩니다. 이때 회사 게이트웨이·국경형 필터링·NAT 정책이 맞물리면 터미널에서 같은 URL을 테스트했을 때만 성공했다가 IDE 안에서는 실패하는 이중성이 형성되기도 합니다.
Clash TUN은 해당 프로세스가 프록시 환경 변수를 무시하더라도 OS 라우팅 테이블을 통해 패킷을 가로채어 기대한 규칙 엔진으로 보낼 수 있습니다. 덕분에 사용자는 “내가 허용한 한 경로 안에서 모든 프로세스를 동일 규격으로 처리한다”는 가정 하에 테스트를 시작할 수 있습니다. 다만 다른 VPN 어댑터·사내 무결성 에이전트·가상 허브 등과 충돌하면 오히려 루프나 블랙홀이 생기므로, TUN 활성 순서와 예외 브리지 목록 역시 디버깅 대상입니다. Windows 전용 증상은 방화벽과 라우팅 글을 참고하면 빠르게 좁혀지는 경우가 있습니다.
3. Antigravity·Gemini 기능이 두드러지게 쓰는 호스트 레이어
문서 브리핑·코드 패치 제안 같은 에이전트 워크플로에서는 Generative Language API(대표 접미사 generativelanguage.googleapis.com), OAuth·세션 교환을 위한 oauth2.googleapis.com, Google 계열 로그인 UI의 accounts.google.com처럼 겉보기 기능과 다른 이름들이 줄줄이 등장합니다. 동시에 UI 자산에는 gstatic.com·CDN성 호스트도 섞입니다. 따라서 사용자가 규칙 파일에 고정한 줄이 Gemini 웹 UI 시절부터 복사한 축이라면 에이전트 전용 새 이름이 규칙 아래쪽의 광역 DIRECT나 다른 정책에 끌려가 실패 패턴으로 돌아올 여지가 큽니다.
Google Cloud의 다른 패밀리 API와 접미사를 공유하면서도 엔드포인트 경로만 다른 경우도 있어, 접미사 전체 매칭이 항상 답이라고 단정하면 안 됩니다. 실무에서는 (1) Gemini 본 기능 흐름, (2) 계정 레이어, (3) 정적·텔메트리에 가까운 보조 이름을 나누어 브라우저와 오차 없이 같은 정책 그룹으로 합류시키되, 과도하게 넓은 키워드 매칭은 피하는 삼중 구조가 유지 관리 친화적입니다.
네트워크 점검 시 주의해야 할 현실적으로 중요한 사실 하나는 브라우저와 에이전트가 HTTP/3(QUIC) 채택도 다를 수 있다는 것입니다. 환경에 따라 QUIC이 차단되어 TCP로만 타협해야 하는 회선이 존재하며, 이 경우 지연이 달라지면서 “항상 시간 초과”가 아니라 “일정 패킷 크기 초과부터 끊긴다”처럼 보입니다. 패킷 캡처 권한이 없다면 Clash 로그 타임라인 안에서 같은 호스트에 대한 재시도가 얼마나 겹치는지 숫자로 보는 방법이 현실적입니다.
4. Clash 규칙 분류로 Google·Gemini 전용 채널 만들기
아래는 이해용 스켈레톤이며 접미사·정책 이름은 사용자 환경에 맞게 바꾸세요. 위에서부터 첫 매칭이 선택되므로 Gemini 특화 줄을 매우 폭넓은 GeoSite나 매치 올 규칙보다 더 위쪽에 두는 습관이 중요합니다. 실측 문자열 없이 과도하게 넓힐 경우 과매칭이 생기므로 기본 Gemini 가이드와 교차 검증하세요.
rules:
- DOMAIN-SUFFIX,gemini.google.com,GOOGLE-AI-TUN
- DOMAIN-SUFFIX,generativelanguage.googleapis.com,GOOGLE-AI-TUN
- DOMAIN-SUFFIX,googleapis.com,GOOGLE-AI-TUN
- DOMAIN-SUFFIX,accounts.google.com,GOOGLE-AI-TUN
- DOMAIN-SUFFIX,oauth2.googleapis.com,GOOGLE-AI-TUN
- DOMAIN-SUFFIX,gstatic.com,GOOGLE-AI-TUN
- GEOIP,cn,DIRECT
- MATCH,FALLBACK-GLOBAL
googleapis.com 전 접미사는 편하지만 검색형 내부 API나 배너 호스트까지 끌고 옵니다. “에이전트만 안정적으로”가 목표라면 DevTools 또는 Clash 접속 로그에서 실패한 줄만 위로 끌어올린 뒤 중복되지 않게 줄이세요. 이름이 겹치는 축 때문에 규칙 분류 충돌이 발생하면 순서 디버깅이 더 어려워지니, 테스트 중에는 과감하게 주석 처리해 비교합니다.
5. TUN 활성 후 반드시 짚어볼 순서들
설정 UI에서 Clash TUN을 켠 뒤에도 상태가 안 바뀌면 (1) 가상 어댑터가 올바른 순위를 갖는지, (2) IPv6 라우팅이 이중 출구에서 충돌하지 않는지, (3) 제로 트러스트 에이전트가 로컬 루프백 헬스 패킷을 가로막고 있지 않은지를 차례로 봅니다. macOS는 Verge류 GUI에서 브라우저 확장과의 상호작용을 설명하는 TUN 준비 가이드가 디버깅 맥락을 제공합니다.
TUN 테스트가 통과했다면 즉시 Gemini 패널에 입력을 넣어보기보다 라이트한 엔드포인트 헬스(예: 토큰 발급·작은 completions 요청 등) 순으로 단계별 확인하는 게 좋습니다. 한 번의 긴 답변 대신 빠르게 종료되는 API를 통해 경로 검증 시간을 줄이면 디버깅 루프가 짧아집니다.
6. 노드 선택, TLS·SNI, DNS의 연쇄
노드 ping이 좋아도 패킷 내부에서 SNI 문자열 처리가 깨져 TLS 협상이 반복된다면 사용자는 “네트워크는 된다”라고 오판하기 쉽습니다. 같은 구독 내에서 다른 서버 이름을 허용하는 정책이 다를 수 있으니, 테스트 구간에서는 규칙 분류와 노드 이름을 한 세트처럼 취급하세요. 자세히는 TLS 레이어 트러블슈트 글을 교차 참고하면 인과가 선명해집니다.
DNS에서는 fake-ip를 쓰는 구조일 때 Gemini 관련 문자열 리졸버가 순간적으로 교체되면 접속 로그에는 동일 접미사가 연속 매칭돼 보이더라도 실제 엣지 라우팅이 달라져 지연이 튀기도 합니다. 운영체제의 DoH, 브라우저별 Secure DNS, Clash 내 DNS 블록이 동시에 켜졌을 때 충돌을 의심하세요. 테스트 시에는 기능을 순차적으로 하나씩 끄고 동일 패킷 크기 재현 여부만 비교해도 원인 레이어링이 빨라집니다.
url-test 기반 자동 전환형 정책은 지연 테스트만으로 순위가 바뀌어 결과적으로 Gemini 스트림이 중간부터 잘릴 때가 많습니다. “가장 빠른 노드”가 아니라 “가장 적은 패킷 드랍과 동일 세션 안정성”을 목표로 select에 고정하거나 헬시한 fallback 한두 개만 남긴 상태로 교차 테스트해 보세요. 혼잡한 무료 노드에서는 API 비밀 문자열까지 노출될 위험이 있으니 신뢰 가능한 소스만 쓴다는 운영 원칙도 잊지 마세요.
7. 다른 에이전트 IDE·코파일럿 패턴과의 차별
GitHub 세계에서는 copilot-proxy나 GitHub Models처럼 Microsoft·GitHub 접미사가 중심이 됩니다. Copilot용 글은 그 패턴 전용이라 Google 축 규칙과 직접 섞어 쓰면 오히려 순서 디버깅이 복잡해집니다. OpenRouter나 특정 패널 브라우저를 타는 사용자는 각각 다른 호스트 패밀리를 갖추었으므로, “에디터 한 개 ⇒ 호스트 패밀리 한 벌” 원칙을 지키세요.
Google 내부라도 사용자 화면 이름이 Gemini인지 Antigravity인지에 따라 백그라운드 문자열 우선 순위가 달라질 수 있습니다. 패널 업데이트 주기 동안 테스트 데이터를 남길 때는 기능 스위치·베타 플래그 기록까지 같이 남겨 회귀 대비하면 좋습니다.
| 항목 | Google Antigravity·Gemini 계열 | GitHub Copilot 계열 |
|---|---|---|
| 핵심 호스트 축 | googleapis.com, gemini.google.com, 계정·OAuth 접미사 |
github.com, copilot-proxy, 관련 모델 API |
| 전형 패턴 | GCP 공유 접미사·정적 에셋·스트림 교차 | 패널·확장·Git Auth 일관성 필요 |
| 실무 디버깅 핵심 | RULE 순서 역전 여부와 TUN 캡처 범위 | 패널 토큰과 Git 자격 간 충돌 |
Cursor를 쓸 때처럼 OpenAI 또는 혼합 패널이 붙었다면 타임오버 문자열 패턴도 다릅니다. Cursor 블로그 글과 본 글 사이 증상이 겹친다면 “IDE 공통 레이어(확장, 언어별 플러그인 패스)”부터 좁히고, 라우팅은 서비스 축별로 파일을 분리하면 유지관리 속도가 올라갑니다.
8. 자주 묻는 질문
시스템 프록시만으로는 왜 부족할까요?
에이전트 런타임이 SOCKS·HTTP 변수를 무시하고 직접 연결하면 OS만 보던 경로와 달라집니다. TUN은 이런 흐름까지 동일 라우팅 테이블로 수렴합니다.
googleapis 전체 접미사를 한 줄로 묶어도 안전할까요?
편하지만 과매칭이 큽니다. 실측 줄을 줄인 뒤 필요 시 넓히는 방식으로 비용 대비 신뢰도를 높입니다.
브라우저는 되고 IDE만 깨진다면?
TUN 활성 상태에서 프로세스가 동일 채널로 붙었는지, 혹시 IDE 전용 업데이터가 직통 DNS를 타는지 연결 로그로 확인합니다.
9. 점검 체크리스트
| 현상 | 우선 순위 |
|---|---|
| IDE만 지속 타임오버 | TUN 범위, 프록시 미적용 프로세스, 방화벽 예외 교차 테스트 |
| 간헐적 TLS 차단 문자열 | SNI 문자열 허용, 노드 정책 전환 줄이기, 혼잡 회선 교체 |
| 짧은 응답은 되고 긴 코드 블록만 끊김 | 동일 세션 재사용 검사, 패킷 MTU 문제, QUIC 비활 후 비교 |
| 브라우저와 IDE 동시 실패 | DNS 교착 여부 확인, Gemini 전역 규칙보다 더 위 좁은 규칙 실측 |
10. 요약
Google Antigravity처럼 Gemini·Google API를 에디터 패널 깊숙이 끌고 오는 워크플로는 호스트 문자열 패밀리가 넓습니다. 따라서 사용자가 허용한 출구 하나로 과정을 검증하고 싶다면 Clash의 규칙 분류를 업데이트하는 것만으로 부족할 수 있으며, 많은 현장 사례에서 TUN 모드가 같은 머신 안의 다른 런타임 경로 차이까지 맞춰 줍니다. 그와 동시에 DNS 교착과 혼잡 노드 때문에 생기는 간헐 TLS 실패까지 함께 넓혀 두면 디버깅 주기가 짧아집니다.
일반 목적 브라우저 프록시는 설정이 간단하지만 규칙 편집이 제한되어 있거나 프로필 백업·버전관리 관점에서 추적하기 어려운 도구들이 많습니다. 반대로 Clash는 같은 YAML 패턴으로 규칙 분류·프로세스 레벨 점검까지 한 파일에서 설명 가능해, Gemini·Copilot처럼 서로 다른 패밀리를 교차 테스트할 때 시행착오 비용을 확실히 줄일 수 있습니다. 한 번이라도 패널 문자열 타임오버 병목을 겪었다면 접속 로그 속 한 줄 호스트 이름부터 새 전용 줄로 올린 뒤 다시 테스트해 보세요.
→ Clash를 무료로 내려받아 Antigravity·Gemini 트래픽 경로와 TUN 범위를 직접 맞춰 보세요