网络分析工具介绍

netcat(nc)

简称nc,被称为“瑞士军刀”,使用nc-h查看帮助文档。
ncat许多参数与nc相同,区别则是nc是明文传输,缺乏身份验证,而ncat弥补了这些缺点。
主要作用:
1、telnet远程登录
2、端口扫描
3、传输文本信息
4、传输文件和目录
5、加密传输文件

网络状态检测工具

ifconfig和ip

Ifconfig和ip用来查看网络配置:
在这里插入图片描述
二者输出指标基本相同,只是显示格式有所区别,ip有着更丰富的功能和更易用的接口。
输出内容有:网络接口的状态标志、MTU大小、IP、子网、MAC地址以及网络包收发的统计信息。
其中有几个跟网络性能密切相关的指标需要关注:
(1)网络接口的状态标志:ifconfig输出中的RUNNING或者ip输出中的LOWER_UP,表示物理网络是连通的,如果看不到它们,通常可能是网线被拔掉了;
(2)网络收发的字节数、包数、错误数以及丢包情况,特别是 TX和RX部分的errors、dropped、overruns等指标,如果不为0,通常表示出现了网络I/O问题。

netstat和ss

二者用来查看套接字、网络接口以及路由表的信息,ss与netstat的输出也比较类似,但是ss性能要更好。
netstat语法格式为netstat [选项]。
在这里插入图片描述
输出内容有:套接字状态、接收队列、发送队列、本地地址、远端地址、进程PID和进程名称等。
其中需要特别关注的是接收队列(Recv-Q)和发送队列(Send-Q),二者值通常应该是0,如果非0,说明有网络包的堆积发生,但在不同的套接字状态下,它们的含义不同。
netstat常用的选项有:

参数含义
-a或–all显示所有连线中的Socket;
-A<网络类型>或–<网络类型>列出该网络类型连线中的相关地址;
-c或–continuous持续列出网络状态;
-C或—cache显示路由器配置的快取信息;
-e或–extend显示网络其他相关信息;
-F或–fib显示FIB;
-g或–groups显示多重广播功能群组组员名单;
-h或–help在线帮助;
-i或–interfaces显示网络界面信息表单;
-l或–listening显示监控中的服务器的Socket;
-M或–masquerade显示伪装的网络连线
-n或–numeric直接使用ip地址,而不通过域名服务器;
-N或–netlink或–symbolic显示网络硬件外围设备的符号连接名称;
-o或–timers显示计时器;
-p或—programs显示正在使用Socket的程序识别码和程序名称;
-r或–route显示Routing Table;
-s或—statistice显示网络工作信息统计表;
-t或–tcp显示TCP传输协议的连线状况;
-u或–udp显示UDP传输协议的连线状况;
-v或–verbose显示指令执行过程;
-V或–version显示版本信息;
-w或–raw显示RAW传输协议的连线状况
-x或–unix此参数的效果和指定"-A unix"参数相同;
–ip或–inet此参数的效果和指定"-A inet"参数相同

netstat主要用法有:
(1)查看端口服务:netstat -antp | grep 22
其中-a参数表示显示所有端口;-n表示直接使用ip地址,不通过域名服务器;-t参数表示显示TCP传输协议的端口;-p表示显示正在使用socket的程序识别码和程序名称;
(2)找出程序运行的端口
在这里插入图片描述
(3)显示网络统计
在这里插入图片描述
(4)显示路由信息
在这里插入图片描述

网络抓包工具

tcpdump和Wireshark是常用的网络抓包和分析工具,其中tcpdump仅支持命令行格式,Wireshark除了可以抓包外,提供了图形界面和汇总分析工具,在分析复杂的网络情景时,比较适用。在实际分析网络性能时,先用tcpdump抓包,再用Wireshark分析,也是一种常用的方法。

tcpdump

语法格式:
tcpdump [ -DenNqvX ] [ -c count ] [ -F file ] [ -i interface ] [ -r file ][ -s snaplen ] [ -w file ] [ expression ]
常用的选项和过滤表达式:
在这里插入图片描述
在这里插入图片描述

Wireshark

可以将tcpdump抓取到的网络包保存到一个文件中,用Wireshark打开。
$ tcpdump -nn host 93.184.216.34 -w web.pcap
打开界面如下:
在这里插入图片描述
Wireshark展示格式更加规整和清楚,还可以查看网络包在协议栈各层的详细信息:
在菜单栏中点击 Statistics -> Flow Graph,然后,在弹出的界面中的 Flow type 选择 TCP Flows,可以更清晰的看到,整个过程中 TCP 流的执行过程:
在这里插入图片描述这跟曾经学到的三次握手和四次挥手是类似的,但图中之所有只有三次挥手,是因为服务端把ACK和FIN合并一起发送了。

其他常用工具

iftop

链接: iftop监控网络流量命令详解.

sar

sar(System ActivityReporter系统活动情况报告)是目前Linux上最为全面的系统性能分析工具之一,可以从多方面对系统的活动进行报告,包括:文件的读写情况、系统调用的使用情况、磁盘I/O、CPU效率、内存使用状况、进程活动及IPC有关的活动等。

nslookup

nslookup用于查询DNS的记录,查询域名解析是否正常,在网络故障时用来诊断网络问题。

dstat

dstat是一个可以替换vmstat、iostat、netstat、ifstat这些命令的工具,是一个全能系统信息统计工具。
使用dstat会显示CPU、磁盘I/O、网络和内存四种资源的整体使用情况和中断次数和上下文中断次数两个关键系统指标,以网络资源为例,dstat还能输出一些关于网络的关键指标:
$ dstat –tcp
------tcp-sockets-------
lis act syn tim clo
27 38 0 0 0
27 38 0 0 0
这些指标的含义为:
(1)Lis : 表示处于监听(Listen)状态的连接数;
(2)Act:表示处于连接(ESTABLISHED)状态的连接数;
(3)Syn:处于三次握手阶段的连接数,如果该指标过大,往往意味着这瞬间有大量的TCP新建连接请求;
(4)Tim:处于TIME-WAIT状态的连接数;
(5)Clo:处于CLOSE-WAIT状态的连接数,这一项如果过多,往往意味着应用程序存在bug,没有主动去调用close()去关闭这些连接。

本博客是博主个人学习时的一些记录,不保证是为原创,如有侵权请与我联系。

留言即可,我会立即删除。

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Matlab网络分析工具箱是一套用于分析网络数据和建模的工具。它提供了许多用于处理网络数据的函数和算法,可帮助用户进行网络分析、构建网络模型和进行网络预测。 首先,这个工具箱提供了一系列函数来处理和操作网络数据。用户可以使用这些函数读取和存储网络数据,对节点和边进行操作,并计算网络的各种属性,如节点的度、中心性和聚类系数等。这些函数使用户可以方便地对网络数据进行处理和分析。 其次,工具箱提供了各种网络模型的函数和算法。用户可以使用这些函数生成不同类型的网络模型,如随机网络、小世界网络和比例无标度网络等。这些模型的构建算法基于现实世界中网络的特点,可以帮助用户了解网络的结构和特性。 此外,工具箱还提供了用于网络预测的功能。用户可以使用这些函数进行网络预测,如预测节点的未来行为、预测边的出现概率等。这些预测功能对于研究网络的动态过程和演化具有重要意义,可以帮助用户预测网络的未来发展趋势。 总体而言,Matlab网络分析工具箱提供了一套强大的工具和函数,可帮助用户对网络数据进行分析、建模和预测。它在网络科学、社交网络分析和复杂网络研究等领域具有广泛的应用价值。无论是学术研究还是实际应用,这个工具箱都可以提供有效的帮助,并促进相关领域的发展。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值