How To Execute commands on "MULTIPLE" Routers using Python "ConnectHandler"

Опубликовано: 01 Март 2026
на канале: Network Tips and Topics - Plexinor
114
0

"Want more expert insights and updates? Follow us on LinkedIn and explore our company page to connect with us directly. Don’t miss out - click the link and join the conversation!"

Follow us on LinkedIn   / plexinor  
Company Website Https://www.plexinor.com

Full Script below

lab@admin:~$ cat A10
from netmiko import ConnectHandler
from getpass import getpass
username = input('Enter your SSH username: ')
password=getpass()

with open('BA') as f:
commands_to_send = f.read().splitlines()
print (commands_to_send)

with open('VA') as f:
devices = f.read().splitlines()
print (devices)

for router in devices:
print ('Connecting to device ====================" ' + router)
ip_address_of_device = router
junos_devices = {
'device_type': 'juniper_junos',
'ip': ip_address_of_device,
'username': username,
'password': password
}

all_devices = [junos_devices]

for devices in all_devices:
net_connect = ConnectHandler(**devices)
for x in commands_to_send:
output = net_connect.send_command(x) + "\n"
print(output)

lab@admin:~$ cat BA
show pfe statistics traffic
show arp no-resolve
lab@admin:~$ cat VA
192.168.0.128
192.168.0.122
192.168.0.85