学习使用Wireshark的读书笔记
数据包分析,通常也被称为数据包嗅探或协议分析。流行的数据包分析软件包括tcpdump(命令行程序)、OmniPeek和Wireshark(跨平台,n年前叫Ethereal)。
数据包分析通常分为3个步骤,收集->转换->分析。应用软件帮我们做了非常多的工作,我们需要在茫茫数据中挖掘出我们想要的信息。通常的网络协议是为了解决以下问题:开发起连接、协商连接参数、数据格式、错误检测与校正、连接终止。
网络模型
我们还是回顾一下网络协议的基础模型。
进行数据包分析的时候,我们常常会忽略会话层和表示层,因为TCP/IP模型中并没有对应的层级。
网络硬件
常用的网络硬件有网卡、集线器、交换机和路由器。
集线器
一般是提供了多个RJ-45端口的机盒,看起来很像普通的交换机(但不是,工作原理不同)。读书那会儿还没拉网线的时候,在宿舍内用集线器搭建过局域网,玩联机对战。如今已经很难买到集线器了,因为集线器仅在半双工模式下运行(无法在同一时间收发数据),而且有广播风暴的弊端,大部分设备已经被交换机替换了。
一台集线器无非就是工作在OSI参考模型物理层上的转发设备,一台主机经由接入集线器的端口通过广播的方式向其他端口连接的主机发送数据,其他主机接受到数据以后通过检查以太网帧头字段中的目标MAC地址,判断这些数据是不是传给自己的,如果不是就会丢弃它。
工作在物理层,缺点:半双工、广播。
交换机
交换机的基本功能和集线器相同,都是用来中继数据包的。但是它并不是使用广播方式,而是将数据发送到目的计算机所连接的端口上。交换机能通过MAC地址来标识设备,它工作在OSI参考模型的数据链路层上,为了实现该功能,交换机将每个连接设备的第二层地址都存储在一个CAM表中。
工作在数据链路层,优点:全双工、定向传播(CAM表映射端口)。
路由器
路由器是一种比交换机具有更高层次功能的先进网络设备,它工作在网络层,负责在两个或多个网络之间转发数据包,通常使用IP地址来唯一标识网络上的设备。
工作在网络层,优点:跨网络。
流量分类
分为广播、多播和单播。
广播流量
广播数据包会被发送到一个网段上的所有端口,在数据链路层和网络层广播流量的构建方式不同。在数据链路层MAC地址FF:FF:FF:FF:FF:FF是保留的广播地址。在网络层,一个IP网络中最大的IP地址是被保留作为广播地址使用的。例如一个配置了192.168.0.XXX的IP范围,以及子网掩码是255.255.255.0的地址网络中,广播IP地址就是192.168.0.255。
广播数据包只能在特定的广播域中传播。
多播流量
实施多播的主要方法是通过一种将数据包接受者加入多播组的编址方案,这也是IP多播的工作原理。
单播流量
单播数据包会从一台计算机直接传输到另一台计算机。
我是咕咕鸡,一个还在不停学习的全栈工程师。
热爱生活,喜欢跑步,家庭是我不断向前进步的动力。