Sunday, 25 December 2016

Configuring HSRP on Cisco Router

Configuring HSRP on Cisco Router

Using the diagram above we are going to configure R1 and R2 for HSRP using the virtual IP address of 10.1.20.1 
R1 will be configured as the Active HSRP default-gateway and R2 will be configured as Standby. 
MPLS
 
 

 



BLR-OIMS-RTR01
 
BLR-OIMS-RTR02
 
Gi0/0
 
Gi0/0
 
 The Preempt command is configured on both routers.

HSRP on R1

BLR-OIMS-RTR01(config)# interface Gi0/0
BLR-OIMS-RTR01 (config-if)# ip address 10.1.20.2 255.255.255.0
BLR-OIMS-RTR01 (config-if)# standby 1 ip 10.1.20.1
BLR-OIMS-RTR01 (config-if)# standby 1 priority 110
BLR-OIMS-RTR01 (config-if)# standby 1 preempt

HSRP on R2

BLR-OIMS-RTR02 (config)# interface Gi0/0
BLR-OIMS-RTR02 (config-if)# ip address 10.1.20.3 255.255.255.0
BLR-OIMS-RTR02 (config-if)# No shutdown
BLR-OIMS-RTR02 (config-if)# standby 1 ip 10.1.20.1
BLR-OIMS-RTR02 (config-if)# standby 1 preempt



Verify HSRP
After configuration, give a few moment and use the show standby and show standby brief commands on R1 and R2 to verify that HSRP your configuration. 
R1 should be the Active router and R2 should be Standby.

- See more at: http://www.orbit-computer-solutions.com/How-to-configure-HSRP-on-Cisco-router-.php#sthash.nVbG0y6O.dpuf

SCRIPT TO CREATE A ANDROID APP WITH VIDEO




package com.example.raghuvels.bm;

import android.net.Uri;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.view.Menu;
import android.widget.Button;
import android.widget.VideoView;


public class MainActivity extends AppCompatActivity {

    Button clk;
        VideoView videov;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        clk = (Button) findViewById(R.id.button);
        videov = (VideoView) findViewById(R.id.videoView);

    }

    public void videoplay(View v)
    {
        String videopath = "android.resource://com.example.raghuvels.bm/raw/ankhon";

        Uri uri = Uri.parse(videopath);

        videov.setVideoURI(uri);
        videov.start();
    }
    public void buttonOnClick(View v) {
        Button button = (Button) v;
        ((Button) v).setText("Raghu");
    }
    public void buttonOnClick2(View m) {
        Button button = (Button) m;
        ((Button) m).setText("Bhamini");



    }
}


================================

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/activity_main"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:paddingBottom="@dimen/activity_vertical_margin"
    tools:context="com.example.raghuvels.bm.MainActivity">

    <Button
        android:text="He"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"

        android:id="@+id/button"
        android:onClick="buttonOnClick"
        android:layout_alignParentTop="true" />

    <Button
        android:text="She"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/button2"
        android:onClick="buttonOnClick2"
        android:layout_alignParentRight="true"


        />
    <Button
        android:text="Button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/button3"
        android:layout_below="@id/button2"
        android:layout_alignParentRight="true"

        />


    <ImageView
        android:layout_width="150dp"
        android:layout_height="800dp"
        app:srcCompat="@drawable/mb"
        android:layout_alignParentRight="true"
        android:id="@+id/imageView"
        android:layout_marginEnd="19dp"
        android:layout_alignParentTop="true"
        android:layout_alignParentEnd="true" />

    <ImageView
        android:layout_width="150dp"
        android:layout_height="500dp"
        app:srcCompat="@drawable/ff"
        android:layout_alignParentLeft="true"
        android:id="@+id/imageView3"
        android:layout_alignParentTop="true"
        android:layout_alignParentStart="true" />

    <ImageView
        android:layout_width="500dp"
        android:layout_height="50dp"
        app:srcCompat="@drawable/images"
        android:id="@+id/imageView4" />

    <VideoView
        android:layout_width="wrap_content"
        android:layout_height="100dp"
        android:id="@+id/videoView"
        android:layout_alignParentBottom="true"
        />


</RelativeLayout>

Thursday, 15 December 2016

Script to create VLAN


#our $session = new Net::Telnet::Cisco(Timeout => 20,ErrMode => 'return');

sub FINAL_CHECK
{
my $session=$_[0];
               
$session->waitfor('/>/');

                my @outputs = $session->cmd("sh vlan");

                foreach $items (@outputs)
                        {
                        @hits = split(' ',$items);


                                        if(!defined $hits[0])
                                        {

                                        }
                                        elsif($hits[0] eq $vlan_number)

                                        {

                                                $vlaninfos[$aclCounters++] = $items;

                                        }


                        }

                        my $lens = $#vlaninfos;

                        if($lens ne 0)


                                        {

                                        exit_script(" CREATED VLAN SUCESSFULLY ",0);


}
                         else

                                {


                                exit_script(" UNABLE TO CREATE VLAN PLEASE CONTACT NETWORK ADMIN ",18);

                                }

}

sub CREATE_VLAN_SUB
{

my $session=$_[0];

               $session->waitfor('/*#/');

                        if($vlan_number =~ /^(\d+)/)
                        {

                        $session->cmd("vlan $vlan_number");

$session->waitfor('/(config-vlan)/');

                        $session->cmd("name $vlan_name");

                        $session->put( "\cZ" );

return $session;

                        }
                        else
                       {

exit_script(" Only numbers are allowed in vlan name=".$vlan_number,17);
                        }

}

sub CONF_TERMINAL
{

my $session=$_[0];

                $session->print($cmd);

                $session->print($ena_passwd);

                @patten_ch = $session->waitfor('/#/');

                        if(defined $patten_ch[1])
                               {
                                            if($patten_ch[1] =~ /#/)
                                            {

                                                logw("VALID ENABLE CREADENTIALS",1);

                                                $session->print("conf t");

                                                return $session;

                                            }
                               }

                        else

                        {

                        exit_script(" NOT A VALID ENABLE CREDENTIALS=".$ena_passwd,16);

                        }

}


sub VLAN_CHECK
{

my $session=CONN_DEVICE();

                my @output = $session->cmd("sh vlan | i $vlan_number");

                foreach $item (@output)
                        {
                   
                        @hit = split(' ',$item);


                                        if(!defined $hit[0])
                                        {

                                        }
                                        elsif($hit[0] eq $vlan_number)

                                        {

                                                $vlaninfo[$aclCounter++] = $item;

                                        }

                        }

                         my $len = $#vlaninfo;

                        if($len ge 0)

                                {
                                foreach $eachvlan (@vlaninfo)
                                        {

exit_script(" Vlan Alredy exists=".$eachvlan,15);

                                        }
                                }

                         else
                                {

logw("NO VLAN FOUND",1);

$session = &CONF_TERMINAL($session);

$session = &CREATE_VLAN_SUB($session);

$session = &FINAL_CHECK($session);

                                }
}



sub CONN_DEVICE
{


                my $session = new Net::Telnet::Cisco(Timeout => 20, ,ErrMode => 'return');

                $session->open($ip);

                $session->waitfor('/Username:/');

                $session->print($user_name);

                $session->print($passwd);

                our @patten_chk = $session->waitfor('/>/');

                        if(defined $patten_chk[1])
                               {
                                            if($patten_chk[1] =~ />/)
                                            {
                                                     #   print "Valid Creadentials ";

                                                        logw("Valid Creadentials",1);

                                                        return $session;


                                            }
                               }

                               else
                               {
                                      #  print "Not valid user credentials";

                                        exit_script("Unable to conn to device"." Possible root cause \n 1.Not valid credentials \n 2.Not valid device ip",13);
                               }

}



sub IP_VALIDATION
{

if($ip=~/^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/ &&(($1<=255  && $2<=255 && $3<=255  &&$4<=255 )))

        {

logw("valid ip conn to device $ip ",1);

}

else

        {
exit_script("Not a Valid ip=".$ip,12);

        }

}

&IP_VALIDATION;

&VLAN_CHECK;

###################################################################

POWER SHELL SCRIPT TO CONFIGURE SEPARATOR PAGE (PRINTER)



$username = "administrator"
$password = "pass**" | ConvertTo-SecureString -asPlainText -Force
$credential = New-Object System.Management.Automation.PSCredential($username,$password)
$printer = GET-WMIOBJECT -query "select * from Win32_Printer where Name='${workflow.scratchpad.printer}'" -ComputerName ${workflow.scratchpad.serverip} -Credential $credential
$query = "Select * From Win32_TCPIPPrinterPort where Name ='" + $printer + "'"
foreach ($objItem in $printer) {
     
       $objItem.SeparatorFile = "C:\WINDOWS\system32\sysprint.sep"
  $objItem.put()
     
}
Write-Host "$query"

POWERSHELL TO CONNECT AND CONFIGURE PRINTER


$computerName = "192.168.*.**"
$username = "**\Administrator"
$pw = "**"


$PrinterName
# Creating Credentials
$securepw = ConvertTo-SecureString $pw -asplaintext -force
$cred = new-object -typename System.Management.Automation.PSCredential -argument $username, $securepw

# Creating and using session
$session = New-PSSession -credential $cred -ComputerName $computerName
#$session
Invoke-Command -session $session -scriptblock {
#Keep the script for duplex mode changing
#$host.Runspace.ThreadOptions = "ReuseThread"
Add-Type -AssemblyName System.Printing
$permissions = [System.Printing.PrintSystemDesiredAccess]::AdministrateServer
$queueperms = [System.Printing.PrintSystemDesiredAccess]::AdministratePrinter
$server = new-object System.Printing.PrintServer -argumentList $permissions
$queues = $server.GetPrintQueues(@([System.Printing.EnumeratedPrintQueueTypes]::Shared))
#$queues

$PrinterName =  Read-Host "Printer Name"
foreach ($q in $queues) {
    #Get edit Permissions on the Queue


    $q2 = new-object System.Printing.PrintQueue -argumentList $server,$q.Name,1,$queueperms

    [String]$QueueName = $q2.Name
    #$QueueName
    #$PrinterName + " << "
    #$QueueName.Equals($PrinterName)
    if( $QueueName.Equals($PrinterName))
    {
    #Set DefaultPrintTicket
    $duplexCaps = $q2.GetPrintCapabilities().DuplexingCapability
    #$q2.FullName
    if ($duplexCaps.Contains([System.Printing.Duplexing]::TwoSidedLongEdge)) {
        $q2.DefaultPrintTicket.Duplexing = [System.Printing.Duplexing]::TwoSidedLongEdge
$q2.commit()
  $q.FullName
  $q2.DefaultPrintTicket.Duplexing
       
}
}
}

}
Remove-PSSession $session

Thursday, 8 December 2016

PERL SCRIPT TO ENTER INTO THE INTERFACE OF CISCO SWITCH



use Net::Telnet::Cisco;

sub INTERFACE_CHECK
{
my @hi;
my $ite;
my $Counters = 0;
my @v;
my $l;
my $e;

my $session=$_[0];
$session->waitfor('/>/');
my $combo = $int_type.$int_num;
                my @ou = $session->cmd("sh ip int br");

foreach $ite (@ou)
                        {
                        @hi = split(' ',$ite);
                                        if(!defined $hi[0])
                                        {

                                        }
                                        elsif($hi[0] eq $combo)
                                        {
                                                $v[$aclCounter++] = $ite;
                                        }
                        }
                         $l = $#v;
                         if($l ge 0)
                                {
                                foreach $e (@v)
                                        {
                                       


print("ENTERED INTO THE INTERFACE");

                                        }
                                }

                         else
                                {

print("UNABLE TO ENTER INTO THE INTERFACE");
}
}

Perl Script to ASSIGN A PORT TO A SPECIFIC VLAN in cisco switch using Net::Telnet::Cisco module



# *** INFOSTART ***
#
# Script Name   : NW-ASSIGN A PORT TO A SPECIFIC VLAN-Script.pl
# Version       : 1.0
# Description   : ASSIGN A PORT TO A SPECIFIC VLAN
# Written By    : RAGHUVEL
# Written Date  : 21-10-2013
# Compatibility : Shell 1.0 & 2.0
#
# *** INFOEND ***

use strict;

use Net::Telnet::Cisco;






our $ip = "";

our $user_name = "";

our $passwd = "";

our $ena_passwd = "";

our $cmd = "en";

our $vlan_number = "";

our $vlan_name = "";

our $int_type = "";

our $int_num = "";

our $aclCounter = 0;

our $aclCounters = 0;

our $aclCount = 0;

our $item;

our $items;

our @hit;

our @hits;

our @vlaninfo;

our @vlaninfos;

our @int_info;

our $eachvlan;

our $eachvlans;

our @patten_chk;

our @patten_ch;

our @patten_c;

our @patten_ck;

our @patten_cm;

our @patten_check;

our $bhamini;





###############################################################################################################################


sub INTERFACE_CHECK
{
my @hi;
my $ite;
my $Counters = 0;
my @v;
my $l;
my $e;

my $session=$_[0];
$session->waitfor('/>/');
my $combo = $int_type.$int_num;
                my @ou = $session->cmd("sh ip int br");

foreach $ite (@ou)
                        {
                        @hi = split(' ',$ite);
                                        if(!defined $hi[0])
                                        {

                                        }
                                        elsif($hi[0] eq $combo)
                                        {
                                                $v[$aclCounter++] = $ite;
                                        }
                        }
                         $l = $#v;
                         if($l ge 0)
                                {
                                foreach $e (@v)
                                        {
                                       


return $session;

                                        }
                                }

                         else
                                {

print("UNABLE TO ENTER INTO THE INTERFACE");
}
}



sub INTERFACE_CONF

{
my $session=$_[0];

                $session->print("$cmd");

                $session->print("$ena_passwd");

                @patten_c = $session->waitfor('/#/');

                if(defined $patten_c[1])
                     {
                     if($patten_c[1] =~ /#/)
                     {
    logw("VALID ENABLE CREADENTIALS",1);

                      $session->print("conf t");

$session->print("interface $int_type $int_num");

@patten_cm= $session->waitfor('/#/');

                               if(defined $patten_cm[1])
                                    {
                                    if($patten_cm[1] =~ /#/)
                                           {

logw("ENTERED INTO INTERFACE CONF MODE",1);

                                                       $session->cmd("switchport mode access");

                                                         $session->cmd("switchport access vlan $vlan_number");

                                                       logw("Script execution completed  successfully",1);

                                                        print("VLAN ADDED TO INTERFACE SUCCESSFULLY");

   }
else
  {
       print("UNABLE TO ADD VLAN INTO INTERFACE");


    }
      }

                        else

                        {

                        print(" NOT A VALID ENABLE CREDENTIALS=".$ena_passwd);

                        }

}

}
}
sub FINAL_CHECK
{
my $session=$_[0];
                $session->waitfor('/>/');
                my @outputs = $session->cmd("sh vlan");
                foreach $items (@outputs)
                        {
                        @hits = split(' ',$items);
                                        if(!defined $hits[0])
                                        {
                                        }
                                        elsif($hits[0] eq $vlan_number)
                                        {
                                                $vlaninfos[$aclCounters++] = $items;
                                        }
                        }

                        my $lens = $#vlaninfos;
                        if($lens ne 0)
                                        {
                                        print(" CREATED VLAN SUCESSFULLY ");
return $session;
}
                         else

                                {
                               print(" UNABLE TO CREATE VLAN PLEASE CONTACT NETWORK ADMIN ");

                                }

}

sub CREATE_VLAN_SUB
{

my $session=$_[0];

               $session->waitfor('/*#/');

                        if($vlan_number =~ /^(\d+)/)
                        {

                        $session->cmd("vlan $vlan_number");

$session->waitfor('/(config-vlan)/');

                        $session->cmd("name $vlan_name");

                        $session->put( "\cZ" );

return $session;

                        }
                        else
                       {

print(" Only numbers are allowed in vlan name=".$vlan_number);
                        }

}

sub CONF_TERMINAL
{

my $session=$_[0];

                $session->print($cmd);

                $session->print($ena_passwd);

                @patten_ch = $session->waitfor('/#/');

                        if(defined $patten_ch[1])
                               {
                                            if($patten_ch[1] =~ /#/)
                                            {

                                                print("VALID ENABLE CREADENTIALS");

                                                $session->print("conf t");

                                                return $session;

                                            }
                               }

                        else

                        {

                        print(" NOT A VALID ENABLE CREDENTIALS=".$ena_passwd);

                        }

}


sub VLAN_CHECK
{

my $session=CONN_DEVICE();

                my @output = $session->cmd("sh vlan | i $vlan_number");

                foreach $item (@output)
                        {
                        @hit = split(' ',$item);
                                        if(!defined $hit[0])
                                        {

                                        }
                                        elsif($hit[0] eq $vlan_number)
                                        {
                                                $vlaninfo[$aclCounter++] = $item;
                                        }
                        }
                         my $len = $#vlaninfo;
                         if($len ge 0)
                                {
                                foreach $eachvlan (@vlaninfo)
                                        {
  print(" Vlan Alredy exists=".$eachvlan,1);
$session = &INTERFACE_CHECK($session);
  $session = &INTERFACE_CONF($session);
                                        }
                                }

                         else
                                {

logw("NO VLAN FOUND",1);

$session = &CONF_TERMINAL($session);

$session = &CREATE_VLAN_SUB($session);

$session = &FINAL_CHECK($session);

$session = &INTERFACE_CHECK($session);

$session = &INTERFACE_CONF($session);
                                }
}

sub CONN_DEVICE
{


                my $session = new Net::Telnet::Cisco(Timeout => 20, ,ErrMode => 'return');

                $session->open($ip);

                $session->waitfor('/Username:/');

                $session->print($user_name);

                $session->print($passwd);

                our @patten_chk = $session->waitfor('/>/');

                        if(defined $patten_chk[1])
                               {
                                            if($patten_chk[1] =~ />/)
                                            {
                                                    print "Valid Creadentials ";

                                                       

                                                        return $session;


                                            }
                               }

                               else
                               {
                                     

                                        Print("Unable to conn to device"." Possible root cause \n 1.Not valid credentials \n 2.Not valid device ip",13);
                               }

}




sub IP_VALIDATION
{

if($ip=~/^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/ &&(($1<=255  && $2<=255 && $3<=255  &&$4<=255 )))

        {

print("valid ip conn to device $ip ");

}

else

        {
print("Not a Valid ip=".$ip);

        }

}

&IP_VALIDATION;

&VLAN_CHECK;

#############################################################################################################################




print("SHOULD STOPPED INBETWEEN BEFORE COMPLETION");

Git

1 git add ↳ It lets you add changes from the working directory into the staging area 2 git commit ↳ It lets you save a snapshot of currently...