5个不稳定版本

0.3.0 2024年8月22日
0.2.2 2024年8月22日
0.2.1 2024年8月21日
0.2.0 2024年8月21日
0.1.0 2024年8月21日

323硬件支持 中排名

Download history 226/week @ 2024-08-15

每月下载量 229

MIT 许可证

16KB
210

Rustmiko

(目前) 与Netmiko兼容性较差,但在Rust中具有更好的类型化替代方案。

兼容性

类型 含义
自动 已测试、支持,存在单元测试
完全 已测试,完全支持
部分 已测试,但可能有限制使用
有错误 对任何事情都没有保证
品牌 设备 支持
Cisco Catalyst 2960系列 完全

示例

此示例将在Cisco Catalyst 2960/CX系列交换机上设置所有端口。

fn main() -> anyhow::Result<()> {
	let mut cisco = match CiscoTelnet::connect("192.168.1.101:23", "admin", "admin") {
		Ok(cisco) => {
			println!("Connected successfully");
			cisco
		},
		Err(e) => {
			eprintln!("Failed to connect: {}", e);
			return Ok(());
		},
	};

	{
		let mut config = cisco.enter_config()?;
		for index in 1..=8 {
			let interface = config.get_interface("gi", &[0, index]);
			match config.interface_up(&interface) {
                Ok(_) => println!("Interface {} is now up", interface.name()),
                Err(_) => println!("Failed to set Interface {} up", interface.name())
            }
		}
	}

	if let Err(e) = cisco.save() {
		eprintln!("Failed to save configuration: {e}");
	}

	Ok(())
}

贡献

由于我是凡人的劣势,我没有能力或资源拥有世界上所有的交换机进行测试。如果更多人添加不同交换机的配置,我将非常感激。

谢谢!

依赖项

~4.5MB
~91K SLoC