From 9363737ab20cf83c6a0b69914df38223ab87d4ec Mon Sep 17 00:00:00 2001 From: theteacat Date: Fri, 9 May 2025 17:30:47 +0100 Subject: [PATCH] ignore packets not destined for or originating from a service IP --- src/requestAndResponse.go | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/requestAndResponse.go b/src/requestAndResponse.go index 186a182..28384ce 100644 --- a/src/requestAndResponse.go +++ b/src/requestAndResponse.go @@ -2,6 +2,7 @@ package main import ( "log" + "log/slog" "net/http" "time" @@ -58,6 +59,22 @@ func (s *httpRequestAndResponseStreamer) start() { if !ok { continue } + net, ok := packet.NetworkLayer().(*layers.IPv4) + if !ok { + continue + } + src := net.SrcIP.String() + dst := net.DstIP.String() + if s.ipManager != nil && !(s.ipManager.isServiceIP(dst) || s.ipManager.isServiceIP(src)) { + slog.Debug( + "Ignoring packet not destined for or originating from a service IP:", + "Src", src, + "Dst", dst, + "SrcPort", tcp.SrcPort.String(), + "DstPort", tcp.DstPort.String(), + ) + continue + } assembler.AssembleWithTimestamp(packet.NetworkLayer().NetworkFlow(), tcp, packet.Metadata().Timestamp) case <-ticker: assembler.FlushOlderThan(time.Now().Add(-2 * time.Minute))