Python Script: HP Switch

Ternyata skrip python yang biasa saya gunakan untuk mengambil konfigurasi perangkat Cisco tidak bisa digunakan untuk HP Switch (model ProCurve maupun Aruba). Setelah googling sana sini akhirnya bikin skrip baru memakai pexpect. HP Switch yang digunakan untuk percobaan adalah model HP J9780A 2530-8-PoEP.

Modul yang dibutuhkan untuk skrip ini.

#!/usr/bin/env python3
import pexpect
import sys

Parameter yang digunakan.

HOST = "10.0.0.1"
USER = "admin"
PASS = "admin"

Pertama pexpect akan melakukan telnet ke perangkat.

t = pexpect.spawn('telnet {}'.format(HOST))

Perangkat akan menanyakan username untuk login

# username
t.expect('Username:')
t.sendline(USER)

…dan password.

# password
t.expect('Password:')
t.sendline(PASS)

Sampai sini kita akan mengambil hostname dari perangkat.

# get hostname
t.expect('#')
NAME = str(t.before.decode().split(' ')[-1])
print(NAME+'\r\n')
PROMPT = str(NAME+'#')

Mari kita nonaktifkan paging mode supaya tidak perlu menekan spacebar.

# no pagination
t.sendline('no page')
t.expect(PROMPT)

Dan akhirnya kita akan mengambil sh ver dan sh run dari perangkat.

# show version
t.sendline('sh ver')
t.expect(PROMPT)
print(t.before.decode())

# show configuration
t.sendline('sh run')
t.expect(PROMPT)
print(t.before.decode())

 

 

Author: bagus

cross-border commuter

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s