Exemple #1
0
    net_connect = ConnectHandler(device_type='cisco_ios',
                                 ip=device_ip,
                                 username=device_user,
                                 password=device_password)

    # Go into enable mode
    net_connect.enable()

    # Fetch current configuration
    run_config = net_connect.send_command("show run all")
    run_config = run_config.splitlines()

    # Parse configuration
    cisco_cfg = CiscoConfParse(run_config)
    config_obj = cisco_cfg.find_objects_w_all_children(
        parentspec=r"^interface",
        childspec=[r"switchport access vlan " + original_vlan])

    # Loop the config and
    for parent in config_obj:
        print("Changing " + parent.text)
        config_commands = [
            parent.text, 'switchport access vlan ' + target_vlan
        ]
        net_connect.send_config_set(config_commands)

    # Save config
    net_connect.send_command("write mem")

# Close CSV file
configuration_file.close()