networktocode/ntc-netbox-plugin-onboarding

Bulk Onboarding Cisco AP AIR-AP3802I-E-K9 with specified platform cisco_ios not working

Dapsy2000 opened this issue · 1 comments

Environment

  • Python version: 3.6.10
  • NetBox version: 2.9.6
  • ntc-netbox-plugin-onboarding version: Where can I find this information?

Steps to Reproduce

I wanted to onboard Cisco APs.
Cisco AIR-CAP2602I-E-K9, AIR-CAP2702I-E-K9, AIR-CAP2702I-E-K9, AIR-CAP3702I-E-K9 and AIR-LAP1242AG-E-K9 work fine.
The SSH autodetect works because show version has IOS in the output. But Cisco AIR-AP3802I-E-K9 SSH autodetect doesn't work because there ist no IOS in show version output and so it can not find the cisco_ios (ios) as NAPALM driver.

If I try to specify the NAPALM driver via platform in Bulk Import I get an error.

site,ip_address,platform,username,password,secret
Site-A,10.199.155.15,cisco_ios,USER,PASSWORD,SECRET

Error
Failed reason: fail-general
Message: 'ipv4'

But if I do the same thing with NAPALM directly via CLI it works.

from napalm import get_network_driver
driver = get_network_driver("ios")
device = driver(hostname='10.199.155.15',username='USER',password='PASSWORD', optional_args={'secret': 'SECRET'})
device.open()
device.get_facts()

Output:
{'uptime': 7083780,
 'vendor': 'Cisco',
 'os_version': 'Unknown',
 'serial_number': 'ABCDEF12345',
 'model': 'AIR-AP3802I-E-K9',
 'hostname': 'AP-01',
 'fqdn': 'Unknown',
 'interface_list': ['wired0', 'wired1', 'wifi0', 'wifi1']}

device.close()

Issue seems to be with underlying drivers and tools : netmiko and napalm - both of them need to work fine with your device to properly onboard network device using plugin. Please manually verify following outputs to assure driver-platform compatibility:

napalm_device.get_facts()
napalm_device.get_interfaces_ip()