cflw_py icon indicating copy to clipboard operation
cflw_py copied to clipboard

网络设备工具实用化

Open nobodxbodon opened this issue 6 years ago • 5 comments

继续会上的话题, 不知与实际应用有哪些距离?

nobodxbodon avatar Jan 12 '19 08:01 nobodxbodon

网络在大部分人看来只是电脑插网线上网、手机连WIFI上网,就没了。很容易想得跟拧水龙头出水一样简单,然而网络实际上是很复杂的。 比如纯理论的内容可以出一系列比字典还厚的书: o1cn011m9jvmizzjluu0u_ 2455124912 jpg_430x430q90

如果是实际操作,可以出更多的书: tb21hlzdxzqk1rjszfvxxcb7vxa_ 708307132-0-item_pic jpg_430x430q90 这只是路由方面的内容,其他的还有交换、无线、语音、安全、等。

上面的书籍也只是简单的配置、排错手册,如果要具体问题具体分析,还可以出书: tb2clegaaowbunjssppxxxpgpxa_ 2145487409-0-item_pic jpg_430x430q90 一个路由协议的排错内容一本书,谁受得了。

如果真的要用到实际生产环境,要看网络规模。如果是网吧环境,一个人就能管好整个网吧网络,不需要用这工具。如果是运营商级别的,我一个人永远也写不完。我目前管着一个大型企业的一堆乱七八糟网,最多写一个只能看看的自动巡检工具,没法写出自动配置、排错的功能。

cflw avatar Jan 12 '19 09:01 cflw

请问有没有一些日常/重复进行的操作, 有进行自动化的价值/可行性? 或者, 基于现有框架, 从常用设备&操作开始实现?

nobodxbodon avatar Jan 13 '19 07:01 nobodxbodon

用的最多的日常操作就是查看设备信息、检查设备状态,而这些操作已经有网管软件做出来了。现有的网管软件使用简单网络管理协议(SNMP)来控制网络设备,这种协议的缺点就是能读写的内容取决于网络设备的开放程度,不够开放的话只能读到设备型号、接口状态、CPU使用率等基本信息,以及控制接口开关等常见操作。而我的脚本采用仿人工敲命令的方式来控制网络设备,理论上只要拥有最高权限,什么操作都能实现。 要说使用价值,能取代SNMP做一些SNMP做不到的事情就是这个脚本最有价值的地方。

至于常用操作,我已经写了一些实现了。

我打算在月底继续发表文章,内容就写如何获取网络设备的各种信息,以及如何解析字符串分析数据。

cflw avatar Jan 13 '19 14:01 cflw

我是看了你喷forward过来的,现在我急需要用一个工具落地对网络设备批量命令的场景,就像ansible对linux。请问到底选哪个?

liukun31 avatar Aug 28 '22 10:08 liukun31

我是看了你喷forward过来的,现在我急需要用一个工具落地对网络设备批量命令的场景,就像ansible对linux。请问到底选哪个?

看你的需求了。如果想要类似ansible的工具,可以试试nornir。如果想低级一点,手动发送命令交互的那种,可以试试netmiko

如果你想忽略网络设备差异,想要相同的代码作用于所有的网络设备,可以试试我写的网络设备脚本。不过我写的玩意不是很成熟,玩玩还行,大规模刷配置就算了。

cflw avatar Aug 28 '22 11:08 cflw