IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> Windows下完成SCTP简单抓包 -> 正文阅读

[系统运维]Windows下完成SCTP简单抓包

Windows下完成SCTP简单抓包


一、实验主机信息

在

二、所使用的程序

sctplib-1.0.4.exe、glib-1.2.zip 、wireshark
http://www.sctp.be/sctplib/
具体软件安装请见:SCTP在windows下简单实现发包

三、程序安装

1.将sctplib-1.0.4.exe和glib-1.2.zip下载到本地计算机上。

2.安装 sctplib-1.0.4.exe到本机器上,安装完后将glib-1.2.zip解压到它的安装目录下,例如:E:/Program Files/sctplib下面。

3.这个SCTP的实现是在两个机器之间进行的,所以要另外一台机器也要和你自己安装相同的工具(以上两个)。

四、实验过程

  1. 由于Windows自带防火墙的存在,当带有防火墙的主机收到了SCTP的INIT信息后,防火墙会直接将该包丢弃,所以在实验开始前关闭两个主机的防火墙
  2. S端先以管理员模式打开echo_server,C端在命令提示符窗口中打开echo_tool(先开S端,再开C端)
  3. 在C端命令中输入 echo_tool -d 192.168.1.108(S端IP),即可与S端建立连接,并可以在抓包软件中看到SCTP四握手,等待大约30秒即可收到SCTP的heartbeat报文与heartbeat_ACK报文

在这里插入图片描述

  1. C端命令中输入echo_tool -d 192.168.1.108(S端IP)-n 1,即可在上述过程之外再抓到C端与S端互发的DATA数据块,其中双方的确认方式均为选择确认(确认模式固定,发包内容大小固定,可能无法改变?)

  2. 由于程序设置的问题,无法主动正常断开链接,只能通过ctrl+c异常断开,故在3.4步骤后续中抓到的包为ICMP协议不可达(C段程序断开,协议信息无法送达)
    在这里插入图片描述

  3. 其他参数可由C端指令符中echo_tool/?获得其参数对应的作用

五、报文分析

1.SCTP报文格式

在这里插入图片描述
在这里插入图片描述

2.SCTP四次握手

在这里插入图片描述
在这里插入图片描述

SCTP INIT报文

SCTP INIT-ACK 数据报

注:INIT中的验证标志位,因为还未接收到对方ACK中的初始标志,默认为0

在这里插入图片描述

字段长度意义
初始标志4用于确定一对连接的值。这个值必须被放置到INIT的接收方发送的与该连接相关的每个SCTP分组中的验证标签字段中。初始标签允许除0以外的的任何值。如果在收到的INIT数据块中的启动标签为0,则接收方发送ABORT数据块中止该连接。
窗口大小4表示指定的缓冲区的容量,用字节数表示,为INIT发送方为连接预留的窗口大小。
输出流2表示发送方希望数据输出流的数量
输入流2表示发送方允许接收数据流的数量
初始TSN4定义发送方的初始TSN,类似于TCP中的序号
可变长参数可变参见以下

可变长参数:IPv4地址参数(5)
在这里插入图片描述

IPv4地址(32bit无符号整数):包含发送方端点的IPv4地址,采用二进制编码。
IPv6地址参数(6)
在这里插入图片描述

IPv6地址(128bit的无符号整数):包含发送方端点的IPv6地址,采用二进制编码。
注:多个地址参数体现SCTP的多宿主特点

防止Cookie过期参数(9)
INIT的发送方应使用这个参数来建议INIT的接收方提供较长存活跨度的状态Cookie。
在这里插入图片描述

建议的COOKIE存活跨度增量(32bit的无符号整数),该参数用来向接收方指示发送方希望接收方为其缺省的COOKIE的存活跨度增加的毫秒数。
由于失效的cookie操作差错原因,前一次尝试与对等端建立连接失败后,又重新尝试连接建立时,这个任选参数应能由发送方添加到INIT数据块中。

主机名地址(11)
INIT发送方使用这个参数把其主机名(在其IP地址的位置中)传递到对等层。这个对等层负责解析这个主机名,用这个参数可以使连接工作通过NAT box进行工作
在这里插入图片描述

主机名:可变长度,该字段包含了按照RFC1123规定的“主机名句法”定义的主机名,主机名地址的解析不在本标准中规定,该参数中至少有一个非空的中止符包含在主机名字符串中,并且应包含长度。

支持的地址类型(12)
NIT的发送方使用该参数列出其所支持的全部地址类型。
在这里插入图片描述

地址类型(16bit无符号整数):该参数使用对应的地址类型的类型值(例如:IPv4=5,IPv6=6,主机名=11)

实例分析:
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
注:Parameter padding字段用于参数填充,使其对齐或成为8的整数倍(二进制),能够进行差错检验和计算

SCTP INIT_ACK 数据报

在这里插入图片描述
在这里插入图片描述
报文实例:
在这里插入图片描述
在这里插入图片描述

SCTP COOKIE_ECHO数据报

在这里插入图片描述
在这里插入图片描述
报文实例:

在这里插入图片描述

SCTP COOKIE_ACK 数据报

在这里插入图片描述
在这里插入图片描述
报文实例:
在这里插入图片描述
在这里插入图片描述

SCTP SACK数据报

在这里插入图片描述

字段长度意义
类型1
标志2设为全0并由接收方忽略
长度4
累积TSN确认4该参数包含了在收到TSN序列的间隔前的最后一个TSN值
窗口大小2规定了SACK的发送方的接收缓冲容量的字节数。
间隔ACK块数2用来指示SACK数据块中包含的间隔证实块的数目
重复TSN数2该字段包含了该端点收到的重复的TSN的数目
间隔ACK块结束偏移量2该字段用来指示这个间隔整数块的起始TSN偏移,为了计算实际的TSN号码必须要用累积TSN证实加上偏移号码。
重复TSN4用来指示一个在上一个SACK发送后收到的TSN重复的个数。每次一个接收者收到一个重复的TSN(在发送SACK前),则把这个TSN加到重复的TSN列表中。

SCTP DATA块

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
报文实例:
在这里插入图片描述
在这里插入图片描述
注:该SACK+DATA中的DATA未发生分片,且按序。

注:以下两个报文为另一次连接建立所抓到的,所以固定首部中的验证标志位与上面不同。

SCTP HEARTBEAT块

在这里插入图片描述
在这里插入图片描述
(意义:用于检测连接对象是否已经断开)
报文实例:
在这里插入图片描述
在这里插入图片描述

SCTP HEARTBEAT_ACK块

在这里插入图片描述
在这里插入图片描述

报文实例:
在这里插入图片描述
在这里插入图片描述

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2021-07-11 16:57:23  更:2021-07-11 16:59:28 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/5 20:16:25-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码