概述 上节已经按照Netfilter的框架实现自己的hook函数,下面说一下netfilter的HOOK的代码细节,先看一下之前的结构体 结构体&HOOK函数注册 struct nf_hook_ops { /* User fills in from here down. */ nf_hookfn *hook; struct net_devi…
我们云平台日常的虚机可能会出现虚机内部hang住或者死机的情况,无法登录虚机内部,对于调查定位问题难度很大,除了查看qemu和libvirt的日志,其他的手段有限,下面说一下个方法可以在宿主机dump虚机内部的vmcore文件,然后通过crash工具debug虚机内部问题,下面具体说说步骤。 查看虚机 zjp@zjp ~> virsh lis…
概述 Linux Netfilter技术(1)-概述已经介绍了Netfilter的基本概念和框架,主要是了解了Netfilter框架的Hook原理,这篇主要介绍如何基于Netfiter框架实现自己的hook函数。如果google或者百度大部分都是基于老接口的示例nf_register_hook,在kernel 4.13.x之后都是新接口nf_reg…
概述 gdb我们大家应该已经很熟悉了,在使用gdb的场景一种是attach在running的进程,但是这种可能会影响进程的运行甚至我们在生产环境导致环境出现意想不到的问题,所以一般不建议在生产环境直接使用gdb,那我们如何调试进程呢?下面浅述一下自己的方法。 回答上面的问题一般就是进程在发生一些错误导致panic时产生了一个coredump文件,我…
使用git send-mail的方法 我们工作过程中可能需要提patch到公司或者社区的mail list,但是如果使用一些邮件客户端可能存在patch格式错乱等问题,所以推荐使用git send-mail这个工具。 安装send-mail的工具 sudo apt install send-email 配置个人的git config(~/.gitc…
概念 Netfilter 是 Linux 内核中进行数据包过滤,连接跟踪(Connect Track),网络地址转换(NAT)等功能的主要实现框架;该框架在网络协议栈处理数据包的关键流程中定义了一系列钩子点(Hook 点),并在这些钩子点中注册一系列函数对数据包进行处理。这些注册在钩子点的函数即为设置在网络协议栈内的数据包通行策略,也就意味着,这些…
sudo 越权(CVE-2021-3156) [root@localhost ~]# rpm -qa | grep sudo sudo-debuginfo-1.8.6p7-21.el7_3.x86_64 sudo-1.8.6p7-21.el7_3.x86_64 sudo-devel-1.8.6p7-21.el7_3.x86_64 看一下执行一个命令…
背景 在k8s发现在net.bridge.bridge-nf-call-iptables=0和net.bridge.bridge-nf-call-iptables=1仍然是可以ping通不同的node节点的服务,按照我们的理解如果net.bridge.bridge-nf-call-iptables=0则在bridge就不会调用iptable的规则进…
问题描述 发现在node-1,2,3节点sar不定时出现较大的rx/tx的统计远远超出网卡的正常带宽。 排除思路 首先怀疑是sar工具导致的,所以将sar升级到centos8的最新版本,目前还没有复现问题; 通过EMS的监控可以发现ovs的统计也出现较大的流量,所以也怀疑是不是底层驱动出现问题,不一定是sar的问题; 分析/proc/net/dev…
内存分页机制 Linux的分页机制用来实现以页(Page)为单位的虚拟内存系统,而具体的寻址方法则是逻辑地址经过分页机制的处理转换为物理地址。 控制寄存器 CR0 Bit Name Full Name Description 0 PE Protected Mode Enable If 1, system is in protected mode, …