wireshark抓包分析

一、软件说明

        wireshark是网络包分析工具

        网络包分析工具的主要作用是尝试捕获网络包,并尝试显示包的尽可能详细的情况。

        wireshark应用举例:网络管理员用来解决网络问题

                                       网络安全工程师用来检查安全隐患

                                       开发人员用来测试协议的执行情况

                                       学习网络协议

二、软件的安装

        Ubuntu版本

                sudo apt-get install wireshark

        Windows版本:

        以管理员身份运行 Wireshark-4.2.5-x64.exe

        选好安装路径 一路下一步即可

        如果提示缺少插件,就勾选安装,

        所有缺少的内容 都勾选上 尤其是有一页可能会提示 usbpcap xxx 必须要装

windows版本的wireshark抓包软件安装包链接如下:

链接:https://pan.baidu.com/s/1ijq7zgumn1zM-xHzEnnIHQ?pwd=6666
提取码:6666

三、软件的使用

        Ubuntu版本

                sudo wireshark    

        windows版本:

                以管理员身份运行软件

选择要捕获的网卡 然后双击

(或者点击菜单栏的 捕获 --》 选项 选择合适的网卡 点击开始 也可以)

过滤语句的使用

        常用的过滤语句

                tcp.port==8888

                tcp.src==192.168.250.100

                tcp.dst==192.168.250.1

                tcp.addr==192.168.10.10

        也可以使用and或者or连接多个过滤语句

抓包分析

windows网络调试助手作为TCP服务器

ubuntu写一个TCP的客户端代码,客户端给服务器发送hello world 进行抓包分析

client.c

#include <head.h>

int main(int argc, const char *argv[])
{
    if (3 != argc)
    {
        printf("usage error:%s <ip> <port>", argv[0]);
        exit(-1);
    }
int sockfd;
if(-1==(sockfd = socket(AF_INET,SOCK_STREAM,0))){
    PRINT_ERR("socket errror");
}
struct sockaddr_in serveraddr;
socklen_t serveraddr_len = sizeof(serveraddr);
memset(&serveraddr,0,serveraddr_len);
serveraddr.sin_family = AF_INET;
serveraddr.sin_addr.s_addr = inet_addr(argv[1]);
serveraddr.sin_port = htons(atoi(argv[2]));
if(-1==connect(sockfd,(struct sockaddr*)&serveraddr,serveraddr_len)){
    PRINT_ERR("connect error");
}
printf("与服务器连接成功...\n");
char buff[128]={0};
while (1)
{
  //收发数据
  memset(buff,0,sizeof(buff));
  fgets(buff,sizeof(buff),stdin);
  if(buff[strlen(buff)-1]=='\n'){
    buff[strlen(buff)-1]='\0';
  }
  if(-1==send(sockfd,buff,sizeof(buff),0)){
    PRINT_ERR("send error");
  }
  if(strcmp(buff,"quit")==0){
    break;
  }
  memset(buff,0,sizeof(buff));
  if(-1==recv(sockfd,buff,sizeof(buff),0)){
PRINT_ERR("recv error");
  }
  printf("应答消息为:%s\n",buff);
  
}
close(sockfd);
    return 0;
}

链路层、网络层、传输层和应用层协议见以下文章

链路层、网络层、传输层和应用层协议详解分析-CSDN博客wireshark抓包分析-CSDN博客wireshark是网络包分析工具网络包分析工具的主要作用是尝试捕获网络包,并尝试显示包的尽可能详细的情况。wireshark应用举例:网络管理员用来解决网络问题网络安全工程师用来检查安全隐患开发人员用来测试协议的执行情况学习网络协议。https://blog.csdn.net/CSDN_DU666666/article/details/139490307?csdn_share_tail=%7B%22type%22%3A%22blog%22%2C%22rType%22%3A%22article%22%2C%22rId%22%3A%22139490307%22%2C%22source%22%3A%22CSDN_DU666666%22%7D

  • 6
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值