#!/usr/bin/perl use Net::Ping; use Net::SSH2; use strict; use warnings; my $ssh = Net::SSH2->new(); my $username="username"; my $password="password"; my $ip_address = ("ipadderss"); my $ping= Net::Ping->new(); if($ping->ping($ip_address)) { if($ssh->connect($ip_address)) { if($ssh->auth_password($username,$password)) { my $chan = $ssh->channel(); $chan->blocking(1); $chan->shell(); $chan->write("terminal length 0\n"); $chan->write("show cdp neighbor \n"); while (<$chan>) { print if /\bterminal length\b/i .. /^\n*$/ ; } # $chan->close; } else { print "auth failed"; } } } else { print "not pinging"; }