问题描述

在App Service for Linux环境中,不能与Windows环境一样,可以使用网络中的排查工具来抓取网络包。

那么,在Linux(非Container)环境中,如何抓取网络包呢?

问题解答

抓取网络包最核心的工具就是TCPDUMP,所以在App Service Linux的环境中,解决办法就两步:一,安装tcpdup,二,执行tcpdump命令

详细的操作步骤如下:

1) SSH进入应用所运行的容器中

SSH Application Contianer URL:  https://<Your App Service Name>.scm.chinacloudsites.cn/webssh/host

特别提醒,一定是 SSH for Instance, 不是Kudu。

2)安装tcpdump

使用apk工具安装,使用如下命令:

apk update

apk add tcpdump

3)开始抓包

抓包指令: tcpdump -i any host <ip address>  and tcp port <3306> -n -v -s 0 -w /home/appnetworktrace0827.pcap

指令参数详解

参数 说明
tcpdump Linux 下的网络抓包工具,用于捕获网络接口上的数据包。
-i any 表示监听所有网络接口(包括 eth0、lo 等),适用于容器或多网卡环境。
host <ip address> 只抓取与该 IP 地址相关的通信数据包。这个 IP 是你 MySQL 数据库的地址。
and tcp port 3306 进一步过滤,只抓取 TCP 协议下端口为 3306(MySQL 默认端口)的数据包。
-n 禁止 DNS 解析,加快抓包速度并避免干扰。
-v 输出更详细的信息(verbose 模式)。
-s 0 设置抓包的快照长度为最大(0 表示抓取完整数据包),确保不会截断 TLS 握手内容。
-w /home/appnetworktrace0827.pcap 将抓取的数据包保存为 pcap 文件,便于后续使用 Wireshark 等工具分析。

命令执行效果图:

4)Ctrl + C 停止

5)通过 Kudu newui 下载网络包

New UI :  https://<Your App Service Name>.scm.chinacloudsites.cn/newui/

点击 File Manager ,进入Home目录,找到第三步中生成的文件,点击文件名左边第二个图标,进行下载。

以上步骤的动图版如下:

参考资料

Collecting a Network Trace on Linux Web Apps : https://azureossd.github.io/2023/12/05/Collecting-a-Network-Trace-on-Linux-Web-Apps/

【App Service Linux】在Linux App Service中安装 tcpdump 并抓取网络包的更多相关文章

  1. 【Azure 环境】在Windows环境中抓取网络包(netsh trace)后,如何转换为Wireshark格式以便进行分析

    问题描述 如何在Windows环境中,不安装第三方软件的情况下(使用Windows内置指令),如何抓取网络包呢?并且如何转换为Wireshark 格式呢? 操作步骤 1) 以管理员模式打开CMD,使用 ...

  2. 【Azure 应用服务】App Service For Linux 如何在 Web 应用实例上住抓取网络日志

    问题描述 在App Service For Windows的环境中,我们可以通过ArmClient 工具发送POST请求在Web应用的实例中抓取网络日志,但是在App Service For Linu ...

  3. 【应用服务 App Service】App Service中抓取网络日志

    问题描述 众所周知,Azure App Service是一种PaaS服务,也就是说,IaaS层面的所有内容都由平台维护,所以使用App Service的我们根本无法触碰到远行程序的虚拟机(VM), 所 ...

  4. linux使用tcpdump抓包工具抓取网络数据包,多示例演示

    tcpdump是linux命令行下常用的的一个抓包工具,记录一下平时常用的方式,测试机器系统是ubuntu 12.04. tcpdump的命令格式 tcpdump的参数众多,通过man tcpdump ...

  5. APP自动化框架LazyAndroid使用手册(2)--元素自动抓取

    作者:黄书力 概述 前面的一篇博文简要介绍了安卓自动化测试框架LazyAndroid的组成结构和基本功能,本文将详细描述此框架中元素自动抓取工具lazy-uiautomaterviewer的使用方法. ...

  6. Linux使用tcpdump抓取网络数据包示例

    tcpdump是Linux命令行下常用的的一个抓包工具,记录一下平时常用的方式,测试机器系统是ubuntu 12.04. tcpdump的命令格式 tcpdump的参数众多,通过man tcpdump ...

  7. Linux环境搭建-在虚拟机中安装Centos7.0

    最近在空闲时间学习Linux环境中各种服务的安装与配置,都属于入门级别的,这里把所有的学习过程记录下来,和大家一起分享. 我的电脑系统是win7,所以我需要在win7上安装一个虚拟机-VMware,然 ...

  8. linux tcpdump抓取HTTP包的详细解释

    tcpdump tcpdump是linux系统自带的抓包工具,主要通过命令行的方式,比较适合在线上服务器进行抓包操作,如果是windows或者ubuntu完全可 以选择一些图形化的工具,ubuntu比 ...

  9. python threading模块中对于信号的抓取

    最近的物联网智能网关(树莓派)项目中遇到这样一个问题:要从多个底层串口读取发来的数据,并且做出相应的处理,对于每个串口的数据的读取我能想到的可以采用两种方式: 一种是采用轮询串口的方式,例如每3s向每 ...

  10. Linux RedHat7.0_64位系统中安装Oracle_11g_R2

    步骤一: 当然是安装rhel7操作系统啦(废话),建议在安装过程中系统软件类型选择最后一项[Server with GUI].其他的默认一般即可. 步骤二:在初装完成的系统中无法像Windows那样直 ...

随机推荐

  1. ansible-playbook常用模块

    lineinfile 此模块是针对文件特殊行,使用后端引用的正则表达式来替换. - hosts: 192.168.50.1 gather_facts: no tasks: - name: 设置UseD ...

  2. 搭建个人博客系列--(4) 利用Github Actions自动构建博客

    经过前面的系列文章的学习和实践,相信你已经成功的利用Hexo构建自己的博客并且部署到了Github上. 目前整个发布博客的流程是,用markdown文件写好博客,然后使用Hexo编译成html, 最后 ...

  3. ArkUI-X平台桥接Bridge说明

    简介 平台桥接用于客户端(ArkUI)和平台(Android或iOS)之间传递消息,即用于ArkUI与平台双向数据传递.ArkUI侧调用平台的方法.平台调用ArkUI侧的方法. 以Android平台为 ...

  4. Go + WebSocket + Chrome Extension:基于真实浏览器环境的 cf_clearance 自动化获取方案

    前言 随着 Web 安全防护技术的演进,Cloudflare 等 CDN 服务商部署的反爬虫机制愈发复杂.传统的 HTTP 客户端库已无法有效应对基于 JavaScript 执行的挑战验证,而 Sel ...

  5. [CF1394D] Boboniu and Jianghu

    D - Boboniu and Jianghu 设\(dp[i][0/1]\)表示当前链从下往上是不增/减的,那么当\(u\)与\(v\)(其中\(fa[v]=u\))的\(b\)不相同时,\(dp[ ...

  6. HRC 003 T3 置换

    题目链接 HRC 是啥 HZOI Regular Contest 前置知识 置换 轮换 \(60\space\text{pts}\) 解法 就像对于一个数,我们经常从素因子之积的角度看待它一样,在这道 ...

  7. C# .Net Core 爬虫 HtmlAgilityPack 获取select 标签下的 option 文本

    https://blog.csdn.net/weixin_30566111/article/details/99483605 var html = "<select id=\" ...

  8. 关于random 函数 在linux上可以执行,在windows 上执行不了的问题

    简介 RT 解决方案 最终linux上的random函数,发现了这么一句英文 /* These are the functions that actually do things. The rando ...

  9. Day12 备战CCF-CSP练习

    Day 12 题目描述 西西艾弗岛上共有 \(n\) 个仓库,依次编号为 \(1∼n\). 每个仓库均有一个 \(m\) 维向量的位置编码,用来表示仓库间的物流运转关系. 具体来说,每个仓库 \(i\ ...

  10. spring-ai 学习系列(7)-MCP 安全认证

    继续先前的MCP学习,实际企业级应用中,很多信息都是涉及商业敏感数据,需要考虑安全认证,不可能让MCP Server在网上裸奔.spring web开发中,提供了拦截器功能,最简单的思路,在Clien ...