热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

linux下wireshark抓包Linux抓包(wireshark+tcpdump)

本文主要介绍关于linux,wireshark,tcpdump的知识点,对Linux抓包(wireshark+tcpdump)和linux下wireshark抓包有兴趣的朋友可以看下由【何翰宇】投稿的

本文主要介绍关于linux,wireshark,tcpdump的知识点,对Linux抓包(wireshark+tcpdump)和linux下wireshark抓包有兴趣的朋友可以看下由【何翰宇】投稿的技术文章,希望该技术和经验能帮到你解决你所遇的Linux相关技术问题。

linux下wireshark抓包

文章目录 一、Wireshark1. 安装wireshark工具2.打开Wireshark3. Wireshark基本使用4. 抓包信息1. 抓ping程序包请求信息响应信息ARP协议 2. 抓TCP三次握手、四次挥手三次握手四次挥手 3.抓telnet包安装 telnet用 Woreshark抓包 二、tcpdump工具1. 查看arp缓存2. tcpdump基本使用抓 ping包保存抓包数据到指定文件其它用法


一、Wireshark

Wireshark是一款图形化的抓包软件,在LInux和Windows下都可以下载。

1. 安装wireshark工具

用命令安装 wireshark相关软件包
命令:yum -y install wireshark* -y

linux下wireshark抓包 Linux抓包(wireshark+tcpdump)


rpm -ql wireshark查看安装wireshark产生了哪些文件

linux下wireshark抓包 Linux抓包(wireshark+tcpdump)

2.打开Wireshark

直接通过命令打开
wireshark

linux下wireshark抓包 Linux抓包(wireshark+tcpdump)


或者是图形化页面点开就好

linux下wireshark抓包 Linux抓包(wireshark+tcpdump)


linux下wireshark抓包 Linux抓包(wireshark+tcpdump)

3. Wireshark基本使用

点击Interface List,就可以看到接口列表,选择需要抓哪个网卡的包

linux下wireshark抓包 Linux抓包(wireshark+tcpdump)

这里我选择ens33网卡,点击start开始抓包

linux下wireshark抓包 Linux抓包(wireshark+tcpdump)

linux下wireshark抓包 Linux抓包(wireshark+tcpdump)

我们ping我们的主机地址,看看抓包情况

linux下wireshark抓包 Linux抓包(wireshark+tcpdump)

ping 工具使用的就是 ICMP协议,ICMP是IP协议的附属协议。IP层用它来与其他主机或路由器交换错误报文和其他重要信息。它主要是用来提供有关通向目的地址的路径信息。

linux下wireshark抓包 Linux抓包(wireshark+tcpdump)

4. 抓包信息

通过 ip.addr == [端口号]可以过滤掉无关ip

linux下wireshark抓包 Linux抓包(wireshark+tcpdump)

1. 抓ping程序包 请求信息

linux下wireshark抓包 Linux抓包(wireshark+tcpdump)

数据帧

linux下wireshark抓包 Linux抓包(wireshark+tcpdump)


链路层

linux下wireshark抓包 Linux抓包(wireshark+tcpdump)


网络层

linux下wireshark抓包 Linux抓包(wireshark+tcpdump)


应用层

linux下wireshark抓包 Linux抓包(wireshark+tcpdump)

响应信息

因为是ping的响应,要响应给windows,所以源变成了LInux本机,目的变成了windows。
接着是协议类型,ping的请求是8,响应变成了0

linux下wireshark抓包 Linux抓包(wireshark+tcpdump)

ARP协议

linux下wireshark抓包 Linux抓包(wireshark+tcpdump)

2. 抓TCP三次握手、四次挥手 三次握手

通过 Xshell连接Linux虚拟机

linux下wireshark抓包 Linux抓包(wireshark+tcpdump)

linux下wireshark抓包 Linux抓包(wireshark+tcpdump)

四次挥手

linux下wireshark抓包 Linux抓包(wireshark+tcpdump)


linux下wireshark抓包 Linux抓包(wireshark+tcpdump)

3.抓telnet包 安装 telnet

telnet是和ssh类似的,都是用来远程登录Linux服务器,ssh的端口号是22,telnet的端口号是23

安装命令:yum -y install telnet-server

安装完后要启动服务

命令:systemctl start telnet.socket

linux下wireshark抓包 Linux抓包(wireshark+tcpdump)


查看是否有 telnet服务的端口号
命令: netstat -nltp | grep :23

linux下wireshark抓包 Linux抓包(wireshark+tcpdump)


查看该应用产生哪些文件

linux下wireshark抓包 Linux抓包(wireshark+tcpdump)


测试 telnet
测试时记得开发23端口或者关闭防火墙
关闭防火墙命令: systemctl stop firewalld
添加端口号: firewall-cmd --zOne=public --add-port=[端口号]
注意:telnet 默认是不允许root用户登录的,只能登录普通用户

linux下wireshark抓包 Linux抓包(wireshark+tcpdump)

用 Woreshark抓包

抓包后发现,telnet传输的是明文数据。仔细找还能看到密码,所以这个命令基本是被淘汰了

linux下wireshark抓包 Linux抓包(wireshark+tcpdump)

二、tcpdump工具

tcpdump是 Linux下的抓包工具,但它是命令行的操作。用起来没有Wireshark方便

linux下wireshark抓包 Linux抓包(wireshark+tcpdump)

ARP:(地址解析协议IP-MAC)和RARP(逆地址解析协议MAC-IP)是某些网络接口(如以太网)使用的特殊协议,用来转换IP层和网络接口层使用的地址下层协议给上层协议提供了一些功能支撑,上层协议要依赖下层协议

1. 查看arp缓存

命令:arp -n
作用:查看arp缓存

arp缓存里记录了,我的主机曾经向拿台主机要过MAC地址

linux下wireshark抓包 Linux抓包(wireshark+tcpdump)

删除arp缓存
命令:arp -d [ip]

linux下wireshark抓包 Linux抓包(wireshark+tcpdump)

2. tcpdump基本使用

常用语法:tcpdump -i [网卡名] -nn host [主机ip]

-i :指定网络接口,对于多个网络接口有用 -n :显示IP地址,不查主机名。当DNS不起作用时常用到这个参数 -nn :不显示协议和端口名。即显示IP地址和端口 抓 ping包

linux下wireshark抓包 Linux抓包(wireshark+tcpdump)


linux下wireshark抓包 Linux抓包(wireshark+tcpdump)


每次询问的MAC地址都会保存到,arp缓存里

linux下wireshark抓包 Linux抓包(wireshark+tcpdump)

保存抓包数据到指定文件

通过 -w 选项可以将抓包数据保存到指定文件里,再通过Woreshark打开

命令:tcpdump -i [网卡名] -nn host [主机ip] -w [文件名]

linux下wireshark抓包 Linux抓包(wireshark+tcpdump)

linux下wireshark抓包 Linux抓包(wireshark+tcpdump)


找到保存抓包信息的文件,打开

linux下wireshark抓包 Linux抓包(wireshark+tcpdump)

linux下wireshark抓包 Linux抓包(wireshark+tcpdump)

其它用法

下面的命令可以查看所有送到主机hostname的数据包
tcpdump -i eth0 dst host [主机ip]

本文《Linux抓包(wireshark+tcpdump)》版权归何翰宇所有,引用Linux抓包(wireshark+tcpdump)需遵循CC 4.0 BY-SA版权协议。


推荐阅读
  • eclipse学习(第三章:ssh中的Hibernate)——11.Hibernate的缓存(2级缓存,get和load)
    本文介绍了eclipse学习中的第三章内容,主要讲解了ssh中的Hibernate的缓存,包括2级缓存和get方法、load方法的区别。文章还涉及了项目实践和相关知识点的讲解。 ... [详细]
  • 本文介绍了Redis的基础数据结构string的应用场景,并以面试的形式进行问答讲解,帮助读者更好地理解和应用Redis。同时,描述了一位面试者的心理状态和面试官的行为。 ... [详细]
  • 树莓派Linux基础(一):查看文件系统的命令行操作
    本文介绍了在树莓派上通过SSH服务使用命令行查看文件系统的操作,包括cd命令用于变更目录、pwd命令用于显示当前目录位置、ls命令用于显示文件和目录列表。详细讲解了这些命令的使用方法和注意事项。 ... [详细]
  • 本文详细介绍了Linux中进程控制块PCBtask_struct结构体的结构和作用,包括进程状态、进程号、待处理信号、进程地址空间、调度标志、锁深度、基本时间片、调度策略以及内存管理信息等方面的内容。阅读本文可以更加深入地了解Linux进程管理的原理和机制。 ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • Python瓦片图下载、合并、绘图、标记的代码示例
    本文提供了Python瓦片图下载、合并、绘图、标记的代码示例,包括下载代码、多线程下载、图像处理等功能。通过参考geoserver,使用PIL、cv2、numpy、gdal、osr等库实现了瓦片图的下载、合并、绘图和标记功能。代码示例详细介绍了各个功能的实现方法,供读者参考使用。 ... [详细]
  • Java中包装类的设计原因以及操作方法
    本文主要介绍了Java中设计包装类的原因以及操作方法。在Java中,除了对象类型,还有八大基本类型,为了将基本类型转换成对象,Java引入了包装类。文章通过介绍包装类的定义和实现,解答了为什么需要包装类的问题,并提供了简单易用的操作方法。通过本文的学习,读者可以更好地理解和应用Java中的包装类。 ... [详细]
  • Java学习笔记之使用反射+泛型构建通用DAO
    本文介绍了使用反射和泛型构建通用DAO的方法,通过减少代码冗余度来提高开发效率。通过示例说明了如何使用反射和泛型来实现对不同表的相同操作,从而避免重复编写相似的代码。该方法可以在Java学习中起到较大的帮助作用。 ... [详细]
  • Vagrant虚拟化工具的安装和使用教程
    本文介绍了Vagrant虚拟化工具的安装和使用教程。首先介绍了安装virtualBox和Vagrant的步骤。然后详细说明了Vagrant的安装和使用方法,包括如何检查安装是否成功。最后介绍了下载虚拟机镜像的步骤,以及Vagrant镜像网站的相关信息。 ... [详细]
  • 搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的详细步骤
    本文详细介绍了搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的步骤,包括环境说明、相关软件下载的地址以及所需的插件下载地址。 ... [详细]
  • 向QTextEdit拖放文件的方法及实现步骤
    本文介绍了在使用QTextEdit时如何实现拖放文件的功能,包括相关的方法和实现步骤。通过重写dragEnterEvent和dropEvent函数,并结合QMimeData和QUrl等类,可以轻松实现向QTextEdit拖放文件的功能。详细的代码实现和说明可以参考本文提供的示例代码。 ... [详细]
  • android listview OnItemClickListener失效原因
    最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
  • 本文介绍了计算机网络的定义和通信流程,包括客户端编译文件、二进制转换、三层路由设备等。同时,还介绍了计算机网络中常用的关键词,如MAC地址和IP地址。 ... [详细]
  • 本文介绍了在使用Python中的aiohttp模块模拟服务器时出现的连接失败问题,并提供了相应的解决方法。文章中详细说明了出错的代码以及相关的软件版本和环境信息,同时也提到了相关的警告信息和函数的替代方案。通过阅读本文,读者可以了解到如何解决Python连接服务器失败的问题,并对aiohttp模块有更深入的了解。 ... [详细]
  • 本文介绍了在mac环境下使用nginx配置nodejs代理服务器的步骤,包括安装nginx、创建目录和文件、配置代理的域名和日志记录等。 ... [详细]
author-avatar
月光魔术师2702935955
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有