ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

linux命令之tcpdunp

2022-07-21 17:33:23  阅读:225  来源: 互联网

标签:libpcap bpf tcpdump 网络 命令 过滤 linux tcpdunp 数据包


TCPDUMP官方文档以及介绍如何使用C/C++实现libpcap抓取网络数据包

网络相关的内容比较多,先将自己用到的记录协一下,以后遇到再增加

什么是tcpdump?为什么使用tcpdump?怎么使用?

1.tcpdump是什么?

tcpdump 是一款强大的网络抓包工具,它使用 libpcap 库来抓取网络数据包,这个库在几乎在所有的 Linux/Unix 中都有。熟悉 tcpdump 的使用能够帮助你分析调试网络数据,本文将通过一个个具体的示例来介绍它在不同场景下的使用方法。

tcpdump命令最初设计用于观察TCP/IP性能问题,它是一个用于截取网络分组,并输出分组内容的工具。tcpdump可以将网络中传送的数据包的报文头完全截获下来提供分析,它支持针对网络层、协议、主机、网络或端口的过滤,并提供and, or, not等逻辑语句来帮助用户去掉无用的信息。

2.为什么使用tcpdump?

在嵌入式设备开发,或者移动设备开发的过程中,设备与设备之间,设备与本地之间的网络通信,设备与远程服务器的通信,可能都会出现网络连通信问。如果在windows上抓包那选择性有很多,设备上是一个微型系统,这时tcpdump就变得实用。

tcpdump是Linux系统抓包工具,tcpdump基于libpcap库,根据使用者的定义对网络上的数据包进行截获,tcpdump可以将网络中传送的数据包中的"头"完全截获下来提供分析,支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助去掉无用的信息。通过tcpdump可以分析很多网络行为,比如丢包重传、详细报文、tcp分组等,总之通过tcpdunp可以为各种网络问题进行排查,可以在服务器上将捕获的数据包信息以pcap文件保存下来,通过wireshark打开,更直观地分析。

tcpdump是基于libpcap库的,数据包的过滤是基于BPF(tcpdump依附标准的bpf机器来运行,tcpdump过滤规则会被转化为一段bpf指令并加载到内核中的bpf虚拟机器上执行),使用bpf虚拟机的tcpdump完美解决了包过滤问题。总之tcpdump使用libpcap这种链路层旁路处理的形式进行包捕获,使用bpf机制实现对包的完美过滤。

3.怎么使用tcpdump?

网络基本功(十七):细说tcpdump的妙用(上)
网络基本功(十八):细说tcpdump的妙用(下)
tcpdump详解
Linux内核角度分析tcpdump原理(1)
Linux内核角度分析tcpdump原理(2)

标签:libpcap,bpf,tcpdump,网络,命令,过滤,linux,tcpdunp,数据包
来源: https://www.cnblogs.com/aplmmy49y/p/16502720.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有