Yet Another Python Networking Automation

As you might see on my previous posting how to configure MPLS using Netmiko Python library, this time I will show you another Netmiko application that I created for personal usage. Currently, I’m pursuing one of my goals to get a magic number. Yeah, I’m studying CCIE at this moment. I use some CCIE study materials but for the lab exercise, I’m using INE Lab Workbook and GNS3 as my favorite network emulator.

In this session, I won’t talk more about my CCIE journey itself. Instead, I will show you another Python code to push Cisco router configuration during my lab study based on INE RS v5 Lab Workbook. Usually, I need to copy and paste the initial configuration from INE Lab Workbook into CLI session. And I always need to perform on each lab section. Therefore, I was thinking how to simplify and translate this repeating job into single action so that I can push the initial configuration on 10 routers automatically.


You can refer to the following network diagram that I use on my lab exercise:

Continue reading Yet Another Python Networking Automation


MPLS Automation Using Netmiko

Due to Computer Networking technology are shifting to software-based recently, we are expected to have capability in programming language as part of Network Engineer skill set today. It doesn’t mean to become a Network Engineer you have to be a Programmer too, it doesn’t mean Programmer jobs will be taken over by Network Engineer or vice versa. However, being Network Engineer with programming knowledge will be an advantage. You can automate network configuration using a codes/script to ease your daily operation, eventually the efficiency is the main objective.

I have a limited experience with Java when I was studying at my engineering college few years ago (in fact, I have no background study in IT). I believe, as an IT engineer at least you have an experience in programming too. I prefer to study Python programming now as its easiness to learn and has so many module that you can use, moreover it has large community outside there.

In this session, I will share my codes to automate MPLS L3VPN configuration using Python. Thanks for Kirk Byers who has developed Netmiko library for Python. Alright! As usual, here the network topology as your reference:

Continue reading MPLS Automation Using Netmiko

LUNA – My Personal Assistant

Terinspirasi dari Jarvis pada film Ironman, yang merupakan asisten pribadi Tony Stark dalam setiap menjalankan aksi-aksinya. Baru-baru ini CEO Facebook (Mark Zuckerberg) juga sudah mengembangkan sistem serupa untuk asisten pribadi dirumahnya (real life).

Sambil mengisi waktu luang, saya pun tertarik untuk mengembangkan sistem aplikasi serupa (namun tak sama) sebagai asisten pribadi masa depan. Luna, adalah sebuah program aplikasi berbasis speech-recognition yang diprogram menggunakan bahasa pemrograman Python. Mengapa Python? Karena menurut saya pribadi lebih simple, easy-to-use, dan saat ini sudah banyak module/library diluar sana untuk mendukung aplikasi LUNA ini. Berikut adalah beberapa module yang saya gunakan dalam mengembangkan aplikasi ini:

  • SpeechRecognition (3.5.0)
  • PyTTSX (offline mode), or gTTS (online mode)
  • PyAudio (0.2.9)
  • PocketSphinx (0.1.3)

Continue reading LUNA – My Personal Assistant

Battle Dice

There’s a popular game in the past, it was played among children, teenager, even an adult. This is very easy to play, we just need a dice (can be more). Roll the dice and get the higher score as much as possible. The winner is a player who has higher total score.

This is my first project in Python scripting, I write a code for playing this game. Here you go:

Continue reading Battle Dice