Asynchronous multi-vendor library for interacting with network devices
Project description
Asynchronous multi-vendor library for interacting with network devices
Inspired by netmiko
Requires:
asyncio
AsyncSSH
Python >=3.5
pyYAML
Supports:
Cisco IOS
Cisco IOS XE
Cisco IOS XR
Cisco ASA
Cisco NX-OS
HP Comware (like V1910 too)
Fujitsu Blade Switches
Mikrotik RouterOS
Arista EOS
Juniper JunOS
Aruba AOS 6.X
Aruba AOS 8.X
Terminal
Examples:
Example of interacting with Cisco IOS devices:
import asyncio
import netdev
async def task(param):
async with netdev.create(**param) as ios:
# Testing sending simple command
out = await ios.send_command("show ver")
print(out)
# Testing sending configuration set
commands = ["line console 0", "exit"]
out = await ios.send_config_set(commands)
print(out)
# Testing sending simple command with long output
out = await ios.send_command("show run")
print(out)
# Testing interactive dialog
out = await ios.send_command("conf", pattern=r'\[terminal\]\?', strip_command=False)
out += await ios.send_command("term", strip_command=False)
out += await ios.send_command("exit", strip_command=False, strip_prompt=False)
print(out)
async def run():
dev1 = { 'username' : 'user',
'password' : 'pass',
'device_type': 'cisco_ios',
'host': 'ip address',
}
dev2 = { 'username' : 'user',
'password' : 'pass',
'device_type': 'cisco_ios',
'host': 'ip address',
}
devices = [dev1, dev2]
tasks = [task(dev) for dev in devices]
await asyncio.wait(tasks)
loop = asyncio.get_event_loop()
loop.run_until_complete(run())
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file netdev-0.9.3.tar.gz.
File metadata
- Download URL: netdev-0.9.3.tar.gz
- Upload date:
- Size: 22.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/0.12.15 CPython/3.7.3 Linux/4.4.0-17134-Microsoft
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b15a011e865450445427df5ea36b7a791d7e30fa4f3656b42548e47726961da8
|
|
| MD5 |
cf67ca99d9d06db205235d80bbfa0a6c
|
|
| BLAKE2b-256 |
a6ec79a95a59f8b101250f0c98a265dc3a862b3afd7ff750ae58b1a5ec18f0fd
|
File details
Details for the file netdev-0.9.3-py3-none-any.whl.
File metadata
- Download URL: netdev-0.9.3-py3-none-any.whl
- Upload date:
- Size: 37.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/0.12.15 CPython/3.7.3 Linux/4.4.0-17134-Microsoft
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c7508fde9ffbb5bb181d84ce20f9c66c2da7ed99fdccf6b59129bcca1365e675
|
|
| MD5 |
5f88fc30ae5720c6afceb0272c6a2ed1
|
|
| BLAKE2b-256 |
150a4313e30381e6c9dfd7988de62b0b6b392af4bfe993afaef9c4c8c2507eda
|