From 211375e04645968d589334ce312b0a8a76dd7309 Mon Sep 17 00:00:00 2001 From: Maddie Zhan Date: Wed, 11 Mar 2020 12:37:42 +0800 Subject: [PATCH] Fix a bug where IPv6 address are not shown correctly in ISP info --- web/web.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/web/web.go b/web/web.go index 6eb0623..56aa5fc 100644 --- a/web/web.go +++ b/web/web.go @@ -117,13 +117,13 @@ func getIP(w http.ResponseWriter, r *http.Request) { var ret results.Result clientIP := r.RemoteAddr - if strings.Contains(clientIP, ":") { - ip, _, _ := net.SplitHostPort(r.RemoteAddr) + clientIP = strings.ReplaceAll(clientIP, "::ffff:", "") + + ip, _, err := net.SplitHostPort(r.RemoteAddr) + if err == nil { clientIP = ip } - strings.ReplaceAll(clientIP, "::ffff:", "") - isSpecialIP := true switch { case clientIP == "::1":