
La mejor aplicación de macOS para ver cada paquete claramente en tu Mac. Alternativa a Wireshark
TCP Viewer es un visor de paquetes para macOS para capturas en vivo y archivos de captura. Usa AppKit para la aplicación principal, la libpcap del sistema para la captura y bibliotecas integradas de Wireshark para los detalles profundos de los paquetes.
brew install cmake ninja meson pkg-config autoconf automake libtool
Clona con submódulos e inicializa la dependencia fijada de Wireshark:
git clone --recurse-submodules <repo-url>
cd TCPViewer
cp Config/TCPViewer.local.xcconfig.example Config/TCPViewer.local.xcconfig
./scripts/bootstrap-wireshark.sh
Si ya clonaste sin submódulos:
git submodule update --init --recursive
./scripts/bootstrap-wireshark.sh
scripts/bootstrap-wireshark.sh ejecuta primero scripts/bootstrap-wireshark-deps.sh, que compila las bibliotecas de tiempo de ejecución empaquetadas de Wireshark desde el código fuente en Vendor/.install/wireshark-deps con macOS 15.0 como objetivo de despliegue. Homebrew se usa solo para herramientas de compilación; los paquetes de lanzamiento no deben copiar las dylibs de las botellas de Homebrew desde /opt/homebrew o /usr/local.
Mantén los valores locales de firma, appcast, Sparkle, Sentry y lanzamiento fuera de Git. Usa archivos locales ignorados como Config/TCPViewer.local.xcconfig, .env, variables de entorno del shell o herramientas respaldadas por el llavero.
En Xcode:
TCPViewer.xcodeproj.TCPViewer.My Mac.Compilación desde línea de comandos:
xcodebuild -project TCPViewer.xcodeproj -scheme TCPViewer build
Si Xcode pide firma, selecciona un equipo de desarrollo para TCPViewer y PcapPlusPlusCore.
xcodebuild test \
-project TCPViewer.xcodeproj \
-scheme TCPViewer \
-destination 'platform=macOS'
Los lanzamientos de TCP Viewer se compilan, notarizan, firman para Sparkle, suben a Cloudflare R2 y opcionalmente se publican en el backend de lanzamiento mediante el script de lanzamiento.
Configuración inicial del lanzamiento:
npm install
bundle install
gh auth login
Crea un .env local a partir de .env.example y completa los valores de lanzamiento requeridos. Nunca confirmes secretos reales. Mantén los comentarios en .env como comentarios # porque sentry-cli no acepta comentarios // cuando carga el archivo.
Para lanzamientos de producción, agrega una entrada correspondiente a ReleaseNote.json, luego ejecuta:
npm run release
Elige beta o production cuando se te solicite. Los lanzamientos de producción también crean el appcast de Sparkle, empujan la etiqueta v<version> y publican el lanzamiento de GitHub. Los artefactos se escriben en:
~/Desktop/tcpviewer-production/
TCP Viewer tiene licencia GPL-2.0 o posterior. Esto coincide con la integración de Wireshark de la aplicación: libwireshark, libwiretap y libwsutil son bibliotecas de Wireshark cubiertas por GPL.
El texto completo de GPL está en COPYING, los avisos de terceros están en THIRD_PARTY_NOTICES.md y los términos de disponibilidad del código fuente para lanzamientos binarios están en SOURCE_CODE_OFFER.md.
TCP Viewer se basa en Wireshark para la disección de paquetes y en HexFiend para el visor hexadecimal integrado. Consulta THIRD_PARTY_NOTICES.md para más detalles.