Comments (4)
Current WIP:
trip -u google.com --tcp -m dot -C 10 | dot -Tpng > path.png
Produces:
from trippy.
Coming back from #875
it looks nice in the example you linked to. Is that example produced as a DOT file? Do you have the DOT file for reference?
I have just done a fresh run, here you go, see below.
I think to do this these reports should become subcommand such that multiple per-subcommand flags could be added
I would do "both". Having a switch to activate in one go all the opiniated default. And having the others switchs if people want to add only what they need.
from trippy.
### Scapy Multi-Traceroute (MTR) DOT Graph Results (2023-12-20 17:11:46.559516) ###
digraph mtr {
graph [bgcolor=transparent,ranksep=0.75];
node [shape="ellipse",fontname="Sans-Serif",fontsize=11,color="black",gradientangle=270,fillcolor="white:#a0a0a0",style="filled"];
### ASN Clusters ###
subgraph cluster_15169 {
tooltip="AS: 15169 - [Google]";
color="#608686";
fillcolor="#60868630";
style="filled,rounded";
node [color="#608686",gradientangle=270,fillcolor="white:#608686",style="filled"];
fontsize=10;
fontname="Sans-Serif";
label=<<TABLE BORDER="0" CELLBORDER="0" CELLSPACING="0"><TR><TD ALIGN="center"><B><FONT POINT-SIZE="11">AS: 15169</FONT></B></TD></TR><TR><TD>[Google]</TD></TR></TABLE>>;
labelloc="t";
penwidth=3;
"74.125.147.10" [tooltip="Hop Host: 74.125.147.10"];
"72.14.204.184" [tooltip="Hop Host: 72.14.204.184"];
"108.170.244.225" [tooltip="Hop Host: 108.170.244.225"];
"142.250.234.41" [tooltip="Hop Host: 142.250.234.41"];
"142.250.234.43" [tooltip="Hop Host: 142.250.234.43"];
"108.170.244.161" [tooltip="Hop Host: 108.170.244.161"];
"72.14.202.232" [tooltip="Hop Host: 72.14.202.232"];
"72.14.218.40" [tooltip="Hop Host: 72.14.218.40"];
"72.14.210.158" [tooltip="Hop Host: 72.14.210.158"];
"72.14.233.77" [tooltip="Hop Host: 72.14.233.77"];
### MTR Target Cluster ###
subgraph cluster_142_250_74_228 {
tooltip="MTR Target: www.google.com";
color="darkgreen";
fontsize=11;
fontname="Sans-Serif";
gradientangle=270;
fillcolor="white:#a0a0a0";
style="filled,rounded";
penwidth=2;
label=<<TABLE BORDER="0" CELLBORDER="0" CELLSPACING="0"><TR><TD ALIGN="center"><B>Target: www.google.com</B></TD></TR><TR><TD><FONT POINT-SIZE="9">Hop Ranges (T1: 1 → 9, T2: 1 → 9, T5: 1 → 9, T6: 1 → 9, T9: 1 → 9, T10: 1 → 9)</FONT></TD></TR></TABLE>>;
labelloc="b";
"142.250.74.228";
}
}
subgraph cluster_6453 {
tooltip="AS: 6453 - [TATA Communications]";
color="#60baba";
fillcolor="#60baba30";
style="filled,rounded";
node [color="#60baba",gradientangle=270,fillcolor="white:#60baba",style="filled"];
fontsize=10;
fontname="Sans-Serif";
label=<<TABLE BORDER="0" CELLBORDER="0" CELLSPACING="0"><TR><TD ALIGN="center"><B><FONT POINT-SIZE="11">AS: 6453</FONT></B></TD></TR><TR><TD>[TATA Communications]</TD></TR></TABLE>>;
labelloc="t";
penwidth=3;
"80.231.245.41" [tooltip="Hop Host: 80.231.245.41"];
"195.219.50.74" [tooltip="Hop Host: 195.219.50.74"];
"80.231.246.13" [tooltip="Hop Host: 80.231.246.13"];
"80.231.246.26" [tooltip="Hop Host: 80.231.246.26"];
}
subgraph cluster_14061 {
tooltip="AS: 14061 - [DigitalOcean]";
color="#60ffff";
fillcolor="#60ffff30";
style="filled,rounded";
node [color="#60ffff",gradientangle=270,fillcolor="white:#60ffff",style="filled"];
fontsize=10;
fontname="Sans-Serif";
label=<<TABLE BORDER="0" CELLBORDER="0" CELLSPACING="0"><TR><TD ALIGN="center"><B><FONT POINT-SIZE="11">AS: 14061</FONT></B></TD></TR><TR><TD>[DigitalOcean]</TD></TR></TABLE>>;
labelloc="t";
penwidth=3;
"Unk8" [tooltip="Hop Host: Unk8"];
"Unk9" [tooltip="Hop Host: Unk9"];
"Unk10" [tooltip="Hop Host: Unk10"];
"Unk15" [tooltip="Hop Host: Unk15"];
"Unk16" [tooltip="Hop Host: Unk16"];
"Unk17" [tooltip="Hop Host: Unk17"];
### MTR Target Cluster ###
subgraph cluster_64_226_122_113 {
tooltip="MTR Target: openwrt.org";
color="darkgreen";
fontsize=11;
fontname="Sans-Serif";
gradientangle=270;
fillcolor="white:#a0a0a0";
style="filled,rounded";
penwidth=2;
label=<<TABLE BORDER="0" CELLBORDER="0" CELLSPACING="0"><TR><TD ALIGN="center"><B>Target: openwrt.org</B></TD></TR><TR><TD><FONT POINT-SIZE="9">Hop Ranges (T3: 1 → 14, T4: 1 → 14, T7: 1 → 14, T8: 1 → 14, T11: 1 → 14, T12: 1 → 14)</FONT></TD></TR></TABLE>>;
labelloc="b";
"64.226.122.113";
}
}
### Probe Target Cluster ###
subgraph cluster_probe_Title {
tooltip="Multi-Traceroute (MTR) Probe: 192.168.1.104";
color="darkorange";
gradientangle=270;
fillcolor="white:#a0a0a0";
style="filled,rounded";
penwidth=3;
fontsize=11;
fontname="Sans-Serif";
label=<<TABLE BORDER="0" CELLBORDER="0" CELLSPACING="0"><TR><TD ALIGN="center"><B>Multi-Traceroute (MTR) Probe</B></TD></TR><TR><TD ALIGN="center"><FONT POINT-SIZE="9">2020-02-18 17:00:04</FONT></TD></TR><TR><TD ALIGN="center"><FONT POINT-SIZE="9">Target: www.google.com (142.250.74.228 → T1, T2, T5, T6, T9, T10)</FONT></TD></TR><TR><TD ALIGN="center"><FONT POINT-SIZE="9">Target: openwrt.org (64.226.122.113 → T3, T4, T7, T8, T11, T12)</FONT></TD></TR></TABLE>>;
labelloc="t";
"192.168.1.104";
}
### Default Gateway Cluster ###
subgraph cluster_default_gateway {
tooltip="Default Gateway Host: 192.168.1.1";
color="goldenrod";
gradientangle=270;
fillcolor="white:#b8860b30";
style="filled,rounded";
penwidth=3;
fontsize=11;
fontname="Sans-Serif";
label=<<TABLE BORDER="0" CELLBORDER="0" CELLSPACING="0" ALIGN="center"><TR><TD><B><FONT POINT-SIZE="9">Default Gateway</FONT></B></TD></TR></TABLE>>;
"192.168.1.1" [shape="diamond",fontname="Sans-Serif",fontsize=11,color="black",gradientangle=270,fillcolor="white:goldenrod",style="rounded,filled",tooltip="Default Gateway Host: 192.168.1.1"];
}
### Probe Begin Traces ###
"192.168.1.104" [shape="record",color="black",gradientangle=270,fillcolor="white:darkorange",style="filled,rounded",label="Probe: 192.168.1.104\nNetwork Interface: lan0|{TCP: http(80)|{<BT1>T1|<BT3>T3|<BT5>T5|<BT7>T7|<BT9>T9|<BT11>T11}}|{TCP: https(443)|{<BT2>T2|<BT4>T4|<BT6>T6|<BT8>T8|<BT10>T10|<BT12>T12}}",tooltip="Begin Host Probe: 192.168.1.104"];
### Target Endpoints ###
"142.250.74.228" [shape="record",color="black",gradientangle=270,fillcolor="#00ff00:#005400",style="filled,rounded",label="Resolved Target\n142.250.74.228|{{<ET1>T1|<ET5>T5|<ET9>T9}|http(80) SA}|{{<ET2>T2|<ET6>T6|<ET10>T10}|https(443) SA}",tooltip="MTR Resolved Target: 142.250.74.228"];
"64.226.122.113" [shape="record",color="black",gradientangle=270,fillcolor="#00ff00:#005400",style="filled,rounded",label="Resolved Target\n64.226.122.113|{{<ET3>T3|<ET7>T7|<ET11>T11}|http(80) SA}|{{<ET4>T4|<ET8>T8|<ET12>T12}|https(443) SA}",tooltip="MTR Resolved Target: 64.226.122.113"];
### Blackholes ###
### ICMP Destination Unreachable Hops ###
### Nodes With Padding ###
"108.170.244.225" [label=<<BR/>108.170.244.225<BR/><FONT POINT-SIZE="8">Padding</FONT>>,shape="box3d",color="black",gradientangle=270,fillcolor="white:red",style="filled,rounded"];
"142.250.234.41" [label=<<BR/>142.250.234.41<BR/><FONT POINT-SIZE="8">Padding</FONT>>,shape="box3d",color="black",gradientangle=270,fillcolor="white:red",style="filled,rounded"];
"142.250.234.43" [label=<<BR/>142.250.234.43<BR/><FONT POINT-SIZE="8">Padding</FONT>>,shape="box3d",color="black",gradientangle=270,fillcolor="white:red",style="filled,rounded"];
"193.252.160.45" [label=<<BR/>193.252.160.45<BR/><FONT POINT-SIZE="8">Padding</FONT>>,shape="box3d",color="black",gradientangle=270,fillcolor="white:red",style="filled,rounded"];
"80.231.245.41" [label=<<BR/>80.231.245.41<BR/><FONT POINT-SIZE="8">Padding</FONT>>,shape="box3d",color="black",gradientangle=270,fillcolor="white:red",style="filled,rounded"];
"195.219.50.74" [label=<<BR/>195.219.50.74<BR/><FONT POINT-SIZE="8">Padding</FONT>>,shape="box3d",color="black",gradientangle=270,fillcolor="white:red",style="filled,rounded"];
"80.231.246.13" [label=<<BR/>80.231.246.13<BR/><FONT POINT-SIZE="8">Padding</FONT>>,shape="box3d",color="black",gradientangle=270,fillcolor="white:red",style="filled,rounded"];
"80.231.246.26" [label=<<BR/>80.231.246.26<BR/><FONT POINT-SIZE="8">Padding</FONT>>,shape="box3d",color="black",gradientangle=270,fillcolor="white:red",style="filled,rounded"];
### Traces ###
### T1 -> ('192.168.1.104', '142.250.74.228', 6, 80) ###
edge [color="#a07070"];
"192.168.1.104":BT1:s -> "192.168.1.1" [label=<<FONT POINT-SIZE="8"> 2.561ms</FONT>>,edgetooltip="Trace: 1:1, 192.168.1.104 -> 192.168.1.1 (RTT: 192.168.1.104 <-> 192.168.1.1 (2.561ms))",labeltooltip="Trace: 1:1, RTT: 192.168.1.104 <-> 192.168.1.1 (2.561ms)"];
"192.168.1.1" -> "Unk0" [edgetooltip="Trace: 1:2, 192.168.1.1 -> Unk0"];
"Unk0" -> "193.253.94.198" [label=<<FONT POINT-SIZE="8"> 6.709ms</FONT>>,edgetooltip="Trace: 1:3, Unk0 -> 193.253.94.198 (RTT: 192.168.1.104 <-> 193.253.94.198 (6.709ms))",labeltooltip="Trace: 1:3, RTT: 192.168.1.104 <-> 193.253.94.198 (6.709ms)"];
"193.253.94.198" -> "193.252.160.53" [label=<<FONT POINT-SIZE="8"> 28.852ms</FONT>>,edgetooltip="Trace: 1:4, 193.253.94.198 -> 193.252.160.53 (RTT: 192.168.1.104 <-> 193.252.160.53 (28.852ms))",labeltooltip="Trace: 1:4, RTT: 192.168.1.104 <-> 193.252.160.53 (28.852ms)"];
"193.252.160.53" -> "Unk1" [edgetooltip="Trace: 1:5, 193.252.160.53 -> Unk1"];
"Unk1" -> "74.125.147.10" [label=<<FONT POINT-SIZE="8"> 18.251ms</FONT>>,edgetooltip="Trace: 1:6, Unk1 -> 74.125.147.10 (RTT: 192.168.1.104 <-> 74.125.147.10 (18.251ms))",labeltooltip="Trace: 1:6, RTT: 192.168.1.104 <-> 74.125.147.10 (18.251ms)"];
"74.125.147.10" -> "108.170.244.225" [label=<<FONT POINT-SIZE="8"> 16.814ms</FONT>>,edgetooltip="Trace: 1:7, 74.125.147.10 -> 108.170.244.225 (RTT: 192.168.1.104 <-> 108.170.244.225 (16.814ms))",labeltooltip="Trace: 1:7, RTT: 192.168.1.104 <-> 108.170.244.225 (16.814ms)"];
"108.170.244.225" -> "142.250.234.41" [label=<<FONT POINT-SIZE="8"> 162.772ms</FONT>>,edgetooltip="Trace: 1:8, 108.170.244.225 -> 142.250.234.41 (RTT: 192.168.1.104 <-> 142.250.234.41 (162.772ms))",labeltooltip="Trace: 1:8, RTT: 192.168.1.104 <-> 142.250.234.41 (162.772ms)"];
"142.250.234.41" -> "142.250.74.228":ET1:n [style="solid",label=<<FONT POINT-SIZE="8"> 161.942ms</FONT>>,edgetooltip="Trace: 1:9, 142.250.234.41 -> 142.250.74.228 (RTT: 192.168.1.104 <-> 142.250.74.228 (161.942ms))",labeltooltip="Trace: 1:9, RTT: 192.168.1.104 <-> 142.250.74.228 (161.942ms)"];
### T2 -> ('192.168.1.104', '142.250.74.228', 6, 443) ###
edge [color="#a04040"];
"192.168.1.104":BT2:s -> "192.168.1.1" [label=<<FONT POINT-SIZE="8"> 2.865ms</FONT>>,edgetooltip="Trace: 2:1, 192.168.1.104 -> 192.168.1.1 (RTT: 192.168.1.104 <-> 192.168.1.1 (2.865ms))",labeltooltip="Trace: 2:1, RTT: 192.168.1.104 <-> 192.168.1.1 (2.865ms)"];
"192.168.1.1" -> "Unk2" [edgetooltip="Trace: 2:2, 192.168.1.1 -> Unk2"];
"Unk2" -> "193.253.94.198" [label=<<FONT POINT-SIZE="8"> 30.754ms</FONT>>,edgetooltip="Trace: 2:3, Unk2 -> 193.253.94.198 (RTT: 192.168.1.104 <-> 193.253.94.198 (30.754ms))",labeltooltip="Trace: 2:3, RTT: 192.168.1.104 <-> 193.253.94.198 (30.754ms)"];
"193.253.94.198" -> "193.252.160.53" [label=<<FONT POINT-SIZE="8"> 20.723ms</FONT>>,edgetooltip="Trace: 2:4, 193.253.94.198 -> 193.252.160.53 (RTT: 192.168.1.104 <-> 193.252.160.53 (20.723ms))",labeltooltip="Trace: 2:4, RTT: 192.168.1.104 <-> 193.252.160.53 (20.723ms)"];
"193.252.160.53" -> "Unk3" [edgetooltip="Trace: 2:5, 193.252.160.53 -> Unk3"];
"Unk3" -> "72.14.204.184" [label=<<FONT POINT-SIZE="8"> 17.435ms</FONT>>,edgetooltip="Trace: 2:6, Unk3 -> 72.14.204.184 (RTT: 192.168.1.104 <-> 72.14.204.184 (17.435ms))",labeltooltip="Trace: 2:6, RTT: 192.168.1.104 <-> 72.14.204.184 (17.435ms)"];
"72.14.204.184" -> "108.170.244.225" [label=<<FONT POINT-SIZE="8"> 171.199ms</FONT>>,edgetooltip="Trace: 2:7, 72.14.204.184 -> 108.170.244.225 (RTT: 192.168.1.104 <-> 108.170.244.225 (171.199ms))",labeltooltip="Trace: 2:7, RTT: 192.168.1.104 <-> 108.170.244.225 (171.199ms)"];
"108.170.244.225" -> "142.250.234.43" [label=<<FONT POINT-SIZE="8"> 169.621ms</FONT>>,edgetooltip="Trace: 2:8, 108.170.244.225 -> 142.250.234.43 (RTT: 192.168.1.104 <-> 142.250.234.43 (169.621ms))",labeltooltip="Trace: 2:8, RTT: 192.168.1.104 <-> 142.250.234.43 (169.621ms)"];
"142.250.234.43" -> "142.250.74.228":ET2:n [style="solid",label=<<FONT POINT-SIZE="8"> 163.556ms</FONT>>,edgetooltip="Trace: 2:9, 142.250.234.43 -> 142.250.74.228 (RTT: 192.168.1.104 <-> 142.250.74.228 (163.556ms))",labeltooltip="Trace: 2:9, RTT: 192.168.1.104 <-> 142.250.74.228 (163.556ms)"];
### T3 -> ('192.168.1.104', '64.226.122.113', 6, 80) ###
edge [color="#a02020"];
"192.168.1.104":BT3:s -> "192.168.1.1" [label=<<FONT POINT-SIZE="8"> 3.157ms</FONT>>,edgetooltip="Trace: 3:1, 192.168.1.104 -> 192.168.1.1 (RTT: 192.168.1.104 <-> 192.168.1.1 (3.157ms))",labeltooltip="Trace: 3:1, RTT: 192.168.1.104 <-> 192.168.1.1 (3.157ms)"];
"192.168.1.1" -> "Unk4" [edgetooltip="Trace: 3:2, 192.168.1.1 -> Unk4"];
"Unk4" -> "193.253.94.198" [label=<<FONT POINT-SIZE="8"> 7.241ms</FONT>>,edgetooltip="Trace: 3:3, Unk4 -> 193.253.94.198 (RTT: 192.168.1.104 <-> 193.253.94.198 (7.241ms))",labeltooltip="Trace: 3:3, RTT: 192.168.1.104 <-> 193.253.94.198 (7.241ms)"];
"193.253.94.198" -> "193.252.160.53" [label=<<FONT POINT-SIZE="8"> 55.143ms</FONT>>,edgetooltip="Trace: 3:4, 193.253.94.198 -> 193.252.160.53 (RTT: 192.168.1.104 <-> 193.252.160.53 (55.143ms))",labeltooltip="Trace: 3:4, RTT: 192.168.1.104 <-> 193.252.160.53 (55.143ms)"];
"193.252.160.53" -> "193.252.160.45" [label=<<FONT POINT-SIZE="8"> 39.600ms</FONT>>,edgetooltip="Trace: 3:5, 193.252.160.53 -> 193.252.160.45 (RTT: 192.168.1.104 <-> 193.252.160.45 (39.600ms))",labeltooltip="Trace: 3:5, RTT: 192.168.1.104 <-> 193.252.160.45 (39.600ms)"];
"193.252.160.45" -> "Unk5" [edgetooltip="Trace: 3:6, 193.252.160.45 -> Unk5"];
"Unk5" -> "Unk6" [edgetooltip="Trace: 3:7, Unk5 -> Unk6"];
"Unk6" -> "Unk7" [edgetooltip="Trace: 3:8, Unk6 -> Unk7"];
"Unk7" -> "80.231.245.41" [label=<<FONT POINT-SIZE="8"> 97.607ms</FONT>>,edgetooltip="Trace: 3:9, Unk7 -> 80.231.245.41 (RTT: 192.168.1.104 <-> 80.231.245.41 (97.607ms))",labeltooltip="Trace: 3:9, RTT: 192.168.1.104 <-> 80.231.245.41 (97.607ms)"];
"80.231.245.41" -> "195.219.50.74" [label=<<FONT POINT-SIZE="8"> 67.035ms</FONT>>,edgetooltip="Trace: 3:10, 80.231.245.41 -> 195.219.50.74 (RTT: 192.168.1.104 <-> 195.219.50.74 (67.035ms))",labeltooltip="Trace: 3:10, RTT: 192.168.1.104 <-> 195.219.50.74 (67.035ms)"];
"195.219.50.74" -> "Unk8" [edgetooltip="Trace: 3:11, 195.219.50.74 -> Unk8"];
"Unk8" -> "Unk9" [edgetooltip="Trace: 3:12, Unk8 -> Unk9"];
"Unk9" -> "Unk10" [edgetooltip="Trace: 3:13, Unk9 -> Unk10"];
"Unk10" -> "64.226.122.113":ET3:n [style="solid",label=<<FONT POINT-SIZE="8"> 26.056ms</FONT>>,edgetooltip="Trace: 3:14, Unk10 -> 64.226.122.113 (RTT: 192.168.1.104 <-> 64.226.122.113 (26.056ms))",labeltooltip="Trace: 3:14, RTT: 192.168.1.104 <-> 64.226.122.113 (26.056ms)"];
### T4 -> ('192.168.1.104', '64.226.122.113', 6, 443) ###
edge [color="#7070a0"];
"192.168.1.104":BT4:s -> "192.168.1.1" [label=<<FONT POINT-SIZE="8"> 28.520ms</FONT>>,edgetooltip="Trace: 4:1, 192.168.1.104 -> 192.168.1.1 (RTT: 192.168.1.104 <-> 192.168.1.1 (28.520ms))",labeltooltip="Trace: 4:1, RTT: 192.168.1.104 <-> 192.168.1.1 (28.520ms)"];
"192.168.1.1" -> "Unk11" [edgetooltip="Trace: 4:2, 192.168.1.1 -> Unk11"];
"Unk11" -> "193.253.94.198" [label=<<FONT POINT-SIZE="8"> 75.009ms</FONT>>,edgetooltip="Trace: 4:3, Unk11 -> 193.253.94.198 (RTT: 192.168.1.104 <-> 193.253.94.198 (75.009ms))",labeltooltip="Trace: 4:3, RTT: 192.168.1.104 <-> 193.253.94.198 (75.009ms)"];
"193.253.94.198" -> "193.252.160.53" [label=<<FONT POINT-SIZE="8"> 45.661ms</FONT>>,edgetooltip="Trace: 4:4, 193.253.94.198 -> 193.252.160.53 (RTT: 192.168.1.104 <-> 193.252.160.53 (45.661ms))",labeltooltip="Trace: 4:4, RTT: 192.168.1.104 <-> 193.252.160.53 (45.661ms)"];
"193.252.160.53" -> "193.252.160.45" [label=<<FONT POINT-SIZE="8"> 33.659ms</FONT>>,edgetooltip="Trace: 4:5, 193.252.160.53 -> 193.252.160.45 (RTT: 192.168.1.104 <-> 193.252.160.45 (33.659ms))",labeltooltip="Trace: 4:5, RTT: 192.168.1.104 <-> 193.252.160.45 (33.659ms)"];
"193.252.160.45" -> "Unk12" [edgetooltip="Trace: 4:6, 193.252.160.45 -> Unk12"];
"Unk12" -> "Unk13" [edgetooltip="Trace: 4:7, Unk12 -> Unk13"];
"Unk13" -> "Unk14" [edgetooltip="Trace: 4:8, Unk13 -> Unk14"];
"Unk14" -> "80.231.245.41" [label=<<FONT POINT-SIZE="8"> 76.770ms</FONT>>,edgetooltip="Trace: 4:9, Unk14 -> 80.231.245.41 (RTT: 192.168.1.104 <-> 80.231.245.41 (76.770ms))",labeltooltip="Trace: 4:9, RTT: 192.168.1.104 <-> 80.231.245.41 (76.770ms)"];
"80.231.245.41" -> "195.219.50.74" [label=<<FONT POINT-SIZE="8"> 60.944ms</FONT>>,edgetooltip="Trace: 4:10, 80.231.245.41 -> 195.219.50.74 (RTT: 192.168.1.104 <-> 195.219.50.74 (60.944ms))",labeltooltip="Trace: 4:10, RTT: 192.168.1.104 <-> 195.219.50.74 (60.944ms)"];
"195.219.50.74" -> "Unk15" [edgetooltip="Trace: 4:11, 195.219.50.74 -> Unk15"];
"Unk15" -> "Unk16" [edgetooltip="Trace: 4:12, Unk15 -> Unk16"];
"Unk16" -> "Unk17" [edgetooltip="Trace: 4:13, Unk16 -> Unk17"];
"Unk17" -> "64.226.122.113":ET4:n [style="solid",label=<<FONT POINT-SIZE="8"> 25.974ms</FONT>>,edgetooltip="Trace: 4:14, Unk17 -> 64.226.122.113 (RTT: 192.168.1.104 <-> 64.226.122.113 (25.974ms))",labeltooltip="Trace: 4:14, RTT: 192.168.1.104 <-> 64.226.122.113 (25.974ms)"];
### T5 -> ('192.168.1.104', '142.250.74.228', 6, 80) ###
edge [color="#704070"];
"192.168.1.104":BT5:s -> "192.168.1.1" [label=<<FONT POINT-SIZE="8"> 3.353ms</FONT>>,edgetooltip="Trace: 5:1, 192.168.1.104 -> 192.168.1.1 (RTT: 192.168.1.104 <-> 192.168.1.1 (3.353ms))",labeltooltip="Trace: 5:1, RTT: 192.168.1.104 <-> 192.168.1.1 (3.353ms)"];
"192.168.1.1" -> "Unk18" [edgetooltip="Trace: 5:2, 192.168.1.1 -> Unk18"];
"Unk18" -> "193.253.94.198" [label=<<FONT POINT-SIZE="8"> 149.808ms</FONT>>,edgetooltip="Trace: 5:3, Unk18 -> 193.253.94.198 (RTT: 192.168.1.104 <-> 193.253.94.198 (149.808ms))",labeltooltip="Trace: 5:3, RTT: 192.168.1.104 <-> 193.253.94.198 (149.808ms)"];
"193.253.94.198" -> "193.252.160.53" [label=<<FONT POINT-SIZE="8"> 132.370ms</FONT>>,edgetooltip="Trace: 5:4, 193.253.94.198 -> 193.252.160.53 (RTT: 192.168.1.104 <-> 193.252.160.53 (132.370ms))",labeltooltip="Trace: 5:4, RTT: 192.168.1.104 <-> 193.252.160.53 (132.370ms)"];
"193.252.160.53" -> "Unk19" [edgetooltip="Trace: 5:5, 193.252.160.53 -> Unk19"];
"Unk19" -> "72.14.202.232" [label=<<FONT POINT-SIZE="8"> 89.702ms</FONT>>,edgetooltip="Trace: 5:6, Unk19 -> 72.14.202.232 (RTT: 192.168.1.104 <-> 72.14.202.232 (89.702ms))",labeltooltip="Trace: 5:6, RTT: 192.168.1.104 <-> 72.14.202.232 (89.702ms)"];
"72.14.202.232" -> "108.170.244.161" [label=<<FONT POINT-SIZE="8"> 74.415ms</FONT>>,edgetooltip="Trace: 5:7, 72.14.202.232 -> 108.170.244.161 (RTT: 192.168.1.104 <-> 108.170.244.161 (74.415ms))",labeltooltip="Trace: 5:7, RTT: 192.168.1.104 <-> 108.170.244.161 (74.415ms)"];
"108.170.244.161" -> "142.250.234.43" [label=<<FONT POINT-SIZE="8"> 51.894ms</FONT>>,edgetooltip="Trace: 5:8, 108.170.244.161 -> 142.250.234.43 (RTT: 192.168.1.104 <-> 142.250.234.43 (51.894ms))",labeltooltip="Trace: 5:8, RTT: 192.168.1.104 <-> 142.250.234.43 (51.894ms)"];
"142.250.234.43" -> "142.250.74.228":ET5:n [style="solid",label=<<FONT POINT-SIZE="8"> 33.466ms</FONT>>,edgetooltip="Trace: 5:9, 142.250.234.43 -> 142.250.74.228 (RTT: 192.168.1.104 <-> 142.250.74.228 (33.466ms))",labeltooltip="Trace: 5:9, RTT: 192.168.1.104 <-> 142.250.74.228 (33.466ms)"];
### T6 -> ('192.168.1.104', '142.250.74.228', 6, 443) ###
edge [color="#702040"];
"192.168.1.104":BT6:s -> "192.168.1.1" [label=<<FONT POINT-SIZE="8"> 2.392ms</FONT>>,edgetooltip="Trace: 6:1, 192.168.1.104 -> 192.168.1.1 (RTT: 192.168.1.104 <-> 192.168.1.1 (2.392ms))",labeltooltip="Trace: 6:1, RTT: 192.168.1.104 <-> 192.168.1.1 (2.392ms)"];
"192.168.1.1" -> "Unk20" [edgetooltip="Trace: 6:2, 192.168.1.1 -> Unk20"];
"Unk20" -> "193.253.94.198" [label=<<FONT POINT-SIZE="8"> 140.917ms</FONT>>,edgetooltip="Trace: 6:3, Unk20 -> 193.253.94.198 (RTT: 192.168.1.104 <-> 193.253.94.198 (140.917ms))",labeltooltip="Trace: 6:3, RTT: 192.168.1.104 <-> 193.253.94.198 (140.917ms)"];
"193.253.94.198" -> "193.252.160.53" [label=<<FONT POINT-SIZE="8"> 113.681ms</FONT>>,edgetooltip="Trace: 6:4, 193.253.94.198 -> 193.252.160.53 (RTT: 192.168.1.104 <-> 193.252.160.53 (113.681ms))",labeltooltip="Trace: 6:4, RTT: 192.168.1.104 <-> 193.252.160.53 (113.681ms)"];
"193.252.160.53" -> "Unk21" [edgetooltip="Trace: 6:5, 193.252.160.53 -> Unk21"];
"Unk21" -> "72.14.202.232" [label=<<FONT POINT-SIZE="8"> 82.061ms</FONT>>,edgetooltip="Trace: 6:6, Unk21 -> 72.14.202.232 (RTT: 192.168.1.104 <-> 72.14.202.232 (82.061ms))",labeltooltip="Trace: 6:6, RTT: 192.168.1.104 <-> 72.14.202.232 (82.061ms)"];
"72.14.202.232" -> "108.170.244.161" [label=<<FONT POINT-SIZE="8"> 58.330ms</FONT>>,edgetooltip="Trace: 6:7, 72.14.202.232 -> 108.170.244.161 (RTT: 192.168.1.104 <-> 108.170.244.161 (58.330ms))",labeltooltip="Trace: 6:7, RTT: 192.168.1.104 <-> 108.170.244.161 (58.330ms)"];
"108.170.244.161" -> "142.250.234.41" [label=<<FONT POINT-SIZE="8"> 45.056ms</FONT>>,edgetooltip="Trace: 6:8, 108.170.244.161 -> 142.250.234.41 (RTT: 192.168.1.104 <-> 142.250.234.41 (45.056ms))",labeltooltip="Trace: 6:8, RTT: 192.168.1.104 <-> 142.250.234.41 (45.056ms)"];
"142.250.234.41" -> "142.250.74.228":ET6:n [style="solid",label=<<FONT POINT-SIZE="8"> 28.591ms</FONT>>,edgetooltip="Trace: 6:9, 142.250.234.41 -> 142.250.74.228 (RTT: 192.168.1.104 <-> 142.250.74.228 (28.591ms))",labeltooltip="Trace: 6:9, RTT: 192.168.1.104 <-> 142.250.74.228 (28.591ms)"];
### T7 -> ('192.168.1.104', '64.226.122.113', 6, 80) ###
edge [color="#70a020"];
"192.168.1.104":BT7:s -> "192.168.1.1" [label=<<FONT POINT-SIZE="8"> 3.698ms</FONT>>,edgetooltip="Trace: 7:1, 192.168.1.104 -> 192.168.1.1 (RTT: 192.168.1.104 <-> 192.168.1.1 (3.698ms))",labeltooltip="Trace: 7:1, RTT: 192.168.1.104 <-> 192.168.1.1 (3.698ms)"];
"192.168.1.1" -> "Unk22" [edgetooltip="Trace: 7:2, 192.168.1.1 -> Unk22"];
"Unk22" -> "193.253.94.198" [label=<<FONT POINT-SIZE="8"> 35.026ms</FONT>>,edgetooltip="Trace: 7:3, Unk22 -> 193.253.94.198 (RTT: 192.168.1.104 <-> 193.253.94.198 (35.026ms))",labeltooltip="Trace: 7:3, RTT: 192.168.1.104 <-> 193.253.94.198 (35.026ms)"];
"193.253.94.198" -> "193.252.160.53" [label=<<FONT POINT-SIZE="8"> 103.679ms</FONT>>,edgetooltip="Trace: 7:4, 193.253.94.198 -> 193.252.160.53 (RTT: 192.168.1.104 <-> 193.252.160.53 (103.679ms))",labeltooltip="Trace: 7:4, RTT: 192.168.1.104 <-> 193.252.160.53 (103.679ms)"];
"193.252.160.53" -> "193.252.160.45" [label=<<FONT POINT-SIZE="8"> 398.360ms</FONT>>,edgetooltip="Trace: 7:5, 193.252.160.53 -> 193.252.160.45 (RTT: 192.168.1.104 <-> 193.252.160.45 (398.360ms))",labeltooltip="Trace: 7:5, RTT: 192.168.1.104 <-> 193.252.160.45 (398.360ms)"];
"193.252.160.45" -> "Unk23" [edgetooltip="Trace: 7:6, 193.252.160.45 -> Unk23"];
"Unk23" -> "Unk24" [edgetooltip="Trace: 7:7, Unk23 -> Unk24"];
"Unk24" -> "Unk25" [edgetooltip="Trace: 7:8, Unk24 -> Unk25"];
"Unk25" -> "Unk26" [edgetooltip="Trace: 7:9, Unk25 -> Unk26"];
"Unk26" -> "Unk27" [edgetooltip="Trace: 7:10, Unk26 -> Unk27"];
"Unk27" -> "Unk28" [edgetooltip="Trace: 7:11, Unk27 -> Unk28"];
"Unk28" -> "Unk29" [edgetooltip="Trace: 7:12, Unk28 -> Unk29"];
"Unk29" -> "Unk30" [edgetooltip="Trace: 7:13, Unk29 -> Unk30"];
"Unk30" -> "64.226.122.113":ET7:n [style="solid",label=<<FONT POINT-SIZE="8"> 262.554ms</FONT>>,edgetooltip="Trace: 7:14, Unk30 -> 64.226.122.113 (RTT: 192.168.1.104 <-> 64.226.122.113 (262.554ms))",labeltooltip="Trace: 7:14, RTT: 192.168.1.104 <-> 64.226.122.113 (262.554ms)"];
### T8 -> ('192.168.1.104', '64.226.122.113', 6, 443) ###
edge [color="#4040a0"];
"192.168.1.104":BT8:s -> "192.168.1.1" [label=<<FONT POINT-SIZE="8"> 7.850ms</FONT>>,edgetooltip="Trace: 8:1, 192.168.1.104 -> 192.168.1.1 (RTT: 192.168.1.104 <-> 192.168.1.1 (7.850ms))",labeltooltip="Trace: 8:1, RTT: 192.168.1.104 <-> 192.168.1.1 (7.850ms)"];
"192.168.1.1" -> "Unk31" [edgetooltip="Trace: 8:2, 192.168.1.1 -> Unk31"];
"Unk31" -> "193.253.94.198" [label=<<FONT POINT-SIZE="8"> 114.024ms</FONT>>,edgetooltip="Trace: 8:3, Unk31 -> 193.253.94.198 (RTT: 192.168.1.104 <-> 193.253.94.198 (114.024ms))",labeltooltip="Trace: 8:3, RTT: 192.168.1.104 <-> 193.253.94.198 (114.024ms)"];
"193.253.94.198" -> "193.252.160.53" [label=<<FONT POINT-SIZE="8"> 98.112ms</FONT>>,edgetooltip="Trace: 8:4, 193.253.94.198 -> 193.252.160.53 (RTT: 192.168.1.104 <-> 193.252.160.53 (98.112ms))",labeltooltip="Trace: 8:4, RTT: 192.168.1.104 <-> 193.252.160.53 (98.112ms)"];
"193.252.160.53" -> "193.252.160.45" [label=<<FONT POINT-SIZE="8"> 391.118ms</FONT>>,edgetooltip="Trace: 8:5, 193.252.160.53 -> 193.252.160.45 (RTT: 192.168.1.104 <-> 193.252.160.45 (391.118ms))",labeltooltip="Trace: 8:5, RTT: 192.168.1.104 <-> 193.252.160.45 (391.118ms)"];
"193.252.160.45" -> "Unk32" [edgetooltip="Trace: 8:6, 193.252.160.45 -> Unk32"];
"Unk32" -> "Unk33" [edgetooltip="Trace: 8:7, Unk32 -> Unk33"];
"Unk33" -> "80.231.246.13" [label=<<FONT POINT-SIZE="8"> 351.764ms</FONT>>,edgetooltip="Trace: 8:8, Unk33 -> 80.231.246.13 (RTT: 192.168.1.104 <-> 80.231.246.13 (351.764ms))",labeltooltip="Trace: 8:8, RTT: 192.168.1.104 <-> 80.231.246.13 (351.764ms)"];
"80.231.246.13" -> "Unk34" [edgetooltip="Trace: 8:9, 80.231.246.13 -> Unk34"];
"Unk34" -> "Unk35" [edgetooltip="Trace: 8:10, Unk34 -> Unk35"];
"Unk35" -> "Unk36" [edgetooltip="Trace: 8:11, Unk35 -> Unk36"];
"Unk36" -> "Unk37" [edgetooltip="Trace: 8:12, Unk36 -> Unk37"];
"Unk37" -> "Unk38" [edgetooltip="Trace: 8:13, Unk37 -> Unk38"];
"Unk38" -> "64.226.122.113":ET8:n [style="solid",label=<<FONT POINT-SIZE="8"> 214.745ms</FONT>>,edgetooltip="Trace: 8:14, Unk38 -> 64.226.122.113 (RTT: 192.168.1.104 <-> 64.226.122.113 (214.745ms))",labeltooltip="Trace: 8:14, RTT: 192.168.1.104 <-> 64.226.122.113 (214.745ms)"];
### T9 -> ('192.168.1.104', '142.250.74.228', 6, 80) ###
edge [color="#402070"];
"192.168.1.104":BT9:s -> "192.168.1.1" [label=<<FONT POINT-SIZE="8"> 99.335ms</FONT>>,edgetooltip="Trace: 9:1, 192.168.1.104 -> 192.168.1.1 (RTT: 192.168.1.104 <-> 192.168.1.1 (99.335ms))",labeltooltip="Trace: 9:1, RTT: 192.168.1.104 <-> 192.168.1.1 (99.335ms)"];
"192.168.1.1" -> "Unk39" [edgetooltip="Trace: 9:2, 192.168.1.1 -> Unk39"];
"Unk39" -> "193.253.94.198" [label=<<FONT POINT-SIZE="8"> 31.408ms</FONT>>,edgetooltip="Trace: 9:3, Unk39 -> 193.253.94.198 (RTT: 192.168.1.104 <-> 193.253.94.198 (31.408ms))",labeltooltip="Trace: 9:3, RTT: 192.168.1.104 <-> 193.253.94.198 (31.408ms)"];
"193.253.94.198" -> "193.252.160.53" [label=<<FONT POINT-SIZE="8"> 48.031ms</FONT>>,edgetooltip="Trace: 9:4, 193.253.94.198 -> 193.252.160.53 (RTT: 192.168.1.104 <-> 193.252.160.53 (48.031ms))",labeltooltip="Trace: 9:4, RTT: 192.168.1.104 <-> 193.252.160.53 (48.031ms)"];
"193.252.160.53" -> "Unk40" [edgetooltip="Trace: 9:5, 193.252.160.53 -> Unk40"];
"Unk40" -> "72.14.218.40" [label=<<FONT POINT-SIZE="8"> 30.158ms</FONT>>,edgetooltip="Trace: 9:6, Unk40 -> 72.14.218.40 (RTT: 192.168.1.104 <-> 72.14.218.40 (30.158ms))",labeltooltip="Trace: 9:6, RTT: 192.168.1.104 <-> 72.14.218.40 (30.158ms)"];
"72.14.218.40" -> "108.170.244.161" [label=<<FONT POINT-SIZE="8"> 16.923ms</FONT>>,edgetooltip="Trace: 9:7, 72.14.218.40 -> 108.170.244.161 (RTT: 192.168.1.104 <-> 108.170.244.161 (16.923ms))",labeltooltip="Trace: 9:7, RTT: 192.168.1.104 <-> 108.170.244.161 (16.923ms)"];
"108.170.244.161" -> "142.250.234.41" [label=<<FONT POINT-SIZE="8"> 18.335ms</FONT>>,edgetooltip="Trace: 9:8, 108.170.244.161 -> 142.250.234.41 (RTT: 192.168.1.104 <-> 142.250.234.41 (18.335ms))",labeltooltip="Trace: 9:8, RTT: 192.168.1.104 <-> 142.250.234.41 (18.335ms)"];
"142.250.234.41" -> "142.250.74.228":ET9:n [style="solid",label=<<FONT POINT-SIZE="8"> 17.244ms</FONT>>,edgetooltip="Trace: 9:9, 142.250.234.41 -> 142.250.74.228 (RTT: 192.168.1.104 <-> 142.250.74.228 (17.244ms))",labeltooltip="Trace: 9:9, RTT: 192.168.1.104 <-> 142.250.74.228 (17.244ms)"];
### T10 -> ('192.168.1.104', '142.250.74.228', 6, 443) ###
edge [color="#40a040"];
"192.168.1.104":BT10:s -> "192.168.1.1" [label=<<FONT POINT-SIZE="8"> 84.860ms</FONT>>,edgetooltip="Trace: 10:1, 192.168.1.104 -> 192.168.1.1 (RTT: 192.168.1.104 <-> 192.168.1.1 (84.860ms))",labeltooltip="Trace: 10:1, RTT: 192.168.1.104 <-> 192.168.1.1 (84.860ms)"];
"192.168.1.1" -> "Unk41" [edgetooltip="Trace: 10:2, 192.168.1.1 -> Unk41"];
"Unk41" -> "193.253.94.198" [label=<<FONT POINT-SIZE="8"> 23.888ms</FONT>>,edgetooltip="Trace: 10:3, Unk41 -> 193.253.94.198 (RTT: 192.168.1.104 <-> 193.253.94.198 (23.888ms))",labeltooltip="Trace: 10:3, RTT: 192.168.1.104 <-> 193.253.94.198 (23.888ms)"];
"193.253.94.198" -> "193.252.160.53" [label=<<FONT POINT-SIZE="8"> 39.121ms</FONT>>,edgetooltip="Trace: 10:4, 193.253.94.198 -> 193.252.160.53 (RTT: 192.168.1.104 <-> 193.252.160.53 (39.121ms))",labeltooltip="Trace: 10:4, RTT: 192.168.1.104 <-> 193.252.160.53 (39.121ms)"];
"193.252.160.53" -> "Unk42" [edgetooltip="Trace: 10:5, 193.252.160.53 -> Unk42"];
"Unk42" -> "72.14.210.158" [label=<<FONT POINT-SIZE="8"> 17.921ms</FONT>>,edgetooltip="Trace: 10:6, Unk42 -> 72.14.210.158 (RTT: 192.168.1.104 <-> 72.14.210.158 (17.921ms))",labeltooltip="Trace: 10:6, RTT: 192.168.1.104 <-> 72.14.210.158 (17.921ms)"];
"72.14.210.158" -> "72.14.233.77" [label=<<FONT POINT-SIZE="8"> 18.740ms</FONT>>,edgetooltip="Trace: 10:7, 72.14.210.158 -> 72.14.233.77 (RTT: 192.168.1.104 <-> 72.14.233.77 (18.740ms))",labeltooltip="Trace: 10:7, RTT: 192.168.1.104 <-> 72.14.233.77 (18.740ms)"];
"72.14.233.77" -> "142.250.234.41" [label=<<FONT POINT-SIZE="8"> 19.503ms</FONT>>,edgetooltip="Trace: 10:8, 72.14.233.77 -> 142.250.234.41 (RTT: 192.168.1.104 <-> 142.250.234.41 (19.503ms))",labeltooltip="Trace: 10:8, RTT: 192.168.1.104 <-> 142.250.234.41 (19.503ms)"];
"142.250.234.41" -> "142.250.74.228":ET10:n [style="solid",label=<<FONT POINT-SIZE="8"> 17.730ms</FONT>>,edgetooltip="Trace: 10:9, 142.250.234.41 -> 142.250.74.228 (RTT: 192.168.1.104 <-> 142.250.74.228 (17.730ms))",labeltooltip="Trace: 10:9, RTT: 192.168.1.104 <-> 142.250.74.228 (17.730ms)"];
### T11 -> ('192.168.1.104', '64.226.122.113', 6, 80) ###
edge [color="#407020"];
"192.168.1.104":BT11:s -> "192.168.1.1" [label=<<FONT POINT-SIZE="8"> 2.762ms</FONT>>,edgetooltip="Trace: 11:1, 192.168.1.104 -> 192.168.1.1 (RTT: 192.168.1.104 <-> 192.168.1.1 (2.762ms))",labeltooltip="Trace: 11:1, RTT: 192.168.1.104 <-> 192.168.1.1 (2.762ms)"];
"192.168.1.1" -> "Unk43" [edgetooltip="Trace: 11:2, 192.168.1.1 -> Unk43"];
"Unk43" -> "193.253.94.198" [label=<<FONT POINT-SIZE="8"> 37.762ms</FONT>>,edgetooltip="Trace: 11:3, Unk43 -> 193.253.94.198 (RTT: 192.168.1.104 <-> 193.253.94.198 (37.762ms))",labeltooltip="Trace: 11:3, RTT: 192.168.1.104 <-> 193.253.94.198 (37.762ms)"];
"193.253.94.198" -> "193.252.160.53" [label=<<FONT POINT-SIZE="8"> 14.929ms</FONT>>,edgetooltip="Trace: 11:4, 193.253.94.198 -> 193.252.160.53 (RTT: 192.168.1.104 <-> 193.252.160.53 (14.929ms))",labeltooltip="Trace: 11:4, RTT: 192.168.1.104 <-> 193.252.160.53 (14.929ms)"];
"193.252.160.53" -> "193.252.160.45" [label=<<FONT POINT-SIZE="8"> 12.022ms</FONT>>,edgetooltip="Trace: 11:5, 193.252.160.53 -> 193.252.160.45 (RTT: 192.168.1.104 <-> 193.252.160.45 (12.022ms))",labeltooltip="Trace: 11:5, RTT: 192.168.1.104 <-> 193.252.160.45 (12.022ms)"];
"193.252.160.45" -> "Unk44" [edgetooltip="Trace: 11:6, 193.252.160.45 -> Unk44"];
"Unk44" -> "Unk45" [edgetooltip="Trace: 11:7, Unk44 -> Unk45"];
"Unk45" -> "Unk46" [edgetooltip="Trace: 11:8, Unk45 -> Unk46"];
"Unk46" -> "80.231.245.41" [label=<<FONT POINT-SIZE="8"> 105.153ms</FONT>>,edgetooltip="Trace: 11:9, Unk46 -> 80.231.245.41 (RTT: 192.168.1.104 <-> 80.231.245.41 (105.153ms))",labeltooltip="Trace: 11:9, RTT: 192.168.1.104 <-> 80.231.245.41 (105.153ms)"];
"80.231.245.41" -> "Unk47" [edgetooltip="Trace: 11:10, 80.231.245.41 -> Unk47"];
"Unk47" -> "Unk48" [edgetooltip="Trace: 11:11, Unk47 -> Unk48"];
"Unk48" -> "Unk49" [edgetooltip="Trace: 11:12, Unk48 -> Unk49"];
"Unk49" -> "Unk50" [edgetooltip="Trace: 11:13, Unk49 -> Unk50"];
"Unk50" -> "64.226.122.113":ET11:n [style="solid",label=<<FONT POINT-SIZE="8"> 49.476ms</FONT>>,edgetooltip="Trace: 11:14, Unk50 -> 64.226.122.113 (RTT: 192.168.1.104 <-> 64.226.122.113 (49.476ms))",labeltooltip="Trace: 11:14, RTT: 192.168.1.104 <-> 64.226.122.113 (49.476ms)"];
### T12 -> ('192.168.1.104', '64.226.122.113', 6, 443) ###
edge [color="#2020a0"];
"192.168.1.104":BT12:s -> "192.168.1.1" [label=<<FONT POINT-SIZE="8"> 5.344ms</FONT>>,edgetooltip="Trace: 12:1, 192.168.1.104 -> 192.168.1.1 (RTT: 192.168.1.104 <-> 192.168.1.1 (5.344ms))",labeltooltip="Trace: 12:1, RTT: 192.168.1.104 <-> 192.168.1.1 (5.344ms)"];
"192.168.1.1" -> "Unk51" [edgetooltip="Trace: 12:2, 192.168.1.1 -> Unk51"];
"Unk51" -> "193.253.94.198" [label=<<FONT POINT-SIZE="8"> 29.283ms</FONT>>,edgetooltip="Trace: 12:3, Unk51 -> 193.253.94.198 (RTT: 192.168.1.104 <-> 193.253.94.198 (29.283ms))",labeltooltip="Trace: 12:3, RTT: 192.168.1.104 <-> 193.253.94.198 (29.283ms)"];
"193.253.94.198" -> "193.252.160.53" [label=<<FONT POINT-SIZE="8"> 10.805ms</FONT>>,edgetooltip="Trace: 12:4, 193.253.94.198 -> 193.252.160.53 (RTT: 192.168.1.104 <-> 193.252.160.53 (10.805ms))",labeltooltip="Trace: 12:4, RTT: 192.168.1.104 <-> 193.252.160.53 (10.805ms)"];
"193.252.160.53" -> "193.252.160.45" [label=<<FONT POINT-SIZE="8"> 12.579ms</FONT>>,edgetooltip="Trace: 12:5, 193.252.160.53 -> 193.252.160.45 (RTT: 192.168.1.104 <-> 193.252.160.45 (12.579ms))",labeltooltip="Trace: 12:5, RTT: 192.168.1.104 <-> 193.252.160.45 (12.579ms)"];
"193.252.160.45" -> "Unk52" [edgetooltip="Trace: 12:6, 193.252.160.45 -> Unk52"];
"Unk52" -> "80.231.246.26" [label=<<FONT POINT-SIZE="8"> 39.247ms</FONT>>,edgetooltip="Trace: 12:7, Unk52 -> 80.231.246.26 (RTT: 192.168.1.104 <-> 80.231.246.26 (39.247ms))",labeltooltip="Trace: 12:7, RTT: 192.168.1.104 <-> 80.231.246.26 (39.247ms)"];
"80.231.246.26" -> "Unk53" [edgetooltip="Trace: 12:8, 80.231.246.26 -> Unk53"];
"Unk53" -> "Unk54" [edgetooltip="Trace: 12:9, Unk53 -> Unk54"];
"Unk54" -> "Unk55" [edgetooltip="Trace: 12:10, Unk54 -> Unk55"];
"Unk55" -> "Unk56" [edgetooltip="Trace: 12:11, Unk55 -> Unk56"];
"Unk56" -> "Unk57" [edgetooltip="Trace: 12:12, Unk56 -> Unk57"];
"Unk57" -> "Unk58" [edgetooltip="Trace: 12:13, Unk57 -> Unk58"];
"Unk58" -> "64.226.122.113":ET12:n [style="solid",label=<<FONT POINT-SIZE="8"> 42.210ms</FONT>>,edgetooltip="Trace: 12:14, Unk58 -> 64.226.122.113 (RTT: 192.168.1.104 <-> 64.226.122.113 (42.210ms))",labeltooltip="Trace: 12:14, RTT: 192.168.1.104 <-> 64.226.122.113 (42.210ms)"];
### Decoration For Unknown (Unkn) Node Hops ###
"Unk0" [tooltip="Trace: 1:2, Unknown Hop: Unk0",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk1" [tooltip="Trace: 1:5, Unknown Hop: Unk1",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk2" [tooltip="Trace: 2:2, Unknown Hop: Unk2",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk3" [tooltip="Trace: 2:5, Unknown Hop: Unk3",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk4" [tooltip="Trace: 3:2, Unknown Hop: Unk4",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk5" [tooltip="Trace: 3:6, Unknown Hop: Unk5",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk6" [tooltip="Trace: 3:7, Unknown Hop: Unk6",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk7" [tooltip="Trace: 3:8, Unknown Hop: Unk7",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk8" [tooltip="Trace: 3:11, Unknown Hop: Unk8",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk9" [tooltip="Trace: 3:12, Unknown Hop: Unk9",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk10" [tooltip="Trace: 3:13, Unknown Hop: Unk10",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk11" [tooltip="Trace: 4:2, Unknown Hop: Unk11",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk12" [tooltip="Trace: 4:6, Unknown Hop: Unk12",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk13" [tooltip="Trace: 4:7, Unknown Hop: Unk13",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk14" [tooltip="Trace: 4:8, Unknown Hop: Unk14",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk15" [tooltip="Trace: 4:11, Unknown Hop: Unk15",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk16" [tooltip="Trace: 4:12, Unknown Hop: Unk16",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk17" [tooltip="Trace: 4:13, Unknown Hop: Unk17",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk18" [tooltip="Trace: 5:2, Unknown Hop: Unk18",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk19" [tooltip="Trace: 5:5, Unknown Hop: Unk19",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk20" [tooltip="Trace: 6:2, Unknown Hop: Unk20",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk21" [tooltip="Trace: 6:5, Unknown Hop: Unk21",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk22" [tooltip="Trace: 7:2, Unknown Hop: Unk22",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk23" [tooltip="Trace: 7:6, Unknown Hop: Unk23",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk24" [tooltip="Trace: 7:7, Unknown Hop: Unk24",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk25" [tooltip="Trace: 7:8, Unknown Hop: Unk25",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk26" [tooltip="Trace: 7:9, Unknown Hop: Unk26",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk27" [tooltip="Trace: 7:10, Unknown Hop: Unk27",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk28" [tooltip="Trace: 7:11, Unknown Hop: Unk28",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk29" [tooltip="Trace: 7:12, Unknown Hop: Unk29",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk30" [tooltip="Trace: 7:13, Unknown Hop: Unk30",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk31" [tooltip="Trace: 8:2, Unknown Hop: Unk31",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk32" [tooltip="Trace: 8:6, Unknown Hop: Unk32",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk33" [tooltip="Trace: 8:7, Unknown Hop: Unk33",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk34" [tooltip="Trace: 8:9, Unknown Hop: Unk34",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk35" [tooltip="Trace: 8:10, Unknown Hop: Unk35",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk36" [tooltip="Trace: 8:11, Unknown Hop: Unk36",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk37" [tooltip="Trace: 8:12, Unknown Hop: Unk37",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk38" [tooltip="Trace: 8:13, Unknown Hop: Unk38",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk39" [tooltip="Trace: 9:2, Unknown Hop: Unk39",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk40" [tooltip="Trace: 9:5, Unknown Hop: Unk40",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk41" [tooltip="Trace: 10:2, Unknown Hop: Unk41",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk42" [tooltip="Trace: 10:5, Unknown Hop: Unk42",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk43" [tooltip="Trace: 11:2, Unknown Hop: Unk43",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk44" [tooltip="Trace: 11:6, Unknown Hop: Unk44",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk45" [tooltip="Trace: 11:7, Unknown Hop: Unk45",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk46" [tooltip="Trace: 11:8, Unknown Hop: Unk46",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk47" [tooltip="Trace: 11:10, Unknown Hop: Unk47",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk48" [tooltip="Trace: 11:11, Unknown Hop: Unk48",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk49" [tooltip="Trace: 11:12, Unknown Hop: Unk49",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk50" [tooltip="Trace: 11:13, Unknown Hop: Unk50",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk51" [tooltip="Trace: 12:2, Unknown Hop: Unk51",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk52" [tooltip="Trace: 12:6, Unknown Hop: Unk52",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk53" [tooltip="Trace: 12:8, Unknown Hop: Unk53",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk54" [tooltip="Trace: 12:9, Unknown Hop: Unk54",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk55" [tooltip="Trace: 12:10, Unknown Hop: Unk55",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk56" [tooltip="Trace: 12:11, Unknown Hop: Unk56",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk57" [tooltip="Trace: 12:12, Unknown Hop: Unk57",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
"Unk58" [tooltip="Trace: 12:13, Unknown Hop: Unk58",shape="egg",fontname="Sans-Serif",fontsize=9,height=0.2,width=0.2,color="black",gradientangle=270,fillcolor="white:#d8d8d8",style="filled"];
### Tooltip for Standalone Node Hops ###
"193.253.94.198" [tooltip="Hop Host: 193.253.94.198"];
"193.252.160.53" [tooltip="Hop Host: 193.252.160.53"];
"193.252.160.45" [tooltip="Hop Host: 193.252.160.45"];
}
from trippy.
That's great! I should be able to emulate something akin to that.
One challenge here is the treatment of "unknown" nodes, Trippy currently conflates all unknown nodes into a single node as part of the DOT
report which can be misleading when there are actually multiple unknown nodes. I think the options are to have:
- One unknown node
- An unknown node per ttl
- All unknown nodes observed across all paths
The 1st option is what Trippy does today which isn't great. It appear from the example you have shared that Scapy chooses the 3rd option which leads to a lot of "duplicate" unknown nodes (58 in your example). Perhaps the 2nd option is a good compromise? Again, this would be something that would be nice to expose to users as an option as there seems to be no clear "right" answer.
from trippy.
Related Issues (20)
- Tracer panic for ICMP TimeExceeded packets with code 1 ("Fragment reassembly time exceeded")
- Tracer debug_asset failure for UDP protocol
- Packet size minimum incorrect for IPv6
- Restrict flows to Paris and Dublin strategies
- Add support for more named colors
- TUI settings columns visibility and ordering
- Crash (`STATUS_ACCESS_VIOLATION`) during simulation tests on Windows when tracing enabled HOT 1
- TUI displaying 0.0 on No Response for javg and jmax
- Snap installed trippy on Ubuntu get permission denied while accessing config file HOT 10
- Add flag to bypass platform privilege checks HOT 1
- Reduce MAX_SEQUENCE_PER_ROUND from 1024 to 512
- 0.10.0 Release Testing HOT 1
- No color in the circles under Sts column (Windows) HOT 2
- Publish PPA automatically HOT 1
- Trippy don't work on Archlinux
- Detect NAT for `udp/dublin` strategy HOT 1
- Add last icmp packet type column
- Add last icmp packet code column
- Separate lib and bin dependencies HOT 5
- Improve error messages HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from trippy.