⑴ 2020-05-20 通过SNMP采集F5信息无响应问题处理
通过snmpwalk访问F5无响应
首先思考可能的原因:
1、ip不可达。
由于路由、网络分区等原因,IP不可达
验证:通过ping 命令确认网络可达
2、端口不可达。
由于防火墙策略等原因,端口不可达
验证:由于snmp默认访问udp 161端口,不能用telnet来进行验证,只能登陆F5抓包,查看snmpwalk的请求是否到达了F5,经过验证确定端口可达
3、ACL拒绝了发起端IP。
F5的ACL只允许白名单访问
验证:登陆到F5控制台,查看SNMP配置中的白名单,白名单中确实没有发起端IP
在F5控制台的SNMP配置中,将发起端IP加入到白名单中即可。
⑵ cisco 如何抓取
如果指的是在Cisco设备上抓包的话,应该是要做端口镜像。
几个命令就够了,例如:
Switch(config)# monitor session 1 source interface fastethrnet 5/l both //指定抓取F5/1的流量,both指代抓取进和出两个方向的流量,both可以换成tx或rx,分别代表发送和接受流量
Switch(config)# monitor session 1 destination interface fastethrnet 5/2
//将session1的流量从F5/2口输出
之后将计算机接入F5/2口就可以侦听所有经过F5/1的数据包了,这是最常见的抓包案例。
希望能有所帮助。
⑶ Fiddler抓包基本使用
Fiddler_官方网站
Fiddler_官方文档
Fiddler_官方视频
Fiddler_官方插件
1、Filddler简介
Fiddler是最强大最好用的Web调试工具之一,它能记录所有客户端和服务器的http和https请求,允许你监视,设置断点,甚至修改输入输出数据,Fiddler包含了一个强大的基于事件脚本的子系统,并且能使用.net语言进行扩展。
2、Filddler工作原理
Fiddler是以代理WEB服务器的形式工作的,浏览器与服务器之间通过建立TCP连接以HTTP协议进行通信,浏览器默认通过自己发送HTTP请求到服务器,它使用代理地址:127.0.0.1, 端口:8888. 当Fiddler开启会自动设置代理, 退出的时候它会自动注销代理,这样就不会影响别的程序。不过如果Fiddler非正常退出,这时候因为Fiddler没有自动注销,会造成网页无法访问。解决的办法是重新启动下Fiddler.
4、界面介绍
4.1 Fiddler主界面
4.2 工具面板
工具栏说明:说明注释、重新请求、删除会话、继续执行、流模式/缓冲模式、解码、保留会话、监控指定进程、寻找、保存会话、切图、计时、打开浏览器、清除IE缓存、编码/解码工具、弹出控制监控面板、MSDN、帮助。
两种模式:
1、 缓冲模式(Buffering Mode): Fiddler直到HTTP响应完成时才将数据返回给应用程序。可以控制响应,修改响应数据。但是时序图有时候会出现异常
2、流模式(Streaming Mode): Fiddler会即时将HTTP响应的数据返回给应用程序。更接近真实浏览器的性能。时序图更准确。但是不能控制响应。
4.3会话面板
4.4 监控面板
统计报表
(1) 请求总数、请求包大小、响应包大小;
(2) 请求起始时间、响应结束时间、握手时间、等待时间、路由时间、TCP/IP传输时间;
(3) HTTP状态码统计;
(4) 返回的各种类型数据的大小统计以及饼图展现。
时间轴
每个网络请求都会经历域名解析、建立连接、发送请求、接受数据等阶段。把多个请求以时间作为 X 轴,用图表的形式展现出来,就形成了瀑布图。在Fiddler 中,只要在左侧选中一些请求,右侧选择Timeline标签,就可以看到这些请求的瀑布图
1)绿色的请求表示这是一个“有条件的请求”。HTTP 协议定义了 5 个条件请求头部,最常见的两个是“If-Modified-Since”和“If-None-Match”。服务器根据这两个头部来验证本地缓存是否过期,如果过期则正常返回资源的最新版本;否则仅返回 304 Not Modified,浏览器继续使用本地缓存。包含条件请求头部的请求用绿色显示,否则用黑色。
2)有阴影线的请求是缓冲模式下的请求,实心的是流模式下的请求。Fiddler 提供了缓冲(Buffering)和流(Streaming)两种抓包模式:缓冲模式下,Fiddler 会在响应完成时才将数据返回给应用程序(通常是浏览器),这种模式下可以控制响应,方便地修改响应内容;流模式下,Fiddler 会实时返回响应数据给浏览器,但没办法控制响应。一般使用流模式,瀑布图会更真实一些。这两种模式可以通过 Fiddler 的工具栏选择。特别的,通过 Fiddler 的“AutoResponder”功能返回的响应,只能是缓冲模式。
3)请求条的不同颜色对应着不同类型的响应,根据响应头的 MIME Type 来归类。如浅绿色表示图片类型的响应;深绿色是 JavaScript;紫色是 CSS;其它都是蓝色。
4)请求中的黑色竖线,表示的是浏览器收到服务端响应的第一个字节这一时刻。这个时间受 DNS 解析、建立连接、发送请求、等待服务端响应等步骤的影响。
5)请求条后面的图标表示响应的某些特征。如软盘图标表示这个响应正文从本地获得,也就是说服务端返回了 304;闪电表示这是 Fiddler 的“AutoResponder”的响应;向下的箭头表示响应是 302,需要重定向;红色感叹号说明这个请求有错误发生(状态码是 4XX 或 5XX)。特别的,如果请求条后面有一个红色的X,说明服务端响应完这个请求之后,断开了连接。出现这种情况一般有两种可能:HTTP/1.0 的响应中没有 Connection: Keep-Alive;或者是 HTTP/1.1 的响应中包含了 Connection: close。使用持久连接可以省去建立连接的开销,也可以减小 TCP 慢启动和其它拥塞控制机制带来的影响,总之是好处多多。
6)请求前面的红色圆圈表示这个连接是新建的,绿色表示是复用的。上面的圆圈表示的是浏览器到 Fiddler 的连接,下面的圆圈是 Fiddler 到服务端的连接。
4.5 状态面板
控制台
Fiddler的左下角有一个命令行工具叫做QuickExec,允许你直接输入命令。
help 打开官方的使用页面介绍,所有的命令都会列出来
cls 清屏 (Ctrl+x 也可以清屏)
select 选择会话的命令
?.png 用来选择png后缀的图片
bpu 截获request
bpafter 截获response
5、HTTP协议简介
5.1、HTTP消息的结构
5.1.1、Request
先看Request 消息的结构, Request 消息分为3部分,第一部分叫Request line, 第二部分叫Request header, 第三部分是body. header和body之间有个空行。第一行中的Method表示请求方法,比如"POST","GET", Path-to-resoure表示请求的资源, Http/version-number 表示HTTP协议的版本号,当使用的是"GET" 方法的时候, body是为空的。
5.1.2、Response
5.2 状态码
Response 消息中的第一行叫做状态行,由HTTP协议版本号, 状态码, 状态消息 三部分组成。
状态码用来告诉HTTP客户端,HTTP服务器是否产生了预期的Response.
HTTP/1.1中定义了5类状态码, 状态码由三位数字组成,第一个数字定义了响应的类别
1XX —— 提示信息,表示请求已被成功接收,继续处理
2XX —— 成功,表示请求已被成功接收,理解,接受
3XX —— 重定向,要完成请求必须进行更进一步的处理
4XX —— 客户端错误,请求有语法错误或请求无法实现
5XX —— 服务器端错误,服务器未能实现合法的请求
常见响应码说明:
200:响应成功,这表明该请求被成功地完成,所请求的资源发送回客户端
302:重定向,新的URL会在response 中的Location中返回,浏览器将会自动使用新的URL发出新的Request
304:代表上次的文档已经被缓存了, 还可以继续使用,例如打开博客园首页, 发现很多Response 的status code 都是304
[提示:如果你不想使用本地缓存可以用Ctrl+F5 强制刷新页面]
400 : 客户端请求与语法错误,不能被服务器所理解
403:服务器收到请求,但是拒绝提供服务
404 :找不到网页,请求的资源不存在
500 : 服务器发生了不可预期的错误
503 :服务器当前不能处理客户端的请求,一段时间后可能恢复正常
6、 常用功能
6.1 监听HTTPS
6.3 模拟各类场景
通过GZIP压缩,测试性能
模拟Agent测试,查看服务端是否对不同客户端定制响应
模拟慢速网络,测试页面的容错性
禁用缓存,方便调试一些静态文件或测试服务端响应情况
6.4 Compare(对比文本)
Fiddler中设置断点修改Response跟断点修改Request用法差不多。
参考文档: http://www.cnblogs.com/FounderBox/p/4653588.html?utm_source=tuicool&utm_medium=referral
http://kb.cnblogs.com/page/130367/
⑷ 如何在 android 手机上实现抓包
使用 tPacketCapture,
无需 root,可以保存下 pcap 格式的流量捕获,然后在电脑上打开分析。
它的原理是建立一个虚拟的 VPN 连接,
让所有的流量都通过它。
因此它捕获不到二层的信息,但这对于基本参考需求来说已经足够了。
⑸ F5负载均衡虚拟服务器配置FTP端口访问不了
正常情况下主动模式FTP是使用21端口进行通讯,20端口传输数据。
81端口是对外,真实服务器的端口是21么,还是也改掉了?
你需要看一下是否20端口也做了更改,如果更改了,需要新创建一个ftp profile,然后把数据传输的端口修改为你设置的传输端口。
另外,1024以下的端口都已经是被分配出去的,建议使用高一点的端口。
访问方式应该为ftp://vip:port或直接在命令行下访问
⑹ 如何使用抓包命令
.抓包命令tcpmp,
例:抓获192.168.1.32 的主机收到和发出的所有的数据包
tcpmp host 192.168.1.32
截获特定的端口
tcpmp tcp port 21 host 192.168.1.32
⑺ 如何使用fidder 进行抓包
Android系统手机端抓包方法有如下:一、抓包准备 1. Android手机需要先获得root权限。一种是否获得root权限的检验方法:安装并打开终端模拟器(可通过安卓市场等渠道获得)。在终端模拟器界面输入su并回车,若报错则说明未root,若命令提示符从$变#则为rooted。 2. 如果Android手机尚未root,可通过superoneclick或其它方法进行root处理(需要先安装Microsoft .NET Framework)。 3. 需要先获得 Android SDK,Android的开发环境。 4. 需要获得tcpmp软件。 二、抓包步骤 1. 将Android手机与电脑USB相连,打开windows命令提示符窗口。 2. 将tcpmp程序至android手机(该命令前面那个目录文件为本地地址,后面那个目录为目的手机端地址)。C:\android-sdk-windows\platform-tools>adb push c:/tcpmp /data/local/tcpmp 3. 修改tcpmp的权限。C:\android-sdk-windows\platform-tools>adb shell #chmod 777 /data/local/tcpmp 4. 进入root权限 C:\android-sdk-windows\platform-tools>adb shell,执行$ su ,在运行su指令后,手机终端桌面会出现相应提示信息以确认您对root操作的认可。 5. 运行tcpmp,输入以下命令启动抓包。/data/local/tcpmp -p -vv -s 0 -w /sdcard/capture.pcap。 6. 在手机端执行相应需要进行抓包分析的操作,执行完成后在命令提示符窗口执行Ctrl+C中断抓包进程。 7. 将抓包结果复制至本地(前面那个目录为手机端地址,后面那个目录为本地地址),C:\android-sdk-windows\platform-tools>adb pull /sdcard/capture.pcap c:/ 8. 使用Wireshark等工具查看抓包文件capture.pcap。
⑻ wireshark抓包命令总结
参考的循环抓包命令,其中的过滤条件需要根据实际情况修改(该命令最多占用4G的存储空间,且会在后台持续运行):sudo nohup tcpmp -i [network_interface] port 80 -s 80 -C 80 -W 100 -w /tmp/waf.pcap &
-W filecount . -C file_size . -s 80 snaplen 截取特定的长度
常用排错过滤条件:
对于排查网络延时/应用问题有一些过滤条件是非常有用的:
tcp.analysis.lost_segment:表明已经在抓包中看到不连续的序列号。报文丢失会造成重复的ACK,这会导致重传。
tcp.analysis.plicate_ack:显示被确认过不止一次的报文。大凉的重复ACK是TCP端点之间高延时的迹象。
tcp.analysis.retransmission:显示抓包中的所有重传。如果重传次数不多的话还是正常的,过多重传可能有问题。这通常意味着应用性能缓慢和/或用户报文丢失。
tcp.analysis.window_update:将传输过程中的TCP window大小图形化。如果看到窗口大小下降为零,这意味着发送方已经退出了,并等待接收方确认所有已传送数据。这可能表明接收端已经不堪重负了。
tcp.analysis.bytes_in_flight:某一时间点网络上未确认字节数。未确认字节数不能超过你的TCP窗口大小(定义于最初3此TCP握手),为了最大化吞吐量你想要获得尽可能接近TCP窗口大小。如果看到连续低于TCP窗口大小,可能意味着报文丢失或路径上其他影响吞吐量的问题。
tcp.analysis.ack_rtt:衡量抓取的TCP报文与相应的ACK。如果这一时间间隔比较长那可能表示某种类型的网络延时(报文丢失,拥塞,等等)。
⑼ Linux下如何抓指定IP的包
用tcpm命令可以抓指定IP的包,具体命令为:
tcpmp tcp -i eth1 -t -s 0 -c 100 and dst port 22 and src net 192.168.1.1 -w ./target.cap
参数解析:
tcp: ip icmp arp rarp 和 tcp、udp、icmp这些选项等都要放到第一个参数的位置,用来过滤数据报的类型。
-i eth1 : 只抓经过接口eth1的包
-t : 不显示时间戳
-s 0 : 抓取数据包时默认抓取长度为68字节。加上-S 0 后可以抓到完整的数据包
-c 100 : 只抓取100个数据包
dst port 22 : 抓取目标端口是22的数据包
src net 192.168.1.0/24 : 数据包的源网络地址为192.168.1.1
-w ./target.cap : 保存成cap文件,方便用ethereal(即wireshark)分析
(9)f5抓包命令扩展阅读
tcpmp语法格式:
tcpmp [-adeflnNOpqStvx][-c<数据包数目>][-dd][-ddd][-F<表达文件>][-i<网络界面>][-r<数据包文件>][-s<数据包大小>][-tt][-T<数据包类型>][-vv][-w<数据包文件>][输出数据栏位]
tcpmp主要参数说明:
1、-a 尝试将网络和广播地址转换成名称。
2、-c<数据包数目> 收到指定的数据包数目后,就停止进行倾倒操作。
3、-d 把编译过的数据包编码转换成可阅读的格式,并倾倒到标准输出。
4、-dd 把编译过的数据包编码转换成C语言的格式,并倾倒到标准输出。
5、-ddd 把编译过的数据包编码转换成十进制数字的格式,并倾倒到标准输出。
6、-e 在每列倾倒资料上显示连接层级的文件头。
7、-f 用数字显示网际网络地址。
8、-F<表达文件> 指定内含表达方式的文件。
9、-i<网络界面> 使用指定的网络截面送出数据包。
10、-l 使用标准输出列的缓冲区。
11、-n 不把主机的网络地址转换成名字。
12、-N 不列出域名。
⑽ 应用抓包之tcpmp命令抓包
原料
1.预抓包的App一个(我们以app抓包为例)
2.已配置android sdk
3.分析软件Wireshark(Windows版)
4.抓包命令:tcpmp
5.模拟器或真机(以模拟器为例,真机需root)
首先我们先配置下环境变量
1.先来个ANDROID_HOME:SDK的路径,类似于JAVA_HOME。(一劳永逸,以后安装到别的路径,改变一下HOME路径就行)
2.把sdk路径下的platfrom-tools和tools添加到环境变量
配置好就可以用adb命令了
1.执行tcpmp命令
tcpmp可以将网络中传送的数据包完全截获下来提供分析。
以上命令将截获的数据包保存到sdcard,capture.pcap抓取是数据包,pcap为Wireshark分析文件的后缀。
这时抓包就开始了,在手机上刷新几下要抓取数据的app。
抓完之后按ctrl+c停止抓包
2.将抓取的数据导出到电脑上(从sdcard导出到电脑上分析)
退出android shell环境(命令行输入两次exit),回到Windows环境。
接着执行
导出刚才抓到的文件到电脑d盘。(如果导出失败,自己手动把抓包数据复制到电脑上)
或者通过DDMS导出到电脑
3.Wireshark打开刚才获取到的.pcap文件
过滤出http
点击某一个抓到的http包,可以查看它的详细信息(自己判断一下可能是哪个域名)
我们可以看到是get请求
复制出来去请求一下(右键->复制->值)
去浏览器中请求
再结合app,看看是哪个界面的内容
4.新建个文本文件,保存抓到的借口。例如:
看看请求出来ip地址,顺着ip找出所有的api借口
54开头的就是我要抓的app。