首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Linux 连接跟踪(conntrack)

: 张帅,云网络从业人员,个人博客:www.flowlet.net Linux 连接跟踪子系统(Linux Conntrack)是实现带状态的包过滤与 NAT 功能的基础,一般工作中我们都将 Linux...此前也有很多关于 Linux Conntrack 的文章介绍,但这些文章都是基于较老的 kernel 版本进行讲解,内容有点过时了。...本文基于 Linux kernel 5.10 LTS 对 Conntrack 的底层运作方式进行详细介绍。...当 Linux 一旦激活连接跟踪,CT 系统就会检查 IPv4/IPv6 报文及其 payload,以确定哪些报文之间彼此关联。CT 系统并不参与端到端通信,而是透明的执行观测检查。...jiffies:与其他内核组件一样,ct 系统利用 Linux 内核的 “jiffies” 软件时钟机制,它是一个全局整数,在系统启动时初始化为 0,并通过定时器中断间隔加 1。

45010
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    从零开始学习MySQL调试跟踪(1)

    有时为了跟踪故障需要调试MySQL/GreatSQL源码,本文介绍如何在Linux下构建MySQL/GreatSQL源码调试环境。 在这之前,我也是一名小白,一起从零开始探索吧。...启动gdb,准备调试跟踪GreatSQL,我们分别演示几种不同方式。...3.1 利用gdb设置断点 在 终端#1 中启动gdb,并挂接GreatSQL进程,准备跟踪 $ gdb -p 2644322 GNU gdb (GDB) Red Hat Enterprise Linux...本文简单演示了如何跟踪调试GreatSQL的几种方法,更多有趣实用的方法还有待进一步挖掘,一起探索新世界吧。...P.S,我也在MacOS环境下构建了基于vscode的跟踪调试环境,但还是更喜欢在Linux终端命令行模式下工作,所以本文没介绍如何利用vscode跟踪调试,有兴趣的读者可以根据其他资料自行构建。

    43610

    从零开始学习MySQL调试跟踪(2)

    启用coredump 程序运行过程中可能会异常终止或崩溃,OS会把程序挂掉时的内存状态记录下来,写入core文件,这就叫 coredump,通过gdb结合core文件可以方便地进行调试。...真实故障场景分析跟踪 在GreatSQL 8.0.25-15版本(上一个版本)中,InnoDB并行查询功能在特定场景下存在bug,会导致crash,相应的日志见下: mysqld-debug: /opt...-x86_64/bin/mysqld-debug(do_command(THD*)+0x51c) [0x3797c48] /usr/local/GreatSQL-8.0.25-Linux-glibc2.28.../sysdeps/unix/sysv/linux/x86_64/clone.S:95 有了这些信息,研发同学再去跟踪定位问题根源就会方便很多。...本文简单演示了如何利用core文件去跟踪定位分析可能导致crash的原因,更多有趣实用的方法还有待进一步挖掘,一起探索新世界吧。 Enjoy GreatSQL :)

    28610

    在 Shell 脚本中跟踪调试命令的执行

    文章目录 shell 脚本调试系列 概述 shell 跟踪执行的重要性 shell 脚本调试系列 本系列的前面部分清晰地阐明了另外两种 shell 脚本调试模式:详细模式和语法检查模式,并用易于理解的例子展示了如何在这些模式下启用...shell 脚本调试。...Linux 中启用 Shell 脚本的调试模式 在 Shell 脚本中执行语法检查调试模式 在 Shell 脚本中跟踪调试命令的执行 ---- 概述 shell 跟踪简单的来说就是跟踪 shell 脚本中的命令的执行...要打开 shell 跟踪,请使用 -x 调试选项。 这会让 shell 在终端上显示所有执行的命令及其参数。...Number of users: $NO_USERS" echo "System Uptime : $UPTIME" } check_root print_sys_info exit 0 注: 在Linux

    91020

    eos源码赏析(十七):EOS源码调试跟踪(下)

    在前文eos源码赏析(十五):EOS源码调试跟踪(上)介绍了EOS源码调试跟踪的方法以及IDE的使用,均在ubuntu16.04 下进行,笔者尝试在Windows下使用VS这款IDE结合Visualgdb...2、Windows下编译eos源码 虽然在Win下调试eos源码的尝试失败了,但编译还是成功了的,也可以和Linux或mac下一样正常出块,且有IDE的配置的情况下,控制台的输出以及观察还是很方便的,下面简单的介绍下...Windows下使用VS2008(或更高版本)+Visualgdb+Linux服务器下编译eos源码的方法。...第一步:新建linux工程,注意此处只有在你的visualgdb安装成功之后才会出现linux工程的向导。...本文主要介绍两种IDE在eos编译、运行、调试中的使用,包括在Linux或Mac下使用Clion对eos代码进行编译调试,以及在Windows下使用VS+Visualgdb对eos代码进行编译、运行的过程

    81920

    eos源码赏析(十五):EOS源码调试跟踪(上)

    从个人经验来看,若要对代码进行跟踪无外乎通过日志的打印去跟踪和断点调试堆栈的调用去观察代码调用的流程。...今天我们就简单的谈谈如何对代码进行跟踪调试,系列同样分为上下两篇: 上篇针对Linux和Mac下日志打印跟踪及相关调试及IDE(vscode)的使用,下篇针对Windows下使用VS这个大家耳熟能详的IDE...本文主要分为以下内容: 日志打印跟踪调试 VSCode调试eos代码 1、日志打印跟踪调试 在先前的文章中我们多次提到数据的持久化存储,而其最基本的操作便是将数据表以Multi-Index的形式写入到db...本文介绍了eos跟踪调试的两种方式,即通过日志打印的方式进行代码的跟踪,以dlog为例打印action执行中的内存消耗,以及通过VSCode对eos代码进行Debug调试的过程,以producer_plugin...而本文的内容适用于Linux及Mac操作系统,对于一些Windows开发者来说,熟悉了IDE,如VS系列的IDE,能不能在Windows适用VS对eos代码进行调试呢?

    59320

    双机调试Linux内核

    利用KGDB双机调试内核 1.1. 环境 1.2. 配置内核编译环境 2. 参考 双机调试Linux内核环境配置。...利用KGDB双机调试内核 环境 centos 7 VMware 全程使用root用户 配置内核编译环境 这种方式调试内核需要两台机器,一台用来运行Linux内核,另一台对内核进行调试。...可以开两个Linux系统的虚拟机;也可以在物理机系统是linux上面装虚拟机,然后虚拟机运行一个linux;再就是买开发板来调试内核。以下是在windows上开两个虚拟机的流程描述。...在https://www.kernel.org/ 下载想调试版本的内核代码(可以下载tarball格式)。...(我测试ttyS0不行,改成ttyS1可以了) 参考 http://blog.nsfocus.net/gdb-kgdb-debug-application/ 在VMware中用Kgdb调试linux内核

    4.7K31

    VScode调试Linux详解

    Linux上通常使用gdb命令行调试,但该方式调试不太直观,且命令行长时间不用,容易忘记,不如GUI直观和容易上手,下面介绍基于GUI的方式调试Linux。...一.Linux调试GUI方案简介 1)    Visual studio 远程调试Linux      在VS2015版本以后Visual studio就支持Linux的编译和调试。...使用熟悉的windows界面开发和调试Linux,极大的提高了开发效率,可以广泛应用的Linux服务器开发和嵌入式Linux开发。 ...2)    基于eclipse 本地调试Linux          因为eclipse是跨平台的,安装一个带GUI的linux系统,就可以像VS一样开发和调试Linux 3)  基于QtCreator...本地调试Linux         因为QtCreator是跨平台的,安装一个带GUI的linux系统,就可以像VS一样开发和调试 4)    基于eclipse 远程调试Linux

    3.8K30
    领券