Thursday, June 16, 2011

Basic MPLS Cloud config on Cisco 3640

This is the testing configuration that I have tried in GNS3. I have used 6 number of Cisco 3640 routers for simulating the MPLS cloud. The network is as shown in the above diagram.
Router R3,R4,R5,R6 are provider routers (LSRs) , R3 and R7 are the Provider Edge Routers (LERs) meanwhile the routers R1 and R8 are Customer Edge routers.

Label distribution protocol used in this scenario is LDP and the IGP used is OSPF. The customer edge routers are having single static route for the remote Customer end network.

Configurations : (Note: Only added the necessary config for shortness of the article)

------------
R1 :

!
interface Ethernet0/0
 ip address 192.168.1.1 255.255.255.252
 !
ip route 172.16.1.0 255.255.255.252 192.168.1.2
!
!
--------------------
R2:
!
ip cef
no ip domain lookup
!
!
mpls label range 300 400
mpls label protocol ldp
!
interface Loopback1
 ip address 2.2.2.2 255.255.255.255
!
interface Ethernet0/0
 ip address 3.2.1.2 255.255.255.252
 half-duplex
 mpls ip
!
interface Ethernet0/1
 ip address 2.4.1.1 255.255.255.252
 half-duplex
 mpls ip
!
interface Ethernet0/2
 ip address 2.5.1.1 255.255.255.252
 half-duplex
 mpls ip
!
interface Ethernet0/3
 no ip address
 shutdown
 half-duplex
!
router ospf 1
 log-adjacency-changes
 network 2.2.2.2 0.0.0.0 area 0
 network 2.4.1.0 0.0.0.3 area 0
 network 2.5.1.0 0.0.0.3 area 0
 network 3.2.1.0 0.0.0.3 area 0

!
!
!
!
mpls ldp router-id Loopback1
!
 ------------------
R3:

ip cef
!
!
mpls label range 100 200
mpls label protocol ldp
!
!
interface Loopback1
 ip address 3.3.3.3 255.255.255.255
!
interface Ethernet0/0
 ip address 192.168.1.2 255.255.255.252
 half-duplex
!
interface Ethernet0/1
 ip address 3.2.1.1 255.255.255.252
 half-duplex
 mpls ip
!
interface Ethernet0/2
 ip address 3.5.1.1 255.255.255.252
 half-duplex
 mpls ip
!
interface Ethernet0/3
 no ip address
 shutdown
 half-duplex
!
router ospf 1
 log-adjacency-changes
 network 3.2.1.0 0.0.0.3 area 0
 network 3.3.3.3 0.0.0.0 area 0
 network 3.5.1.0 0.0.0.3 area 0
 network 192.168.1.0 0.0.0.3 area 0
!
!
mpls ldp router-id Loopback 1
 ---------------------
R4:

ip cef
no ip domain lookup
!
!
mpls label range 700 800
mpls label protocol ldp
!
!
interface Loopback1
 ip address 4.4.4.4 255.255.255.255
!
interface Ethernet0/0
 ip address 2.4.1.2 255.255.255.252
 half-duplex
 mpls ip
!
interface Ethernet0/1
 ip address 4.6.1.1 255.255.255.252
 half-duplex
 mpls ip
!
interface Ethernet0/2
 ip address 4.7.1.1 255.255.255.252
 half-duplex
 mpls ip
!
interface Ethernet0/3
 no ip address
 shutdown
 half-duplex
!
router ospf 1
 log-adjacency-changes
 network 2.4.1.0 0.0.0.3 area 0
 network 4.4.4.4 0.0.0.0 area 0
 network 4.6.1.0 0.0.0.3 area 0
 network 4.7.1.0 0.0.0.3 area 0
!
mpls ldp router-id Loopback1
----------------------
R5:

ip cef
!
!
mpls label range 500 600
mpls label protocol ldp
!
!
interface Loopback1
 ip address 5.5.5.5 255.255.255.255
!
interface Ethernet0/0
 ip address 2.5.1.2 255.255.255.252
 half-duplex
 mpls ip
!
interface Ethernet0/1
 ip address 5.6.1.1 255.255.255.252
 half-duplex
 mpls ip
!
interface Ethernet0/2
 ip address 3.5.1.2 255.255.255.252
 half-duplex
 mpls ip
!
interface Ethernet0/3
 no ip address
 shutdown
 half-duplex
!
router ospf 1
 log-adjacency-changes
 network 2.5.1.0 0.0.0.3 area 0
 network 3.5.1.0 0.0.0.3 area 0
 network 5.5.5.5 0.0.0.0 area 0
 network 5.6.1.0 0.0.0.3 area 0
!
--------------

R6:
!
ip cef
no ip domain lookup
!
!
mpls label range 900 1000
mpls label protocol ldp
!
!
interface Loopback1
 ip address 6.6.6.6 255.255.255.255
!
interface Ethernet0/0
 ip address 5.6.1.2 255.255.255.252
 half-duplex
 mpls ip
!
interface Ethernet0/1
 ip address 4.6.1.2 255.255.255.252
 half-duplex
 mpls ip
!
interface Ethernet0/2
 ip address 6.7.1.1 255.255.255.252
 half-duplex
 mpls ip
!
interface Ethernet0/3
 no ip address
 shutdown
 half-duplex
!
router ospf 1
 log-adjacency-changes
 network 4.6.1.0 0.0.0.3 area 0
 network 5.6.1.0 0.0.0.3 area 0
 network 6.6.6.6 0.0.0.0 area 0
 network 6.7.1.0 0.0.0.3 area 0
!
-----------------
R7:
!
ip cef

!
mpls label range 1100 1200
mpls label protocol ldp
!
interface Loopback1
 ip address 7.7.7.7 255.255.255.255
!
interface Ethernet0/0
 ip address 4.7.1.2 255.255.255.252
 half-duplex
 mpls ip
!
interface Ethernet0/1
 ip address 6.7.1.2 255.255.255.252
 half-duplex
 mpls ip
!
interface Ethernet0/2
 ip address 172.16.1.2 255.255.255.252
 half-duplex
!
interface Ethernet0/3
 no ip address
 shutdown
 half-duplex
!
router ospf 1
 log-adjacency-changes
 network 4.7.1.0 0.0.0.3 area 0
 network 6.7.1.0 0.0.0.3 area 0
 network 7.7.7.7 0.0.0.0 area 0
 network 172.16.1.0 0.0.0.3 area 0
!
mpls ldp router-id Loopback1
----------
R8:

!
interface Ethernet0/0
 ip address 172.16.1.1 255.255.255.252
 half-duplex
!
ip route 192.168.1.0 255.255.255.252 172.16.1.2


To test the end to end connectivity try pinging from R1 to R8..!! (In this scenario it works.....if you dont like to take my word for it you may check the same with GNS3 at your end too with the same steps).

Outputs of "show mpls forwarding-table" command in Provider routers :
R2 :                                                                          












R5:











R4:











R6:












You can tryout the traceroute command to check the LSP(label switches path) that the packets are taking.


Njoy..!!!

Tuesday, December 28, 2010

nVidia's mammoth processor for smartphones - Tegra2

nVidia has come up with Tegra 2 which will be loaded in LG Optimus 2X, a dual core processor for the smartphones.

The tegra 2 will have dual cortex-A9 processors on board clocked at 1 Ghz. The silicon area will be loaded with 8 processor (including the dual A9s) which are purpose optimized. The power management will be via software as well as hardware. ARM 7 processor is also loaded on board. The A9 processor being a power consuming will only be required when the high processor cycle requiring rendering application are called. Else where the ARM 7 will be utilised to save the power. ARM 7 will communicate with the Audio and video processor on board.

The GeForce Graphics processor in the architecture can render games such as Quake 3 at 60 FPS for 1024 x 600 resolution. GPU in Tegra processor has a dedicated processor to handle the video workload and thus CPU is not utilised in the task. The Video decode processor outputs flawless 1080p video (as claimed by nVidia).  Image signal processor support 12 MP camera with 30 fps.



The Tegra2 will be equipped with android in LG Optimus 2X or LG star as they are calling it. Waiting for the reviews of the beast ..!


Please somebody buy me this fone ....;) !

Monday, December 27, 2010

Give your Ubuntu 10.10 a Macintosh feel

 
Bored of default GNOME environment on your Ubuntu 10.10. Give a Mac look to your 
Ubuntu 10.10.
The result will be a beautiful desktop as in image. Yeah thats my desktop !!!! :)
 
Open the terminal and issue following commands in sudo mode (if required).

wget https://downloads.sourceforge.net/project/macbuntu/macbuntu-10.10/v2.3
/Macbuntu-10.10.tar.gz -O /tmp/Macbuntu-10.10.tar.gz
 
tar xzvf /tmp/Macbuntu-10.10.tar.gz -C /tmp
 
cd /tmp/Macbuntu-10.10/
 
./install.sh
 
Enjoy !!!!

Sunday, December 26, 2010

Nagios installation on Ubuntu 10.10 (Desktop & Server)

Nagios is one of the Best NMS that one came come across.The following are thr configuration steps that have been tried and tested on ubuntu 10.10 Desktop as well as server edition.

Nagios has few package dependencies however the following guidelines will prove useful for the installation.
It may so happen the "sudo" may be required on some command execution. Need to mind that...


Required Packages
Make sure you've installed the following packages on your Ubuntu installation before continuing.
  • Apache 2
  • PHP
  • GCC compiler and development libraries
  • GD development libraries
You can use apt-get to install these packages by running the following commands:

sudo apt-get install apache2

sudo apt-get install libapache2-mod-php5

sudo apt-get install build-essential

With Ubuntu 6.10, install the gd2 library with this command:

sudo apt-get install libgd2-dev

With Ubuntu 7.10, the gd2 library name has changed, so you'll need to use the following:

sudo apt-get install libgd2-xpm-dev

1) Create Account Information
Become the root user.

sudo -s

Create a new nagios user account and give it a password.

/usr/sbin/useradd -m -s /bin/bash nagios

passwd nagios

On older Ubuntu server editions (6.01 and earlier), you will need to also add a nagios group (it's not created by default). You should be able to skip this step on desktop, or newer server editions of Ubuntu.

/usr/sbin/groupadd nagios

/usr/sbin/usermod -G nagios nagios

Create a new nagcmd group for allowing external commands to be submitted through the web interface. Add both the nagios user and the apache user to the group.

/usr/sbin/groupadd nagcmd

/usr/sbin/usermod -a -G nagcmd nagios

/usr/sbin/usermod -a -G nagcmd www-data

2) Download Nagios and the Plugins
Create a directory for storing the downloads.

mkdir ~/downloads

cd ~/downloads

Download the source code tarballs of both Nagios and the Nagios plugins (visit http://www.nagios.org/download/ for links to the latest versions). These directions were tested with Nagios 3.1.1 and Nagios Plugins 1.4.11.

wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-3.2.3.tar.gz

wget http://prdownloads.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.11.tar.gz

3) Compile and Install Nagios sourcecode
Extract the Nagios source code tarball.

cd ~/downloads

tar xzf nagios-3.2.3.tar.gz

cd nagios-3.2.3

Run the Nagios configure script, passing the name of the group you created earlier like so:

./configure --with-command-group=nagcmd

Compile the Nagios source code.

make all

Install binaries, init script, sample config files and set permissions on the external command directory.

make install

make install-init

make install-config

make install-commandmode

Don't start Nagios yet - there's still more that needs to be done...
4) Customize Configuration
Sample  configuration files have now been installed in the /usr/local/nagios/etc directory. These sample files should work fine for getting started with Nagios. You'll need to make just one change before you proceed...
Edit the /usr/local/nagios/etc/objects/contacts.cfg config file with your favorite editor and change the email address associated with the nagiosadmin contact definition to the address you'd like to use for receiving alerts.

vi /usr/local/nagios/etc/objects/contacts.cfg

5) Configure the Web Interface
Install the Nagios web config file in the Apache conf.d directory.

make install-webconf

Create a nagiosadmin account for logging into the Nagios web interface. Remember the password you assign to this account - you'll need it later.

htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

Restart Apache to make the new settings take effect.

/etc/init.d/apache2 reload

6) Compile and Install the Nagios Plugins
Extract the Nagios plugins source code tarball.

cd ~/downloads

tar xzf nagios-plugins-1.4.11.tar.gz

cd nagios-plugins-1.4.11

Compile and install the plugins.

./configure --with-nagios-user=nagios --with-nagios-group=nagios

make

make install

7) Start Nagios service
Configure Nagios to automatically start when the system boots.

ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios

Verify the sample Nagios configuration files.

/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

If there are no errors, start Nagios.

/etc/init.d/nagios start

8) Login to the Web Interface
You should now be able to access the Nagios web interface at the URL below. You'll be prompted for the username (nagiosadmin) and password you specified earlier.

http://localhost/nagios/

Click on the "Service Detail" navbar link to see details of what's being monitored on your local machine. It will take a few minutes for Nagios to check all the services associated with your machine, as the checks are spread out over time. 

With this default configuration as above the Nagios server should be accessible over the localhost as well as on the LAN. Or else the firewall settings may required be changed.