命令行下绘制网络拓扑图

Author:

陈景峰 (ㄔㄣ ㄐㄧㄥ ㄈㄥ)

Nickname:netkiller | English name: Neo chen | Nippon name: ちんけいほう (音訳) | Korean name: 천징봉 | Thailand name: ภูมิภาพภูเขา

Callsign: BG7NYT | QTH: ZONE CQ24 ITU44 ShenZhen, China

下面是我多年积累下来的经验整理文档供大家参考,欢迎您对我的文档提出建议和意见。

 

 

Netkiller Architect 手札 Netkiller Linux 手札 Netkiller Developer 手札 Netkiller Database 手札
Netkiller Debian 手札 Netkiller CentOS 手札 Netkiller FreeBSD 手札 Netkiller Shell 手札
Netkiller Web 手札 Netkiller Monitoring 手札 Netkiller Storage 手札 Netkiller Mail System 手札
Netkiller MySQL 手札 Netkiller LDAP 手札 Netkiller Security 手札 Netkiller Version 手札
Netkiller Intranet 手札 Netkiller Cisco IOS 手札 Netkiller Writer 手札 Netkiller Studio Linux 手札

可以结合nmap,netcap 库等等做,自动发现,并绘制图

还可以实现ping,tracepath等到达情况显示,总之可以做很多东西。

neo@neo-OptiPlex-380:~/Test/Graphviz$ cat network.gv

digraph network {

ranksep=5;

ratio=auto;

graph [

rankdir = "LR"

];

node [color=lightblue, style=filled];

"idc";

subgraph firewall {

        rank = same;

        node[shape=box,color=green];

        "ASA5550-Master" [ label="ASA5550-A|SSM-4GE-INC",shape="record",style="filled",color="green" ];

        "ASA5550-Slave" [ label="ASA5550-B",shape="hexagon",style="filled",color="green" ];

        "ASA5550-Master"->"ASA5550-Slave" [label="Failover"];

        "ASA5550-Master"->idc

        "ASA5550-Slave"->idc

}

subgraph switch {

        rank = same;

        "SW4507RA" [label="Cisco Catalyst 4507R|WS-X4648-RJ45V+E|WS-X4606-X2-E|WS-X45-SUP7-E|WS-X4712-SFP+E" shape = "record"];

        "SW4507RB" [label="Cisco Catalyst 4507R" shape = "record"];

        "SW4507RA"->"SW4507RB" [label="HSRP"];

        "ASA5550-Master"->"SW4507RA" [label="1GB"];

        "ASA5550-Slave"->"SW4507RB" [label="1GB"];

        "SW4507RA"->O8

        "SW4507RB"->O8

        "O8"->O4

        "O8"->O7

        "O8"->O9

        "SW4507RA"->J9 [ label = "SFP+ 10G" ];

        "SW4507RA"->J10;

        "SW4507RA"->J11;

        "SW4507RA"->J12;

        "SW4507RA"->J13;

        "SW4507RA"->J14;

        "SW4507RA"->J15;

        "SW4507RA"->M12;

        "SW4507RB"->J9;

        "SW4507RB"->J10;

        "SW4507RB"->J11;

        "SW4507RB"->J12;

        "SW4507RB"->J13;

        "SW4507RB"->J14;

        "SW4507RB"->J15;

        "SW4507RB"->M12;

}

subgraph slb {

        rank = 2;

        slb1 [label="F5-Master",shape=circle];

        slb2 [label="F5-Backup",shape=circle];

        slb1->"SW4507RA";

        slb2->"SW4507RB";

        slb1->slb2 [label="VRRP"];

"10.10.0.3"    [label="cms.example.com preview.example.com publish.example.com"];

"10.10.0.4"    [label="media.example.com"];

"10.10.0.5"    [label="portal.example.com my.example.com login.example.com"];

"10.10.0.6"    [label="sso.example.com"];

slb1->"10.10.0.3"

slb1->"10.10.0.4"

slb1->"10.10.0.5"

slb1->"10.10.0.6"

slb1->"10.10.0.7"

slb1->"10.10.0.8"

slb1->"10.10.0.9"

}

subgraph service {

        nfs [label="NFSv4 NAS"];

        server->nfs;

}

subgraph server {

        rank = same;

        "10.10.10.2" [label="Monitor"];

        "10.10.10.3" [label="Backup"];

}

subgraph lvs {

        "10.10.10.6";

}

"O9"->"10.10.10.2" [label="Monitor"];

"O9"->"10.10.10.3" [label="Backup"];

"O9"->"10.10.10.5";

"O9"->"10.10.10.7";

"O9"->"10.10.10.14";

"O9"->"10.10.10.15";

"O9"->"10.10.10.11";

"O9"->"10.10.10.12";

"O9"->"10.10.10.27";

"O9"->"10.10.10.28";

"O9"->"10.10.10.71";

"O9"->"10.10.10.72";

"O8"->"10.10.10.20";

"O8"->"10.10.10.23";

"O8"->"10.10.10.19";

"O8"->"10.10.10.10";

"O8"->"10.10.10.74";

"O8"->"10.10.10.74";

"O8"->"10.10.10.75";

"O8"->"10.10.10.76";

"O8"->"10.10.10.216";

"O7"->"10.10.10.16";

"O7"->"10.10.10.46";

"O7"->"10.10.10.47";

"O7"->"10.10.10.48";

"O4"->"10.10.10.41";

"O4"->"10.10.10.42";

"O4"->"10.10.10.54";

"J9"->"10.10.0.21";

"J9"->"10.10.0.22";

"J9"->"10.10.0.23";

"J9"->"10.10.0.24";

"J9"->"10.10.0.25";

"J9"->"10.10.0.26";

"J9"->"10.10.0.27";

"J9"->"10.10.0.28";

"J9"->"10.10.0.29";

"J9"->"10.10.0.30";

"J9"->"10.10.0.31";

"J9"->"10.10.0.32";

"J10"->"10.10.0.41";

"J10"->"10.10.0.42";

"J10"->"10.10.0.43";

"J10"->"10.10.0.44";

"J10"->"10.10.0.45";

"J10"->"10.10.0.46";

"J10"->"10.10.0.47";

"J10"->"10.10.0.48";

"J10"->"10.10.0.49";

"J10"->"10.10.0.50";

"J10"->"10.10.0.51";

"J10"->"10.10.0.52";

"J11"->"10.10.0.61";

"J11"->"10.10.0.62";

"J11"->"10.10.0.63";

"J11"->"10.10.0.64";

"J12"->"10.10.0.254";

"J12"->"10.10.0.250";

"J13"->"10.10.0.81";

"J13"->"10.10.0.82";

"J13"->"10.10.0.83";

"J13"->"10.10.0.84";

"J13"->"10.10.0.85";

"J13"->"10.10.0.86";

"J13"->"10.10.0.87";

"J13"->"10.10.0.88";

"J13"->"10.10.0.89";

"J13"->"10.10.0.90";

"J13"->"10.10.0.91";

"J13"->"10.10.0.92";

"J13"->"10.10.0.93";

"J14"->"10.10.0.101";

"J14"->"10.10.0.102";

"J14"->"10.10.0.103";

"J14"->"10.10.0.104";

"J14"->"10.10.0.105";

"J14"->"10.10.0.106";

"J14"->"10.10.0.107";

"J14"->"10.10.0.108";

"J14"->"10.10.0.53";

"J14"->"10.10.0.54";

"J15"->"10.10.5.10";

"J15"->"10.10.5.11";

"J15"->"10.10.5.12";

"J15"->"10.10.5.13";

"J15"->"10.10.5.14";

"J15"->"10.10.5.15";

"J15"->"10.10.5.16";

"J15"->"10.10.5.17";

"J15"->"10.10.5.18";

"J15"->"10.10.5.19";

"M12"->"10.10.0.121";

"M12"->"10.10.0.122";

"M12"->"10.10.0.123";

"M12"->"10.10.0.124";

"M12"->"10.10.0.125";

"M12"->"10.10.0.126";

"M12"->"10.10.0.127";

"M12"->"10.10.0.128";

"M12"->"10.10.0.129";

"M12"->"10.10.0.130";

"M12"->"10.10.0.131";

"M12"->"10.10.0.132";

"M12"->"10.10.0.133";

}

$ twopi network.gv -Tpng > network.png


猜你喜欢

转载自netkiller-github-com.iteye.com/blog/1292429
今日推荐