digraph G { rankdir=TB; labelloc=t; label="gtplab @ sysmocom"; subgraph cluster_trex { label="TRex (gtplab2)"; rankdir=TB; trex_ipmi [label="ipmi\n10.9.23.52/24\nac:1f:6b:4a:77:cd\nBMC/ipmi\ndhcpc"]; trex_eno1 [label="eno1\n10.9.25.22/24\nac:1f:6b:45:18:fe\nOOB access\ndhcpc"]; trex_eno2 [label="eno2\nac:1f:6b:45:18:ff\nunused"]; trex_enp2s0f0np0 [label="enp2s0f0np0\n172.16.32.2/24\nec:0d:9a:8a:27:52\nstatic (TRex)"]; trex_enp2s0f1np1 [label="enp2s0f1np1\n172.16.31.200\nec:0d:9a:8a:27:53\nstatic (TRex)"]; } subgraph cluster_upf { label="UPF (gtplab1)"; upf_ipmi [label="ipmi\n10.9.23.51/24\nac:1f:6b:4a:79:84\nBMC/ipmi\ndhcpc"]; upf_eno1 [label="eno1\n10.9.25.21/24\nac:1f:6b:45:1c:68\nOOB access\ndhcpc"]; upf_eno2 [label="eno2\nac:1f:6b:45:1c:69\nunused"]; upf_enp2s0f0np0 [label="enp2s0f0np0\n172.16.31.2/24\nec:0d:9a:8a:28:1a\n100gb link\nstatic "]; upf_enp2s0f1np1 [label="enp2s0f1np1\n172.16.32.1/24\nec:0d:9a:8a:28:1b\n100gb link\nstatic "]; } subgraph cluster_test_switch { label="Test Switch (100gb)"; test_switch_vlan1 [label="vlan1 (RAN)"]; test_switch_vlan2 [label="vlan2 (CN)"]; } subgraph cluster_cpf { label="CPF (gtplab0)"; cpf_ipmi [label="ipmi\n10.9.23.50/24\nac:1f:6b:4a:78:d2\nBMC/ipmi\ndhcpc"]; cpf_eno1 [label="eno1\n10.9.25.20/24\nac:1f:6b:45:1b:04\nOOB access\ndhcpc"]; cpf_eno2 [label="eno2\nac:1f:6b:45:1b:05\nunused"]; cpf_enp2s0f0np0 [label="enp2s0f0np0\n172.16.31.1/24\nec:0d:9a:8a:28:12\nstatic "]; cpf_enp2s0f1np1 [label="enp2s0f1np1\nec:0d:9a:8a:28:13\nunused "]; } trex_enp2s0f0np0 -> test_switch_vlan1 [label="RAN 100gb",dir=both,style=bold]; trex_enp2s0f1np1 -> test_switch_vlan2 [label="CN 100gb",dir=both,style=bold]; upf_enp2s0f0np0 -> test_switch_vlan2 [label="CN 100gb",dir=both,style=bold]; upf_enp2s0f1np1 -> test_switch_vlan1 [label="RAN 100gb",dir=both,style=bold]; cpf_enp2s0f0np0 -> test_switch_vlan1 [label="PFCP (100gb)",dir=both,style=bold]; switch -> cpf_ipmi [constraint=false,dir=both]; switch -> cpf_eno1 [constraint=false,dir=both]; switch -> upf_ipmi [constraint=false,dir=both]; switch -> upf_eno1 [constraint=false,dir=both]; switch -> trex_ipmi [constraint=false,dir=both]; switch -> trex_eno1 [constraint=false,dir=both]; }