package utils12import "strings"34// MaskIP anonymizes middle segments of an IP address.5func MaskIP(ip string) string {6if ip == "" {7return ""8}9if strings.Contains(ip, ":") {10parts := strings.Split(ip, ":")11if len(parts) > 2 {12for i := 1; i < len(parts)-1; i++ {13if parts[i] != "" {14parts[i] = "*"15}16}17return strings.Join(parts, ":")18}19return ip20}21parts := strings.Split(ip, ".")22if len(parts) == 4 {23for i := 1; i < len(parts)-1; i++ {24parts[i] = "*"25}26return strings.Join(parts, ".")27}28return ip29}303132