#!/usr/bin/perl
#Version 0.2
#2011.5.31
use Encode;
use Net::Telnet::Cisco;
use Spreadsheet::WriteExcel;
open HOST,"</home/host.txt";
open IP,"</home/iplist.txt";
chomp(my @host=<HOST>);
close HOST;
chomp(my @ip=<IP>);
close IP;
my $xls = Spreadsheet::WriteExcel->new( "/home/Switch.xls" );
foreach $h (@host){
print $h;
my $session = Net::Telnet::Cisco->new(Host => "$h");
my $hContent = $xls->add_worksheet( "Switch_$h" );
$HH=0;
$session->login('User', 'Pwd');
# Enable mode
if ($session->enable("EnPWD") ) {
print "Cennect is ok\n";
} else {
warn "Can't enable: " . $session->errmsg;
}
foreach $i (@ip){
$hContent->set_column(0,100,15);
my $contentStyle = $xls->add_format();
$contentStyle->set_size( 10 );
$contentStyle->set_bold(); #设置字体为粗体
$contentStyle->set_align( 'center' ); #设置单元格居中
$contentStyle->set_text_wrap(); #是否回车换行
$contentStyle->set_color('black'); #设置单元格前景色为红色
my @outputing = $session->cmd("ping $i");
my @arp = $session->cmd("show ip arp | in $i");
my @result=split( ' ' , $arp[0] );
my @mac = $session->cmd("show mac-address-table dy add $result[3]");
my @IPlist = split( ' ' , $mac[5] );
if ($IPlist[3]=~/.*\/.*/){
$HH+=1;
$hContent->write("A$HH", decode( 'gb2312', "$i" ), $contentStyle );
$hContent->write("B$HH", decode( 'gb2312', "$IPlist[1]" ), $contentStyle);
$hContent->write("C$HH", decode( 'gb2312', "$IPlist[3]" ), $contentStyle);
}
}
$session->close;
}
$xls->close();
分享到:
相关推荐
ARP(Address Resolution Protocol)表是网络设备(如交换机)存储IP地址与其对应的MAC地址映射的关键数据结构。在大型网络环境中,了解ARP表的状态对于网络故障排查、安全监控以及性能优化至关重要。这个Perl脚本...
在这个场景中,我们有一个名为"IP-QQWry-0.0.20"的压缩包,它包含了一个Perl模块,用于解析IP地址并将其转换为地理位置信息。这个功能是通过集成QQWry数据库来实现的,QQWry是一个包含了全球IP地址和对应地理位置...
通常,这样的脚本会使用编程语言如Python或Perl编写,通过SSH(Secure Shell)协议与交换机通信,读取并解析接口状态信息,获取端口上的MAC地址,然后根据预定义的规则进行IP和MAC的绑定。 SecureCRT是一款强大的...
用perl实现的获取eth0 ip地址的方法,主要是打开ifconfig读取信息,然后用正则表达式来匹配,从而获取到ip地址,比较简单。
perl-Date-Manip-6.24-1.el6.noarch.rpm perl-Date-Manip-6.24-1.el6.noarch.rpm
本文将深入探讨如何使用Perl来统计日志信息,这在系统监控、故障排查和数据分析等领域非常常见。 首先,我们来看看标题"用perl 统计日志信息"。这暗示我们要编写一个Perl脚本来读取日志文件,从中提取关键信息并...
查看 Linux 下 DHCP 服务器分配出去的 IP 地址及剩余 IP 地址 在 Linux 系统中,DHCP 服务器是动态地分配 IP 地址的。为了查看 DHCP 服务器分配出去的 IP 地址及剩余 IP 地址,我们可以使用以下方法: 1. 查看...
标题中的“Perl统计小工具开发”意味着我们将探讨如何使用Perl编程语言来构建一个小型的统计应用程序。Perl是一种功能强大的文本处理语言,常用于系统管理、网络编程和数据分析等领域。在这个项目中,我们可能会关注...
在本场景中,我们关注的是使用Perl来统计网络流量。这个特定的Perl代码旨在从TPLINK路由器中获取流量数据,进而分析局域网中各电脑的互联网访问流量。这在监控网络使用情况、优化带宽分配或排查网络问题时非常有用。...
在本文中,我们将深入探讨批量FTP服务在华为交换机网络设备备份中的应用,以及如何设置和使用备份脚本来确保网络配置的安全和高效管理。 首先,我们要理解什么是FTP服务。FTP(File Transfer Protocol)是一种用于...
- 通过`/var/lib/dhcpd/dhcpd.leases`文件:这是ISC DHCP服务器默认保存租约信息的文件,你可以直接打开并搜索IP地址、MAC地址和租约期限等信息。 - 使用`grep`命令:在终端中,可以输入`grep -E "lease|hardware...
Perl是一种强大的脚本编程...总之,这个"pv.rar"压缩包中的Perl脚本是一个学习和实践Perl文本处理和统计的好例子。通过结合shell脚本生成数据,Perl脚本可以有效地分析和解析这些数据,为网站运营提供有价值的信息。
由于我们需要通过 Web 来监控交换机流量,因此首先需要在 Apache 中配置好站点绑定的域名和站点目录的路径,假设存放 MRTG 生成的统计文件在 /home/vhosts/mrtg/www/。 本文档提供了 Linux 上安装 MRTG 配置交换机 ...
在Linux和大多数类似UNIX的系统(包括Mac OS X)下,perl与系统一起安装。 Windows有两个可用的版本:Strawberry Perl和ActivePerl。 编译器就是将“一种语言(通常为高级语言)”翻译为“另一种语言(通常为低级...
离线安装包,亲测可用
统计分词数 perl程序 hash表取词 用贝叶斯算概率
Perl-5.10.0版本,Perl-5.10.0版本,Perl-5.10.0版本,Perl-5.10.0版本,Perl-5.10.0版本,Perl-5.10.0版本,Perl-5.10.0版本,Perl-5.10.0版本,Perl-5.10.0版本,Perl-5.10.0版本,Perl-5.10.0版本,Perl-5.10.0...
4. **API接口**:许多现代交换机和路由器支持RESTful API或SOAP API,可以通过编程语言如Python、Perl等与设备进行交互,实现批量配置。 在进行批量配置时,需要注意以下几点: - **备份现有配置**:在进行任何...
这个压缩包“perl-5.28.zip”包含了适用于多种平台的Perl 5.28版本,包括Linux、Windows和Mac操作系统,以及源代码,使得用户可以在各种环境下使用和定制Perl。 对于Linux平台,Perl是许多系统管理任务和自动化脚本...
Perl是一种强大的脚本编程语言,尤其在文本处理和系统管理任务方面表现突出。它由Larry Wall于1987年创建,旨在结合各种语言的优点,如C、sed、awk等,形成一种简洁且功能丰富的语言。Perl语言编程和Perl语言入门是...