Snoop 是Solaris 系统中自带的工具, 是一个用于显示网络通讯的程序, 它可捕获IP 包并将其显示或保存到指定文件. (限超级用户使用snoop)Snoop 可将捕获的包以一行的形式加以总结或用多行加以详细的描述(有调用不同的参数-v -V来实现). 在总结方式下(-V ) , 将仅显示最高层的相关协议, 例如一个NFS 包将仅显示NFS 信息, 其低层的RPC, UDP, IP, Ethernet 帧信息将不会显示, 但是当加上相应的参数(-v ), 这些信息都能被显示出来.
常用的选项:
-P 不使用混杂模式,只能获取广播包和到本地主机的数据包
-c [maxCount] 记录最大包数,超过则自动停止
-d [dev] 接受包的设备名(网络接口)
-i [filename] 从文件输入(从一个以前的记录文件而不是网络设备中输入)
-p first[,last] 当从文件输入时,只显示从first指定到last的包
-o [filename] 保存所有数据包输出到文件,格式为RFC 1761-compliant
-q 当记录到文件时,使用安静模式,不回显数据
-N 解析IP地址到主机名(默认使用/etc/hosts作为解析列表)
-r 不解析主机名
-n 指定解析主机名所用的列表文件
-v 冗余模式,显示详细的数据包信息
# snoop #监听所有以本机为源和目的的包并将其显示出来. # snoop A #监听所有以主机A为源和目的的包并将其显示出来. ( A为主机名, 下同) # snoop -o file A B #监听所有A和B之间的包并将其保存到文件file. 查看主机A和主机B之间的NFS 包(命令中的and 和or 为相应的逻辑运算) # snoop - i file rpc nfs and A and B 1 0.0000 A -> B NFS C GETATTR FH=8E6C 2 0.0046 B -> A NFS R GETATTR OK 3 0.0080 A -> B NFS C RENAME FH=8E6C MTra00192 to .nfs08 # noop - i file -o file2 rpc nfs A B #将这些符合条件的包保存到另一文件file2 中 # snoop A and B and (tcp or udp) and port 80 #监听主机A和主机B间所有TCP 80 端口或UDP80端口的包 # noop broadcast #监听所有的广播包 # snoop -v multicast #监听所有的多播包, 并显示详细内容 # snoop |grep - i NTP #监听所有的NTP 协议包 # snoop -d le0 port 123 #指定网口
# snoop - i file -p 99,108 # 显示文件file 中指定的包(99-10 99 0.0027 boutique ->; sunroof NFS C GETATTR FH=8E6C 100 0.0046 sunroof ->; boutique NFS R GETATTR OK 101 0.0080 boutique ->; sunroof NFS C RENAME FH=8E6C MTra00192 to .nfs08 102 0.0102 marmot ->; viper NFS C LOOKUP FH=561E screen.r.13.i386 103 0.0072 viper ->; marmot NFS R LOOKUP No such file or directory 104 0.0085 bugbomb ->; sunroof RLOGIN C PORT=1023 h 105 0.0005 kandinsky ->; sparky RSTAT C Get Statistics 106 0.0004 beeblebrox ->; sunroof NFS C GETATTR FH=0307 107 0.0021 sparky ->; kandinsky RSTAT R 108 0.0073 office ->; jeremiah NFS C READ FH=2584 at 40960 for 8192 # snoop - i file - v -p101 # 详细查看文件file 中第101 个包 ETHER: ----- Ether Header ----- ETHER: ETHER: Packet 101 arrived at 16:09:53.59 ETHER: Packet size = 210 bytes ETHER: Destination = 8:0:20:1:3d:94, Sun ETHER: Source = 8:0:69:1:5f:e, Silicon Graphics ETHER: Ethertype = 0800 (IP) ETHER: IP: ----- IP Header ----- ...............................
评论(0)
暂无评论