公司Linux下socket对接时发现接口中总是报错,所以研究了一下Linux下的抓包
tcpdump host #IP地址# //获取主机210.27.48.1接收或发出的telnet包
tcpdump参数的主要选项
-i :指定网卡 默认是 eth0
-n :线上ip,而不是hostname
-c :指定抓到多个包后推出
-A:以ASCII方式线上包的内容,这个选项对文本格式的协议包很有用
-x:以16进制显示包的内容
-vvv:显示详细信息
-s :按包长截取数据;默认是60个字节;如果包大于60个字节,则抓包会出现丢数据;所以我们一般会设置 -s 0 ;这样会按照包的大小截取数据;抓到的是完整的包数据
-r:从文件中读取【与 -w 对应,/usr/sbin/tcpdump -r test.out 读取 tcpdump -w test.out】
-w:到处指向文件【一定要用,-w t.out ,然后用 -r t.out 来看抓包信息,否则可读性很差】
2. tcpmdump 抓包出来分析包的具体含义
包携带的标志:S:S=SYC :发起连接标志P:P=PUSH:传送数据标志F:F=FIN:关闭连接标志ack:表示确认包RST=RESET:异常关闭连接. 表示没有任何标志
第一行: S:表示 clinet.hostname 的临时端口50741向 server.hostname 80 端口发起连接,client 的初始包序号是: 562843056 ;滑动窗口(win 14480)的大小是:14480 [14k] 滑动窗口即tcp 接收缓冲区的大小,用于tcp 拥塞控制;mss 1460:可以接收的最大包长度,通常是MTU - 40 byte;IP头和TCP头各20byte
第二行: S:表示SYN状态;是server.hostname 对第一行 clinet.hostname 发起连接的请求的回应;同时带上client 端 初始包序号 + 1:ack 562843057 ,即server.hostname 下次等待接收这个包序号的包,用于tcp 字节流的顺序控制(?). server.hostname 初始包序列号:2306923370
第三行:client.hostname 再次确认,tcp连接完成三次握手。
第四行:P:推送数据 client.hostname 通过 50741 端口向 server.hostname 发送数据包;数据包大小是 1005byte ;第五行是 server.hostname 响应这个数据包发送,接收这个数据包。----> 当完成后会出现一个 server.hostname F 关闭连接的数据包,这里没有抓取
第6行 ---->10行是对 1-5行的重复;因为机器是web服务是并发的。
更多Linux文章,请访问Linux教程栏目进行学习!
以上是Linux下的抓包tcpdump的详细内容。更多信息请关注PHP中文网其他相关文章!

linux设备节点是应用程序和设备驱动程序沟通的一个桥梁;设备节点被创建在“/dev”,是连接内核与用户层的枢纽,相当于硬盘的inode一样的东西,记录了硬件设备的位置和信息。设备节点使用户可以与内核进行硬件的沟通,读写设备以及其他的操作。

区别:1、open是UNIX系统调用函数,而fopen是ANSIC标准中的C语言库函数;2、open的移植性没fopen好;3、fopen只能操纵普通正规文件,而open可以操作普通文件、网络套接字等;4、open无缓冲,fopen有缓冲。

端口映射又称端口转发,是指将外部主机的IP地址的端口映射到Intranet中的一台计算机,当用户访问外网IP的这个端口时,服务器自动将请求映射到对应局域网内部的机器上;可以通过使用动态或固定的公共网络IP路由ADSL宽带路由器来实现。

在linux中,交叉编译是指在一个平台上生成另一个平台上的可执行代码,即编译源代码的平台和执行源代码编译后程序的平台是两个不同的平台。使用交叉编译的原因:1、目标系统没有能力在其上进行本地编译;2、有能力进行源代码编译的平台与目标平台不同。

在linux中,eof是自定义终止符,是“END Of File”的缩写;因为是自定义的终止符,所以eof就不是固定的,可以随意的设置别名,linux中按“ctrl+d”就代表eof,eof一般会配合cat命令用于多行文本输出,指文件末尾。

在linux中,可以利用“rpm -qa pcre”命令判断pcre是否安装;rpm命令专门用于管理各项套件,使用该命令后,若结果中出现pcre的版本信息,则表示pcre已经安装,若没有出现版本信息,则表示没有安装pcre。

linux查询mac地址的方法:1、打开系统,在桌面中点击鼠标右键,选择“打开终端”;2、在终端中,执行“ifconfig”命令,查看输出结果,在输出信息第四行中紧跟“ether”单词后的字符串就是mac地址。

在linux中,rpc是远程过程调用的意思,是Reomote Procedure Call的缩写,特指一种隐藏了过程调用时实际通信细节的IPC方法;linux中通过RPC可以充分利用非共享内存的多处理器环境,提高系统资源的利用率。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

螳螂BT
Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

DVWA
Damn Vulnerable Web App (DVWA) 是一个PHP/MySQL的Web应用程序,非常容易受到攻击。它的主要目标是成为安全专业人员在合法环境中测试自己的技能和工具的辅助工具,帮助Web开发人员更好地理解保护Web应用程序的过程,并帮助教师/学生在课堂环境中教授/学习Web应用程序安全。DVWA的目标是通过简单直接的界面练习一些最常见的Web漏洞,难度各不相同。请注意,该软件中

SublimeText3 英文版
推荐:为Win版本,支持代码提示!

适用于 Eclipse 的 SAP NetWeaver 服务器适配器
将Eclipse与SAP NetWeaver应用服务器集成。

Dreamweaver Mac版
视觉化网页开发工具