-2023-
Home network diagram
Playing with an SVG pipeline. This is generated by the code in the body. Legend in albumNetwork
# network.gv
digraph network {
node [color=darkgrey fillcolor=lightgrey fontcolor=white fontname="century gothic" penwidth=3 shape=circle style=filled width=1]
edge [arrowhead=normal arrowsize=1.35 arrowtail=normal color=darkgrey decorate=false fontname="century gothic" headclip=true labelfloat=true minlen=1 penwidth=2]
compound=true
fontname="arial black"
fontcolor=black
rankdir=LR
splines=ortho
ranksep=.25
nodesep=.35
server [label=VPS shape=square]
apis [label=APIs shape=square]
router -> server [arrowhead=none]
server -> "local-server" [color=darkseagreen constraint=false fontcolor=darkseagreen]
server -> apis [color=darkblue]
desktop -> server [color=deepskyblue]
rasppi -> apis [color=darkblue]
rasppi -> server [style=invis]
subgraph cluster_home {
style=filled
color=grey93
switch [label=LAN color=darkgrey fontcolor=darkgrey shape=square]
phone [label=phone]
tablet [label=tablet]
desktop [label=desktop penwidth=6]
drums [label=drums shape=circle]
guitar [label=guitar shape=circle]
synth [label=synth shape=circle]
amp [label=amp shape=doublecircle]
sub [label=sub height=.1 shape=doublecircle width=1]
speakers [label=speakers height=.1 shape=doublecircle width=1]
TV [label=TV height=1 shape=doublecircle width=1]
"local-server" [label=NAS shape=square]
laptop [label=laptop shape=square]
rasppi [label=pi shape=square]
router [label=router color=darkgrey fontcolor=darkgrey shape=square]
desktop [label=desktop]
desktop -> "local-server" [color=darkseagreen dir=back]
laptop [label=laptop]
laptop -> "local-server" [color=darkseagreen dir=back]
rasppi [label=pi]
rasppi -> "local-server" [color=darkseagreen dir=back]
switch -> "local-server" [arrowhead=none constraint=false]
switch -> router [arrowhead=none]
phone -> router [arrowhead=none style=dotted]
tablet -> router [arrowhead=none style=dotted]
phone -> rasppi [color=darkblue]
tablet -> rasppi [color=darkblue]
desktop -> rasppi [color=darkblue]
desktop -> rasppi [color=deepskyblue]
desktop -> "local-server" [color=deepskyblue]
rasppi -> sub [color=gold1]
sub -> speakers [color=orange]
sub -> speakers [color=orange]
sub -> TV [color=gold1]
laptop -> TV [color=gold1]
guitar -> amp [color=orange]
synth -> amp [color=orange]
guitar -> laptop [color=orange]
synth -> laptop [color=orange]
drums -> laptop [color=orange]
desktop -> laptop [color=deepskyblue]
"local-server" -> sub [style=invis]
switch -> synth [style=invis]
switch -> guitar [style=invis]
switch -> desktop [arrowhead=none]
switch -> laptop [arrowhead=none]
switch -> rasppi [arrowhead=none]
sub -> amp [style=invis]
guitar -> laptop [style=invis]
}
}
Key
digraph legend {
node [color=darkgrey fillcolor=lightgrey fontcolor=white fontname="century gothic" height=3 penwidth=3 shape=rect style=filled width=1]
edge [arrowhead=normal arrowsize=1.35 arrowtail=normal color=darkgrey decorate=false fontname="century gothic" headclip=true labelangle=-15 labeldistance=7.5 labelfloat=true labelfontname="century gothic" minlen=2 penwidth=2 xlp="(.1,.1)"]
compound=true
rankdir=LR
splines=ortho
ranksep=.75
nodesep=.25
label=KEY
labelloc=t
fontname="century gothic"
fontcolor=darkgrey
subgraph cluster_logical {
compound=true
style=filled
color=grey93
fontcolor=darkgrey
fontname="century gothic"
label="Logical Connections"
client [label=client]
host [label=host]
client -> host [color=deepskyblue fontcolor=deepskyblue taillabel="Remote Access \n(SSH/RDP)"]
client -> host [color=darkblue fontcolor=darkblue taillabel="Remote Control \n(HTTP/HTTPS)"]
host -> client [color=darkseagreen fontcolor=darkseagreen headlabel="File Transfer\n(FTP/SMB/SCP)"]
}
subgraph cluster_literal {
compound=true
style=filled
color=grey93
fontcolor=darkgrey
fontname="century gothic"
label="Literal Connections"
send [label=send]
receive [label=receive]
send -> receive [arrowhead=none color=darkgrey fontcolor=darkgrey style=dotted taillabel="Wi-Fi\n "]
send -> receive [arrowhead=none color=darkgrey fontcolor=darkgrey taillabel="LAN\n "]
send -> receive [color=gold1 fontcolor=gold1 taillabel="Video\n "]
send -> receive [color=orange fontcolor=orange taillabel="Audio\n "]
}
subgraph cluster_shapes {
compound=true
style=filled
color=grey93
fontcolor=darkgrey
label=Shapes
input [label=input height=1.5 shape=circle]
intermediate [label=intermediate height=1.5 shape=rect width=1.5]
output [label=output height=1.5 shape=doublecircle]
input -> intermediate [style=invis]
intermediate -> output [minlength=.5 style=invis]
}
}
-Published 2 am Sun, Feb 26 2023-