Networks Guru

Author: Ahmed

My experience with Skype during COVID19 Pandemic and why I’m cancelling all my Subscriptions

During the COVID19 remote working surged and it became the only way to continue working in some cases.

For people working abroad, making phone calls is inconvenient and very expensive “Depending on where you are and the destination country”

Since I’m working in Italy in a consulting firm, I decided to remove this limit by purchasing an unlimited calls package to Italy “2000 minutes included, then they charge a per minute rate”

Configuring and Troublshooting NTP on a Cisco IOS Router

Notte: This article assumes you already know what is the NTP protocol and its related concepts.

Configuring a cisco IOS router as an NTP client requires implementing the below commands,
1. Setting up the timezone, in this case we’ll consider Italy’s timezone which is CET (GMT +1)
We’ll set the dayklight savins using the summer time-zone command

clock timezone CET 1
clock summer-time CEST recurring

2. Configuring the NTP server & it can be inserted as an IP in case it’s an internal Server or a public server with a static IP

Hosting Changes

The site has been moved to a more robust hosting solution, The overall experience should be improved & more articles will follow.

Stay around! 🙂

Using Dual Monitor/Dual Touch Screens on Ubuntu

When using a dual touch screens on ubuntu, the touch may not be mapped correctly to the monitor and it may span both screens as input and only 1 monitor as an output.
Or simply touching any of them will result in having the input on the same screen (Relatively).

So, In order to apply a fix for this issue, The touch input should be mapped to the correct monitor

We may use 2 linux apps to list this info.
1. xinput is used for listing the input devices
2. xrandr is used to show/set the size, orientation and/or reflection of the outputs for a screen. It can also set the screen size.

ELK – Logstash Issue ” Couldn’t find any filter plugin named ‘else’. “

Recently while configuring a logstash pipeline,I’ve been through an error that was a bit tricky to find since it was referring to a missing plugin named ‘else’.

Searching the issue a bit didn’t  show much help, So I hope this saves couple hours/minutes trying to find out the root cause.
Here’s an interesting part from the Exception Message

The given configuration is invalid. Reason: Couldn’t find any filter plugin named ‘else’…

Listing Network Interfaces in C

There are various ways for listing the network interfaces while programming in C, The below code sample should be straight forward & list them all.

Python OCR Quick Start – Basic Code

Ever had lots of screenshots that you liked to index and search?

Well, this is the objective of this post. We’ll use minimal code “Just enough to get things working”

To do so, Some python Libraries and their dependencies should be installed 1st

    • PIL “Python imaging library”  ->
    • Pytesserct “Python Optical Character Recognition Tool”

Apache – Mapping URL PATH to a Directory on the FileSystem

Well, Mapping a URL Path to a directory can be useful in many scenarios,


  • As a proof of ownership, some sites may ask you to publish certain files in certain directories “Google WebSite Ownership Verification, etc…
  •  Publishing Django static files while proxying all the other URLs. Django Developers will relate 🙂
  • etc…

Patching WordPress DoS Vulnerability CVE-2018-6389 using Modsecurity

The Vulnerability as explained in relies in executing high number of requests, So by temporarily applying rate limiting, the impact of this vulnerability maybe mitigated using various methods one of them is by using Modsecurity until a fix is released.

Other References:

Creating a dummy Interface on a Linux/Unix based Systems

A dummy interface maybe created for various reasons like:

  • Publishing Services
  • A 2nd loopback interface with a public IP

Verifying a route on a Linux System

With the existence of the IP package in a linux/unix system the routing table can be viewed using the below command

$ ip route


Parsing a list of IPs and/or Networks with Prefix-Length or Subnet Masks

A very simple script that uses ipcalc capabilities to parse a list of IPs or networks an outputs a list of readable Network IDs with their subnet masks.



The Impact of License Expiry on F5 BIG-IP VE

When a license “Support Contract” expires on an F5 appliance whether if it’s a Physical or a Virtual appliance, there’s no effect/disruption to the production environment configured on the device itself.
When the support contract is expired the impact is described below,

– If you come across a software issue or bugs, then you will not be able to upgrade
– No support/assistance will be provided by the vendor related to the appliance.

It’s usually advised to contact the support in case of any doubts.

Changing the Wireless Card’s Transmission Power

The current value of the wireless card’s TX-Power can be verified using the below command

user@pc:~ $ iwconfig
wlan0 IEEE 802.11 ESSID:off/any
Mode:Managed Access Point: Not-Associated Tx-Power=22 dBm
Retry short limit:7 RTS thr:off Fragment thr:off
Power Management:on

user@pc:~ $ iw reg get
country GB: DFS-ETSI
(2402 - 2482 @ 40), (N/A, 20), (N/A)
(5170 - 5250 @ 80), (N/A, 20), (N/A)
(5250 - 5330 @ 80), (N/A, 20), (0 ms), DFS
(5490 - 5710 @ 160), (N/A, 27), (0 ms), DFS
(57000 - 66000 @ 2160), (N/A, 40), (N/A)

The Tx-Power value is in dBm “Decibel (referenced to milliwatts)” This value can be converted to milliwatts using this function

P(mW) = 1mW â‹… 10(P(dBm)/ 10)

Before changing the value of the Tx-Power, You need to make sure that you comply with the legal limits within your country and you’ll not end up frying the wireless card

The below commands can be used to change the current value of the transmission power

The max value cannot be set over the limit specified by the assigned country’s regulations

So, for education Purpose only the country may be set to a country allowing higher Transmission power “ex: Bolivia <BO>”


ifconfig wlan0 down
iw reg set BO
ifconfig wlan0 up
iwconfig wlan0 txpower 30


So,  By verifying the results of the last commands, we see that the values have been set successfully

user@pc:~ $ iwconfig wlan0
wlan0 IEEE 802.11 ESSID:off/any
Mode:Managed Access Point: Not-Associated Tx-Power=30 dBm
Retry short limit:7 RTS thr:off Fragment thr:off
Power Management:on

user@pc:~ $ iw reg get
country BO: DFS-JP
(2402 - 2482 @ 40), (N/A, 20), (N/A)
(5250 - 5330 @ 80), (N/A, 30), (0 ms), DFS
(5735 - 5835 @ 80), (N/A, 30), (N/A)




Installing Running and Troubleshooting GNS3 1.3.3 IOU on Ubuntu 15.04

Starting with the video,

Continuing with the road-map and the correspondent steps

1- Install iouyap
sudo apt-get install git bison flex
git clone
cd iniparser
sudo cp libiniparser.* /usr/lib/
sudo cp src/iniparser.h /usr/local/include
sudo cp src/dictionary.h /usr/local/include
cd ..
git clone
cd iouyap
sudo make install

2- Install vpcs

sudo apt-get install vpcs

3- Add IOU virtualbox image

-Change hostname
-Config static IP
-Add 2nd Interface
-Edit Sources.List
-Install Python2.7

4-Connecting IOU VM to GNS3
5-Running and Testing the new setup


Finally, Please note that the .iourc file has been uploaded with the correct type later on before continuing with the vid.

Installing GNS3 1.3.3 on Ubuntu 15.04

Starting with the video,


The commands used in this video below,

before starting with the installation , Please confirm that you have Python 3.3 or more using this command   python3 -v if not please download and install it either by visiting python’s website or by using the below command

sudo apt-get install python3.4.3

also make sure that gcc is installed using

sudo apt-get install gcc

GNS3 GUI – Part1 :

sudo apt-get install python3-setuptools
sudo apt-get install python3-pyqt4
cd gns3-directory
sudo python3 install

GNS3 Server – Part2:

sudo apt-get install python3-setuptools
sudo apt-get install python3-netifaces
cd gns3-directory
sudo python3 install

Dynamips – Part3:

sudo apt-get install cmake
apt-get install libelf-dev
apt-get install uuid-dev
cd dynamips-directory
mkdir build
cd build
sudo cmake ..
sudo make install

If you like the video Please press like & subscribe, Also your feedback is most welcomed,,,

Powered by WordPress & Theme by Anders Norén