graph "2x2" { layout="neato"; overlap="false"; esep="+40"; node [shape=record, fontname="DejaVu Sans Mono, Book"]; edge [color="cornflowerblue", penwidth="2", fontname="DejaVu Serif, Book"]; host [ label="host | { mgmt1 | data | mgmt2 }", pos="0,16!", requires="controller", ]; dut1 [ label="{ mgmt | data | link} | dut1\n(10.0.0.2) ", pos="10,16!", requires="infix", ]; dut2 [ label="{ link | mgmt } | dut2\n(10.0.0.3)", pos="10,12!", requires="infix", ]; host:mgmt1 -- dut1:mgmt [requires="mgmt", color="lightgray"] host:mgmt2 -- dut2:mgmt [requires="mgmt", color="lightgray"] host:data -- dut1:data [color=black] dut1:link -- dut2:link [color=black] }