2026: IPv6, AAAA, Happy Eyeballs—ProxyMac Mac mini로 SSH가 느릴 때
엔지니어는 배너가 뜨기 전 ssh mini.jp.example이 몇 번 숨 쉴 만큼 걸릴 때 「도쿄 리전」 탓을 하지만 ssh -4에서는 빠릅니다. 최신 리졸버는 A와 AAAA를 모두 반환하고, 스택은 Happy Eyeballs 스타일 경쟁(RFC 8305 알고리즘에 라이브러리가 수렴)을 구현해 IPv6 시도가 패킷 손실처럼 느껴질 만큼 멈출 수 있으며 ProxyMac Mac mini(홍콩, 일본, 한국, 싱가포르, 미국) 자체는 건강할 수 있습니다. 이 글은 IPv6 옹호가 아니라의사결정 워크시트입니다: 4행 증상 매트릭스, macOS 클라이언트 노브(ssh -4, ssh -6, AddressFamily), 리터럴 v6 대괄호 구문, 7단계 런북. VPN에서 답이 다르면 DNS 및 스플릿 호라이즌, 큰 TCP 세그먼트가 사라지면 PMTUD, 주소 패밀리가 확정되면 keepalive 조정. 정책이 먼저 제로 트러스트로 hairpin하면 AAAA를 쫓기 전에 VPN 라우팅을 읽으세요.
mini는 정상인데 첫 SSH가 잠깐 멈춤
증상은 세 가지로 묶입니다: (1) 매분 첫 TCP만 수 초 고정 일시정지, (2) DNS TTL 만료와 연관된 간헐 정지, (3) 연결 설정보다 페이로드 크기(SCP)에 따른 정지. 1은 주소 패밀리 경쟁을 외칩니다. 3은 대개 IPv6가 아닙니다—MTU로 가고 이 페이지를 두 번 읽지 마세요.
- 항상 캡처:
ssh -vvv에서Connecting과Connection established사이 타임스탬프. - 비교: 같은 호스트명에 대해 기본과
ssh -4—기본만 느리면 v6 가설을 증명할 가치가 있습니다. - 리터럴 IPv6에는 대괄호:
ssh user@[2001:db8::1]—파서가 콜론을 포트 구분자로 보지 않게.
A vs AAAA 증상 매트릭스(트리아지 첫 단계)
| 느낌 | 가능한 계층 | 첫 명령 | 심화 링크 |
|---|---|---|---|
2–5초 멈춤 후 빠른 세션; ssh -4로 멈춤 제거 | 깨지거나 hairpin된 IPv6 | dig AAAA hostname +time=2 | 이 글 + DNS 가이드 |
| 숫자 IP로는 되고 이름으로는 실패 | 리졸버 순서 / 스플릿 DNS | scutil --dns | head -n 80 | DNS 가이드 |
| 대화형 OK, SCP는 전송 중 죽음 | PMTUD / 미들박스 | 패킷 크기 스윕 | MTU 가이드 |
| 수십 분 유휴 후 끊김 | NAT 타이머 | ServerAlive 프로브 | Keepalive 가이드 |
dig A와 dig AAAA 출력을 모두 첨부하고, ssh -4가 배너까지의 실시간을 바꿨는지 한 줄 메모—네트워크 팀은 그 두 diff 없이 장문을 무시합니다.
macOS 노트북의 Happy Eyeballs 스타일 경쟁(OpenSSH가 물려받는 것)
듀얼 스택 이름을 해석하는 앱은 병렬 연결을 시작하고 먼저 완료된 쪽을 선호할 수 있습니다. IPv6가 거의 맞을 때—라우터는 접두사를 광고하지만 상류는 ICMPv6를 필터—깨끗한「connection refused」 없이 지연세를 냅니다. VPN 켜기/끄기 델타를 문서화하세요. 많은 ZTNA 클라이언트가 리졸버 목록을 재정렬하거나 카페 Wi‑Fi와 다른 가상 IPv6 경로를 넣습니다.
OpenSSH 플래그, ~/.ssh/config, 주소 패밀리를 책임 있게 고정
ssh -4와 ssh -6을진단 스위치로 쓰고, 정책에 합의되면 Host 블록에 AddressFamily inet 또는 inet6를 인코딩하세요.「v6 깨끗한 캠퍼스」와「레거시 v4만 호텔」을 오가는 노트북에 영구 -4는 피하세요—Match exec 가드 없이는 놀라움이 커집니다. 설정을 나누세요.
Host proxymac-jp-stable
HostName mini.example.jp
User build
AddressFamily inet
ServerAliveInterval 30
ServerAliveCountMax 4
임대 mini가 노출해야 할 것(그래도 직접 검증해야 함)
ProxyMac은 예측 가능한 SSH 진입점을 주지만, 고객 소유 호스트명의권위 DNS는 위임하지 않으면 여전히 등록기관에 있을 수 있습니다. 영역이 A만, AAAA만, 둘 다 게시하는지, 기업 리졸버가 보안 명목으로 AAAA 답을 조용히 떨어뜨리는지 확인하세요. IT가 AAAA를 떨구면 노트북이 IPv6를 마법처럼 만들지 않습니다. 반대로 AAAA가 있는데 업링크가 깨져도 클라이언트는 여전히 v6를 먼저 시도할 수 있습니다.
운영에「mini 옮겨 달라」고 하기 전 7단계
- 스냅샷: 사무실, VPN, 집 맥락에서
dig A/dig AAAA. - 시간 측정: 같은 이름에
ssh -vvvvsssh -4 -vvv—차이 >1s면 의심. - 확인: VPN 토글 시
scutil --dns순서; 잘못된 검색 도메인은 IPv6 문제처럼 보입니다. - MTU 배제: bulk 복사는 실패하고 셸은 괜찮으면 링크된 가이드로.
- 주소 패밀리가 안정된 뒤 keepalive 겹쳐 쌓기.
- 방화벽 티켓 옆 Git에 최종
Host블록 문서화. - 그때만 MTR 증거로 리전 비교—느낌이 아니라.
FAQ
mini에서 IPv6를 끄나요? 깨진 경로를 고치는 편이 낫습니다. 전역 v6 끄기는 합법적 듀얼 스택 모니터링을 망칠 수 있습니다.
화면 공유도 같은 경쟁을 물려받나요? 종종 그렇습니다—QUIC 없는 경로에서도 화면 공유는 TCP입니다. 인코더 탓하기 전에 DNS와 주소 패밀리를 검증하세요.
CGNAT가 이야기를 바꾸나요? CGNAT는 포트 매핑 리듬을 바꾸고 DNS 경쟁은 바꾸지 않습니다—443만 나가면 기업 CONNECT SSH와 짝지으세요.
DNS와 듀얼 스택을 이해한 뒤에도 ProxyMac Mac mini가 적절한 앵커인 이유
Apple Silicon M4 mini는 HK / JP / KR / SG / US에 있어 실측에 붙일 호스트명을 줍니다. 오늘의 dig는 내일도 같아야 합니다. 리졸버 진실이 라우팅 정책과 맞으면 자동화 에이전트, CI, 사람 개발자가 모두 재무가 이미 승인한 같은 금속을 칩니다. 가격 페이지에서 리전을 예약하고, 도움말 SSH 스니펫을 런북 옆에 두고, macOS가 TCC 프롬프트에 GUI 증인을 요구하면 VNC로 폴백하세요.