1.1 conntrack 介绍
对于那些不熟悉的人来说,conntrack简单来说是Linux内核的一个子系统,它跟踪所有进入、出去或通过系统的网络连接,允许它监控和管理每个连接的状态,这对于诸如NAT(网络地址转换)、防火墙和保持会话连续性等任务至关重要。它作为Netfilter的一部分运行,Netfilter是Linux内核用于网络数据包过滤的框架,它为连接跟踪、数据包过滤和网络地址转换提供了底层基础设施。想象一下,你的电脑就像一个忙碌的邮局,负责处理所有的网络请求,这些请求就像是信件。conntrack就像是邮局里的一个记录本,记录着所有的信件(网络连接)的状态,确保它们能被正确地送达。 但是,如果这个记录本(conntrack)的空间满了,即使邮局(你的电脑)里还有很多空余的空间和工作人员(CPU和内存),新的信件(请求)也会被拒绝接收。这就是说,如果conntrack记录的连接数超过了它的最大值,即使电脑的其他部分还很空闲,新的网络请求也会被丢弃。 所以,问题来了:我们需要确保这个记录本有足够的空间,或者找到方法来管理这些记录,以确保所有的网络请求都能被顺利处理。
$