The best place for network developers

Building lab environment

So, you are on the way where you would like to write some scripts and test them? Of course, the best option is to have a real device in lab environment, where you can test your scripts. However sometimes it is impossible due to fact, that device can be very expensive. The last and the worst option is to make a test on production environment.
Nowadays, there are many tools which help network engineers in their job or during preparation to exams. Building labs in separated environments is very easy and what is the most important, we can connect lab to real network. One of the tools which you can use is EVE-NG – https://www.eve-ng.net

Let me show you, how to setup test environment. You can do this setup on Linux and Windows. General idea is the same, and where there is a difference, I will mark it.

On both operating system we are going to use virtual environment uing vmware workstation player (if you have got access to ESX or ESXi you can use it as well)

1) Download VmWare Player

Visit vmware webpage where you can download vmplayer
https://www.vmware.com/products/workstation-player/workstation-player-evaluation.html
Please remember, free version is available for non-commercial, personal and home use. For commercial use, buy a license.

Be sure that you have got permissions to install application.
On Windows just execute file and follow the installer.

Below steps I did on Ubuntu:

sudo apt install build-essential
sudo chmod a+x name_of_downloadedfile
./name_of_downloaded_file

or from GUI right click on a file, select Properties and on second tab – Permissions, select Allow executing file.Then execute file by clicking and follow instructions.

2) Download EVE-NG

Visit https://www.eve-ng.net/downloads/eve-ng-2 and download OVA file of EVE-NG community edition. Be aware that, also there is a professional version. Comparison of two can be easily found on internet. When you need more advanced options, buy a license.

3) Import EVE ova to VmWare Player

Visit https://www.eve-ng.net/downloads/eve-ng-2 and download OVA file of EVE-NG community edition. Be aware that, also there is a professional version. Comparison of two can be easily found on internet. When you need more advanced options, buy a license.

a) Run Vm Player

b) Click “Open a Virtual machine”

 

c) Go to directory where you downloaded OVA file and open this file.

Now OVA will be imported to vmplayer. After it finishes you should see

 

d) Double click on EVE Community VM will run virtual environment.

During run you will be asked if you would like to install some additional software, skip it.

Also, on Linux you will be asked, that your NIC can be run in promiscuous mode. It is necessary, when you would like to connect your lab to real network, i.e. virtual router can get IP from DHCP server.

There is a very good article prepared by Vmware company under below link

https://kb.vmware.com/s/article/287

 

e) When everything is ok, you should see below screen

Of course, IP address can be different, depends which network you have.

4) Access to EVE

Open provided IP address in your favorite web browser. 

 

Time to login to EVE, default username is admin with password eve. Also, I prefer to HTML5 console.
 
I encourage you to spend some time playing with interface and see what kind of options you have.
Remember EVE-NG allows you to emulate particular device, however before you add device to virtual lab, add proper device image. List of supported images is under the link
https://www.eve-ng.net/documentation/supported-images
 
I assume that, you have got access to proper images, so you can upload them to EVE-NG environment and setup them to play with it.
Great manual, how to run devices is under this link https://www.eve-ng.net/documentation/howto-s
 
After you finish your lab save it, so it can be reused. Creating many different scenarios is very helpful and depend from what you would like to achieve. Be aware about your hardware limitation. In some cases, it could be worth to buy more memory or buy dedicated computer/server only for building labs.
Good idea is to turn off all virtual infrastructure, when you are done. It saves your system resources.
 

 

Access Point – automatic report

Do you remember when last time local IT / your colleague / HelpDesk / anyone asked you for gathering a report about some devices which are connected in your network? Do you remember all the boring stuff that you had to do? Login into 5, 10, 15… 50 devices and gathering information like IP, port number, description, device name, mac address?

Building lab environment

Every time I have to automate specific kind of a job I write down and answer project specific questions, which help me to prepare algorithm and general idea, how a new solution will work.

Of course, this list can be easily extended during algorithm preparation. A good approach is to prepare small working solution and extend it, every time you need it, by adding new functionality. Building small peaces and extracting specific functions will help in troubleshooting, reduce downtime during writing a code and of course, give a better planning and estimation of time when whole project will be finished.

Automatic interface configuration

For all of us entering same commands / text into CLI becomes boring after some time. Do you remember your fascination when you created a VLAN 10, connected two switches together and they pinged each other? Yes, probably for most of us were very enthusiastic that time. But after some time copying same command, creating same VLANs can become a little bit boring. What can we do to make it faster, better and less prone to mistakes?