From e6480c84e045c0037c07398a4cca4709c39156fe Mon Sep 17 00:00:00 2001 From: sjlleo Date: Fri, 27 May 2022 21:14:16 +0800 Subject: [PATCH] =?UTF-8?q?Revert=20"update:=20=E4=BC=98=E5=8C=96=E6=89=93?= =?UTF-8?q?=E5=8D=B0=E9=80=BB=E8=BE=91=EF=BC=8C=E5=BA=9F=E9=99=A4=20realti?= =?UTF-8?q?me=20=E5=8F=82=E6=95=B0"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit 126115c04eb3715e8408dd98c83f3978f2df581f. --- main.go | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/main.go b/main.go index e1df8a3..1f44250 100644 --- a/main.go +++ b/main.go @@ -25,6 +25,7 @@ var maxHops = fSet.Int("m", 30, "Set the max number of hops (max TTL to be reach var dataOrigin = fSet.String("d", "LeoMoeAPI", "Choose IP Geograph Data Provider [LeoMoeAPI, IP.SB, IPInfo, IPInsight, IPAPI.com]") var rdnsenable = fSet.Bool("rdns", false, "Set whether rDNS will be display") var routePath = fSet.Bool("report", false, "Route Path") +var realtimePrint = fSet.Bool("realtime", false, "Output trace results in runtime") var tablePrint = fSet.Bool("table", false, "Output trace results as table") var ver = fSet.Bool("V", false, "Check Version") @@ -104,14 +105,25 @@ func main() { log.Fatalln(err) } - if !(*tcpSYNFlag || *udpPackageFlag) && *tablePrint { - printer.TracerouteTablePrinter(res) - } else if *tcpSYNFlag || *udpPackageFlag { - printer.TraceroutePrinter(res) - } - if *routePath { + // 如果为TCP SYN,也打印路由跟踪结果 + if *tcpSYNFlag { + printer.TracerouteTablePrinter(res) + } r := reporter.New(res, ip.String()) r.Print() + return + } + + if m == trace.ICMPTrace && *tablePrint { + printer.TracerouteTablePrinter(res) + } + + if m == trace.TCPTrace || m == trace.UDPTrace { + if *realtimePrint { + printer.TraceroutePrinter(res) + } else { + printer.TracerouteTablePrinter(res) + } } }