graph "route-preference" {
	layout="neato";
	overlap="false";
	esep="+20";
	size=10

        node [shape=record, fontname="DejaVu Sans Mono, Book"];
	edge [color="cornflowerblue", penwidth="2", fontname="DejaVu Serif, Book"];

	PC	
	[
		label="PC | { <mgmt1> mgmt1 | <data11> data11 | <data12> data12 | <> \n |<data2> data2 | <mgmt2> mgmt2 }",
	    	pos="20,50!",
	    	requires="controller",
	];

        R1 
	[
		label="{ <mgmt> mgmt | <data1> data1 | <data2> data2 | <link> link } | R1 \n 192.168.100.1/32 \n(lo)",
		pos="60,51.8!",
		requires="infix",
	];
	
	R2 
	[
	    	label="{ <link> link | <data> data | <mgmt> mgmt } | R2 \n 192.168.200.1/32 \n(lo)",
	    	pos="60,42!",
	    	requires="infix",
	];
	
	PC:mgmt1 -- R1:mgmt [requires="mgmt", color="lightgray"]
	PC:mgmt2 -- R2:mgmt [requires="mgmt", color="lightgray"]
	
	PC:data11 -- R1:data1  [color="black", headlabel="192.168.10.1/24", taillabel="192.168.10.3/24", fontcolor="black"]
	PC:data12 -- R1:data2  [color="black", headlabel="192.168.30.1/24", taillabel="192.168.30.3/24", fontcolor="black"]
	PC:data2 -- R2:data  [color="black", headlabel="192.168.20.2/24", taillabel="192.168.20.3/24", fontcolor="black"]

	R1:link -- R2:link  [headlabel="192.168.50.2/24", taillabel="192.168.50.1/24", labeldistance=1, fontcolor="black", color="black"]

}
