1. Build 시즌에 흔한 “반만 되는” 패턴

행사가 가까워지면 공식 블로그·샘플 리포지토리·모듈형 학습 경로를 열어두고 병행 설치하는 경우가 많습니다. 그때 브라우저 탭 하나는 Markdown과 이미지가 빨리 뜨는데, Visual Studio Installer 만 네트워크 오류를 반복하거나, learn.microsoft.com 의 상호작용 랩만 세션 토큰 때문에 새로고침 루프에 빠지는 식입니다. 원인이 단순 대역폭이 아니라 Clash 규칙 스택에서 인증 전용 호스트와 대용량 패킷 전송 호스트가 서로 다른 정책으로 매칭될 때가 많습니다. 증상을 재현할 때는 동시에 띄운 탭 수를 줄이고, 한 번에 하나의 큰 작업(전체 설치·단일 모듈·문서만)만 남겨 연결 패널에 찍히는 FQDN 문자열을 적어 두는 편이 빠릅니다.

2. 개발자 트래픽을 네 덩어리로 나누어 생각하기

실무에서는 다음 네 축으로 묶으면 로그 읽기가 단순해집니다. 첫째, 문서 HTML·내비게이션·검색 API에 가까운 learn ·docs 본문 호스트입니다. 둘째, CSS·JS 번들·아이콘 같은 정적 자산과 글로벌 CDN 접미사입니다. 셋째, 설치 패키지·워크로드 manifest·바이너리 조각을 받는 download.visualstudio.microsoft.com 계열과 .visualstudio.com 대용량 경로입니다. 넷째, 로그인·라이선스·조직 계정 연동을 담당하는 login.microsoftonline.com ·login.live.com ·dev.azure.com 등 인증 및 DevOps 연계 줄입니다. 반프록시에서 이 중 일부만 노드를 타고 나머지는 국선으로 붙으면 TLS 핸드셰이크는 성공하지만 후속 요청이 다른 출구에서 차단되어 진행률이 튀는 패턴이 됩니다.

3. Visual Studio Installer와 워크로드 줄

설치기는 시작 시 작은 JSON manifest 조회, 이어서 각 워크로드별 payload 다운로드로 이어집니다. 패널 로그에 동시에 뜨는 이름이 *.microsoft.com 한 가지로만 보이지 않고, 지역·캐시 서버 접미사가 섞입니다. Mihomo에서 DOMAIN-SUFFIX,microsoft.com 같은 광역 규칙을 상단에 두었다면 의도와 달라도 먼저 매칭되어 이후 세부 규칙이 무시될 수 있습니다. 진단 단계에서는 광역 규칙을 잠깐 아래로 내리거나 테스트 프로필을 따로 두고, 설치기를 다시 실행해 동일 시나리오만 포착해 보세요. 캐시가 깨진 경우가 아니라면 동일 PC에서 규칙 순서만 바꿔도 완료 시간이 크게 달라지는 경우가 있습니다.

4. learn.microsoft.com·docs.microsoft.com 문서 줄

문서 본문은 페이지 소스와 검색·피드백 위젯, 코드 하이라이팅용 스크립트까지 호스트가 갈라질 수 있습니다. 브라우저 확장·기업 프록시·EDR이 HTTPS를 가로막으면 Clash와 무관하게 일부 자원만 막힙니다. Chrome 계열에서 HTTP/3 기반 줄이 섞이면 패널에서 보는 이름과 실제 경로가 어긋나기도 하므로, 필요 시 QUIC을 끄고 같은 페이지를 다시 연 뒤 로그를 비교하는 방법은 크롬·QUIC 실측 글 절차와 맞춰 보는 것이 좋습니다. 문서만 느린지 설치·git clone·NuGet 복원까지 같이 느린지 범위를 분리해 적어 두면 이후 규칙을 모듈 이름으로 나눌 때 기준이 됩니다.

5. DNS·fake-ip·분기 일치

Clash의 DNS 모듈이 프록시와 다른 업스트림을 쓰거나, 클라이언트가 OS DoH를 우선하면 규칙에 올린 DOMAIN 과 실제 소켓이 향하는 IP 세트가 달라질 수 있습니다. fake-ip 를 켠 환경에서는 이름 해석이 캐시에 남아 규칙 변경 후에도 이전 정책이 잠깐 이어지는 경우가 있어, DNS 캐시를 비우거나 클라이언트 재시작 후 같은 순서를 한 번 더 밟는 것이 안전합니다. dig 나 브라우저 내장 도구만으로는 프록시 뒤 앱의 전체 경로를 보기 어렵기 때문에 최종적으로는 연결 패널의 정책 이름과 타임스탬프를 기준으로 삼는 편이 일관됩니다.

6. rules 상단 순서와 GEOIP 함정

흔한 실수는 넓은 GEOIPMATCH 가 개발자용 세부 DOMAIN-SUFFIX 보다 위에 있는 경우입니다. 특정 국가 노드로 보내려다 Microsoft 다운로드 호스트 일부가 우회 없이 직접 연결로 떨어지면, 회사망이나 ISP 필터에 걸려 속도만 떨어지는 것처럼 보일 수 있습니다. 반대로 전부 노드로 보내면 내부 전용 미러나 인트라넷 패치 서버까지 불필요하게 돌아가 지연이 커질 수 있으므로, 조직 정책이 허용하는 범위 안에서 “인증만 노드·payload는 직접” 같은 절충을 로그 근거로 잡는 방식이 현실적입니다. 규칙 파일을 여러 레포에서 합쳐 쓰는 경우 중복 행이 생기기 쉬우니, 실제 로드된 순서를 클라이언트 디버그 화면에서 한 번 확인하세요.

7. 시스템 프록시만 쓸 때와 TUN 보강

설치기·일부 콘손 도구는 시스템 프록시를 따르지 않습니다. 반면 브라우저는 프록시를 타므로 문서와 패키지 줄이 처음부터 갈라집니다. TUN 을 켜면 전송 계층에서 묶는 경우가 많지만, 스플릿 터널 예외 목록에 개발용 VPN이나 다른 어댑터가 들어 있으면 여전히 일부 요청이 빠질 수 있습니다. 가상화 제품·보안 에이전트가 별도 필터 드라이버를 붙이면 증상이 Clash 설정만으로는 재현되지 않을 때도 있어, 잠깐 종료 가능한 후보부터 순서대로 격리해 보는 접근이 필요합니다.

8. Azure DevOps·Git·패키지 복원과의 교차

샘플을 클론한 뒤 dotnet restore 나 npm 설치까지 이어지면 dev.azure.com ·pkgs.dev.azure.com ·nuget.org ·github.com 등이 같은 작업 세션에 섞입니다. 각각 다른 정책으로 매칭되면 “빌드만 실패하고 문서는 정상”처럼 보입니다. 한 번에 원인을 좁히려면 먼저 순수 문서 탐색만 켜 두고 로그를 저장한 뒤, 그다음 설치기만, 마지막으로 복원·빌드만 실행해 로그 diff를 비교하는 방식이 효율적입니다. 이 과정은 Apple 개발자 사이트와 Xcode 다운로드를 나누는 WWDC·Xcode 실측 글 과 사고 흐름이 같아, 이미 그 글을 따라 해 본 독자라면 같은 체크리스트만 마이크로소프트 호스트 이름으로 바꾸면 됩니다.

9. Teams·Copilot 시나리오와 무엇이 다른가

Teams 는 실시간 미디어·M365 공동 편집·알림 채널이 중심이라 teams.microsoft.com 과 WebRTC·CDN 조합이 핵심입니다. Copilot 이 깃허브·OpenAI·마이크로소프트 모델 엔드포인트를 왕복할 때의 묶음도 설치기·정적 문서 CDN과 겹치지 않는 경우가 많습니다. 따라서 “회의는 되는데 VS 설치만 안 된다”는 현상이 나와도 이전에 썼던 Teams 규칙 세트를 그대로 복사해 VS에 적용하기보다는, 이번 글의 네 덩어리(문서·정적·payload·인증) 기준으로 다시 로그를 모으는 편이 빠릅니다. 제품별로 규칙 파일을 층으로 나누어 두면 행사 종료 뒤에도 유지보수가 수월합니다.

10. 연결 로그로 검증하는 최소 절차

실측 순서를 한 줄로 적으면 다음과 같습니다. 첫째, 문제 작업 하나만 실행한다. 둘째, 패널에서 동시에 보이는 FQDN 목록을 시간 순으로 캡처한다. 셋째, 각 이름 옆 정책(DIRECT ·프록시 그룹·거부)을 적는다. 넷째, DNS 화면에서 같은 시각대의 질의 응답을 대조한다. 다섯째, 규칙 한 블록만 바꾼 뒤 동일 절차를 반복한다. 여섯째, 개선이 없으면 TUN·시스템 프록시·다른 VPN 공존 여부를 순서대로 바꾼다. 피드백을 동료에게 넘길 때는 스크린샷보다 호스트 문자열과 정책 이름 테이블이 재현에 더 유리합니다.

11. 조직망·라이선스 준수

회사 장비에서는 트래픽 분류 자체가 보안 정책에 속합니다. 우회가 아니라 허용된 출구 설계와 장애 분석 목적에 한해 적용하세요. 조건부 액세스·인증서 고정·분할 터널 정책이 있으면 Clash 규칙과 충돌할 수 있으므로 내부 가이드를 먼저 확인하는 것이 안전합니다.

12. 정리

Microsoft Build 2026 전후에는 Visual Studio ·learn.microsoft.com ·다운로드 CDN·인증 호스트가 한 작업 흐름 안에서도 여러 줄로 갈라집니다. 마이크로소프트 개발자 CDN 과 로그인 게이트를 연결 로그로 묶고 ClashDNS ·규칙 상단 순서·TUN 여부를 맞추면 “문서만 되고 설치만 안 된다” 같은 반프록시 증상을 짧게 줄일 수 있습니다. 동일한 달에 Android 개발자 문서와 OTA를 다룬 Google I/O·Android 실측 글 과 호스트 이름만 다를 뿐, 절차 리듬은 같으니 함께 두고 레퍼런스로 쓰기 좋습니다.

Mihomo 기반 Clash는 연결·DNS·규칙을 한 클라이언트에서 묶어 주어 행사 준비처럼 집중 다운로드가 겹칠 때 디버깅 비용을 줄이는 편입니다. 설치기와 문서를 동시에 돌리는 일정이라면 먼저 패널에서 이름을 모은 뒤 필요한 출구만 정돈하는 방식이 체감 속도에도 유리합니다. → Clash 무료 다운로드 페이지에서 클라이언트를 받아 동일한 로그 기반 절차를 시작해 보세요.