From b8984f25a0580ca3e240256400493419cce2deae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Luis=20Monta=C3=B1es=20Ojados?= Date: Mon, 19 Jan 2026 15:26:01 +0100 Subject: [PATCH] fix: Add -nn flag to tcpdump commands to resolve macOS capture issues --- internal/capture/capturer.go | 3 ++- internal/capture/local.go | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/internal/capture/capturer.go b/internal/capture/capturer.go index d128dbd..10accb1 100644 --- a/internal/capture/capturer.go +++ b/internal/capture/capturer.go @@ -55,7 +55,8 @@ func (c *Capturer) Start(iface string, port int) error { // -l: line buffered for real-time output // -A: print packet payload in ASCII // -s 0: capture full packets - cmd := fmt.Sprintf("sudo tcpdump -l -A -s 0 -i %s port %d 2>/dev/null", iface, port) + // -nn: don't resolve hostnames or port names + cmd := fmt.Sprintf("sudo tcpdump -l -nn -A -s 0 -i %s port %d 2>/dev/null", iface, port) stdout, stderr, cleanup, err := c.sshClient.StartCommand(cmd) if err != nil { diff --git a/internal/capture/local.go b/internal/capture/local.go index ba5ec6d..da8a56c 100644 --- a/internal/capture/local.go +++ b/internal/capture/local.go @@ -46,7 +46,8 @@ func (c *LocalCapturer) Start(iface string, port int) error { // -l: line buffered // -A: print packet payload in ASCII // -s 0: capture full packets - args := []string{"-l", "-A", "-s", "0", "-i", iface, "port", fmt.Sprintf("%d", port)} + // -nn: don't resolve hostnames or port names + args := []string{"-l", "-nn", "-A", "-s", "0", "-i", iface, "port", fmt.Sprintf("%d", port)} c.cmd = exec.CommandContext(ctx, "tcpdump", args...) stdout, err := c.cmd.StdoutPipe()