■「dot」コマンドの「shape=record」でLANポート図を作成してみる。
途中SSG5の先を雑(?)というか従来の「dot」図として作ってみました。
■「shape=record」の使い方はマニュアルを参照。
Node Shapes
http://www.graphviz.org/doc/info/shapes.html
■テキスト
$ cat LANport.log
digraph Router {
graph [rankdir=TB];
//graph [rankdir=LR];
node [shape=record];
subgraph Modem {
UP_NW [label="UP_NW"];
}
// UP-Router
R1 [label="<f0>WAN|<f1>LAN1|<f2>LAN2|<f3>LAN3|<f4>LAN4"];
FGT80C [label="<f0>WAN1|<f1>WAN2|<f2>DMZ|<f3>LAN1|<f4>LAN2|<f5>LAN3|<f6>LAN4|<f7>LAN5"];
FGT80C_Cold [style=dotted];
{rank=same;FGT80C;FGT80C_Cold;};
UP_NW -> R1:f0 [label="Router"];
R1:f1 -> FGT80C:f0 [label="Fortigate-80C"];
R1:f2 -> FGT80C_Cold;
R1:f3; // Link Down
R1:f4; // Link Down
XTM25 [label="<f0>eth0|<f1>eth1|<f2>eth2|<f3>eth3|<f4>eth4"];
XTM25_Cold [style=dotted];
{rank=same;XTM25;XTM25_Cold;};
Wifi_Router [label="<f0>WAN|<f1>WLAN0|<f2>LAN1|<f3>LAN2|<f4>LAN3|<f5>LAN4"];
// VMHost
vSphere6_1 [label="<f0>vmnic0|<f1>vmnic1"];
vSphere6_2 [label="<f0>vmnic0|<f1>vmnic1"];
{rank=same;vSphere6_1;vSphere6_2;};
vSphere6_1:f1 -> vmjessie1:f0 [label="vmjessie1"];
vSphere6_2:f1 -> vmjessie2:f0 [label="vmjessie2"];
vmjessie1 [label="<f0>eth0|<f1>eth1|<f2>eth2"];
vmjessie2 [label="<f0>eth0|<f1>eth1|<f2>eth2"];
Jessie_Test [label="<f0>eth0|<f1>eth1|<f2>eth2"];
vmjessie1:f1 -> vmWinTest1;
vmjessie2:f1 -> vmWinTest2;
vmjessie1:f2 -> vmRouterTest1;
vmjessie2:f2 -> vmRouterTest2;
Jessie_SV [label="<f0>eth0|<f1>eth1|<f2>eth2"];
SSG5 [label="<f0>ISDN|<f1>0/0|<f2>0/1|<f3>0/2|<f4>0/3|<f5>0/4|<f6>0/5|<f7>0/6"];
SSG5_Cold [style=dotted];
{rank=same;SSG5;SSG5_Cold;};
FGT80C:f1; // Link Down
FGT80C:f2 -> Wifi_Router:f0 [label="Wifi_NAT"];
FGT80C:f3 -> vSphere6_1:f0 [label="vSphere6_1"];
FGT80C:f4 -> vSphere6_1:f1;
FGT80C:f5 -> vSphere6_2:f0 [label="vSphere6_2"];
FGT80C:f6 -> vSphere6_2:f1;
FGT80C:f7; // Link Down
Jessie_SV:f1 -> XTM25:f0 [label="XTM-25"];
Jessie_SV:f2 -> XTM25_Cold;
XTM25:f1 -> jessie_eth0 [label="jessie_Client"];
XTM25:f2 -> Win10_LAN [label="Win10_Client"];
XTM25:f3 -> SSG5_Cold;
XTM25:f4 -> SSG5:f1 [label="SSG-5"];
Cisco892_Test [style=dotted];
Cisco892_TestCold [style=dotted];
C2960_Test [style=dotted];
C2960_TestCold [style=dotted];
SRX100_1 [style=dotted];
SRX100_2 [style=dotted];
NetGear [style=dotted];
SSG5:f0; // Link Down
SSG5:f2 -> Cisco892_Test;
SSG5:f3 -> Cisco892_TestCold;
SSG5:f4 -> C2960_Test;
SSG5:f5 -> C2960_TestCold;
SSG5:f6 -> SonicWall;
SSG5:f7 -> Jessie_Test:f2 [label="Jessie_Test"];
Cisco892_Test -> SRX100_1;
Cisco892_TestCold -> SRX100_2;
C2960_Test -> Jessie_Test:f1;
SRX100_1 -> NetGear;
NetGear -> Jessie_Test:f0;
Wifi_Router:f0 -> android_tab [label="android_tab"];
Wifi_Router:f1; // Link Down
Wifi_Router:f2 -> Jessie_SV:f0 [label="Jessie-Proxy"];
Wifi_Router:f3; // Link Down
Wifi_Router:f4; // Link Down
Wifi_Router:f5; // Link Down
}
■SVGへの変換と画像の確認
$ dot -Tsvg LANport.log -o LANport.svg && gthumb LANport.svg&
■PNGへの変換と画像の確認
$ dot -Tpng LANport.log -o LANport.png && gthumb LANport.png&