
TCPViewer v1.18.0
최고 수준의 macOS 앱으로 Mac에서 모든 패킷을 명확하게 확인하세요. Wireshark의 대안입니다.
TCP Viewer
Mac을 위한 간단하고 네이티브한 패킷 뷰어.
TCP Viewer는 macOS에서 네트워크 패킷을 캡처하고 읽습니다. 캡처에는 시스템 libpcap을 사용하고, 심층 패킷 세부 정보에는 Wireshark 라이브러리를 사용합니다.
기능
- AppKit으로 빌드된 네이티브 macOS 앱
- Wireshark Lib 기반, Wireshark의 대안
- 실시간 트래픽 캡처.
- 앱, 도메인 또는 IP 주소별로 패킷 그룹화.
- TCP, UDP, DNS, HTTP, TLS, WebSocket 등 필터링.
- 프로토콜 필드와 원시 바이트 읽기.
- PCAP 및 PCAPNG 파일 열기.
- TCP 및 UDP 스트림 따라가기.
- 패킷을 PCAP 또는 PCAPNG로 내보내기.
- TCP Viewer MCP로 AI 에이전트에게 캡처에 대해 질문하기.
tcpviewer-cli로 캡처, 패킷 쿼리, 파일, 라이선스, 설정 자동화.- 전체 소스 코드 검토.
간편한 패킷 캡처
- 네트워크 인터페이스 선택.
- 클릭 한 번으로 시작 또는 중지.
- 복잡한 캡처도 읽기 쉽게 유지.
TCP Viewer MCP
- TCP Viewer를 Codex 또는 다른 MCP 클라이언트에 연결.
- 캡처 상태 확인.
- 네트워크 인터페이스 목록 표시.
- 간단한 프롬프트로 패킷 찾기.
- TCP Viewer PRO에서 사용 가능.
캡처 파일 열기
- PCAP 또는 PCAPNG 파일을 드래그하여 가져오기.
- 패킷을 즉시 미리보기.
- 실시간 캡처와 동일한 뷰 사용.
TCP 및 UDP 스트림 따라가기
- TCP 대화를 재구성하거나 UDP 데이터그램을 캡처 순서대로 보기.
- 패킷 메뉴 또는 도구 메뉴에서 스트림 열기.
- 양방향을 함께 표시.
- 클라이언트 또는 서버 데이터만 표시.
- 텍스트와 16진수 간 전환.
- 스트림 검색.
- 원본 패킷으로 돌아가기.
트래픽 그룹화
- 앱별로 패킷 그룹화.
- 도메인별로 패킷 그룹화.
- IP 주소별로 패킷 그룹화.
- 필요한 트래픽으로 바로 이동.
프로토콜 필터
- 일반적인 프로토콜에 빠른 필터 사용.
- 텍스트 검색과 필터 결합.
- 유용한 패킷에 빠르게 집중.
캡처 내보내기
- 전체, 필터링된 또는 선택된 패킷 내보내기.
- PCAP 또는 PCAPNG로 저장.
- 결과를 다른 패킷 도구에서 열기.
패킷 세부 정보
- Wireshark 수준의 프로토콜 트리 읽기.
- 필드 이름과 값 검사.
- 필드를 원시 바이트와 일치시키기.
- 패킷 세부 정보 검색.
오픈 소스
- GPL-2.0-or-later에 따라 라이선스됨.
- 캡처 파이프라인 검토.
- 패킷 디코딩 검토.
- 네이티브 macOS 인터페이스 검토.
- 이슈 보고 또는 풀 리퀘스트 보내기.

Proxyman 팀이 제작
- Proxyman과 Tiny Shield를 만든 팀이 제작.
- macOS를 위해 제작.
- 프라이버시와 명확한 네트워크 디버깅에 중점.

요구 사항
TCP Viewer를 실행하려면:
- Apple Silicon Mac.
- macOS 15 이상.
TCP Viewer를 빌드하려면:
- Xcode 16 이상.
- Git.
- CMake, Ninja, Meson, pkg-config, autotools.
brew install cmake ninja meson pkg-config autoconf automake libtool
설정
서브모듈과 함께 클론합니다. 그런 다음 고정된 Wireshark 의존성을 부트스트랩합니다.
git clone --recurse-submodules <repo-url>
cd TCPViewer
cp Config/TCPViewer.local.xcconfig.example Config/TCPViewer.local.xcconfig
./scripts/bootstrap-wireshark.sh
서브모듈 없이 이미 클론하셨나요?
git submodule update --init --recursive
./scripts/bootstrap-wireshark.sh
부트스트랩 스크립트:
- 먼저
scripts/bootstrap-wireshark-deps.sh를 실행합니다. - 소스에서 Wireshark의 런타임 라이브러리를 빌드합니다.
Vendor/.install/wireshark-deps에 기록합니다.- macOS 15를 배포 대상으로 사용합니다.
- 빌드 도구에만 Homebrew를 사용합니다.
- Homebrew bottle dylib을 릴리스에 복사하지 않습니다.
로컬 서명, appcast, Sparkle, Sentry, 릴리스 값을 Git에 보관하지 마세요. Config/TCPViewer.local.xcconfig, .env, 환경 변수 또는 Keychain 기반 도구를 사용하세요.
실행
Xcode에서:
TCPViewer.xcodeproj를 엽니다.TCPViewer스킴을 선택합니다.My Mac을 선택합니다.- Run을 누릅니다.
명령줄 빌드:
xcodebuild -project TCPViewer.xcodeproj -scheme TCPViewer build
Xcode가 서명을 요청하면 TCPViewer와 PcapPlusPlusCore에 대한 개발 팀을 선택하세요.
테스트
xcodebuild test \
-project TCPViewer.xcodeproj \
-scheme TCPViewer \
-destination 'platform=macOS'
릴리스
릴리스 스크립트는 다음을 수행할 수 있습니다:
- 앱을 빌드하고 공증합니다.
- Sparkle 업데이트에 서명합니다.
- 파일을 Cloudflare R2에 업로드합니다.
- 백엔드에 릴리스를 게시합니다.
최초 설정:
npm install
bundle install
gh auth login
.env.example에서 로컬 .env를 만듭니다. 필요한 릴리스 값을 추가합니다. 실제 시크릿을 절대 커밋하지 마세요.
.env에서 주석에는 #을 사용하세요. sentry-cli는 // 주석을 허용하지 않습니다.
프로덕션 릴리스의 경우 ReleaseNote.json에 일치하는 항목을 추가합니다. 그런 다음 실행합니다:
npm run release
요청 시 beta 또는 production을 선택합니다.
프로덕션 릴리스는 또한:
- Sparkle appcast를 생성합니다.
v<version>태그를 푸시합니다.- GitHub 릴리스를 게시합니다.
최신 공개 프로덕션 릴리스에 대한 Homebrew Cask 풀 리퀘스트만 생성하려면 make build를 실행하고 Homebrew Cask PR from latest release를 선택합니다. 직접 명령을 실행할 수도 있습니다:
npm run release:homebrew
이것은 공개 DMG를 GitHub 릴리스 자산과 대조 검증하고, ProxymanApp/homebrew-cask에 브랜치를 푸시하고, Homebrew/homebrew-cask에 기여 풀 리퀘스트를 엽니다.
아티팩트는 다음 위치에 기록됩니다:
~/Desktop/tcpviewer-production/
라이선스
TCP Viewer는 GPL-2.0-or-later에 따라 라이선스됩니다. 이는 Wireshark 라이브러리 사용과 일치합니다.
- 전체 GPL 텍스트는
COPYING을 참조하세요. - 서드파티 고지는
THIRD_PARTY_NOTICES.md를 참조하세요. - 바이너리 릴리스 소스 조건은
SOURCE_CODE_OFFER.md를 참조하세요.
감사의 글
Wireshark는 Wireshark Foundation의 상표입니다. TCP Viewer는 Wireshark Foundation과 제휴하거나 보증받지 않습니다.





