Netfilter Conntrack Sysfs 变量

/proc/sys/net/netfilter/nf_conntrack_* 变量:

nf_conntrack_acct - BOOLEAN
  • 0 - 禁用 (默认)

  • 非 0 - 启用

启用连接跟踪流统计。为每个流添加 64 位字节和数据包计数器。

nf_conntrack_buckets - INTEGER

哈希表的大小。如果在模块加载期间未指定为参数,则默认大小是通过将总内存除以 16384 来确定存储桶的数量来计算的。哈希表永远不会少于 1024 个,也永远不会超过 262144 个存储桶。此 sysctl 仅在初始网络命名空间中可写。

nf_conntrack_checksum - BOOLEAN
  • 0 - 禁用

  • 非 0 - 启用 (默认)

验证传入数据包的校验和。校验和错误的数据包处于 INVALID 状态。如果启用此选项,则不会考虑此类数据包进行连接跟踪。

nf_conntrack_count - INTEGER (只读)

当前分配的流条目的数量。

nf_conntrack_events - BOOLEAN
  • 0 - 禁用

  • 1 - 启用

  • 2 - 自动 (默认)

如果启用此选项,连接跟踪代码将通过 ctnetlink 向用户空间提供连接跟踪事件。默认情况下,如果用户空间程序正在侦听 ctnetlink 事件,则分配扩展。

nf_conntrack_expect_max - INTEGER

期望表的最大大小。默认值为 nf_conntrack_buckets / 256。最小值为 1。

nf_conntrack_frag6_high_thresh - INTEGER

默认 262144

用于重新组装 IPv6 片段的最大内存。当为该目的分配 nf_conntrack_frag6_high_thresh 字节的内存时,片段处理程序将丢弃数据包,直到达到 nf_conntrack_frag6_low_thresh。

nf_conntrack_frag6_low_thresh - INTEGER

默认 196608

请参阅 nf_conntrack_frag6_low_thresh

nf_conntrack_frag6_timeout - INTEGER (秒)

默认 60

将 IPv6 片段保存在内存中的时间。

nf_conntrack_generic_timeout - INTEGER (秒)

默认 600

通用超时的默认值。这指的是第 4 层未知/不支持的协议。

nf_conntrack_icmp_timeout - INTEGER (秒)

默认 30

ICMP 超时的默认值。

nf_conntrack_icmpv6_timeout - INTEGER (秒)

默认 30

ICMP6 超时的默认值。

nf_conntrack_log_invalid - INTEGER
  • 0 - 禁用 (默认)

  • 1 - 记录 ICMP 数据包

  • 6 - 记录 TCP 数据包

  • 17 - 记录 UDP 数据包

  • 33 - 记录 DCCP 数据包

  • 41 - 记录 ICMPv6 数据包

  • 136 - 记录 UDPLITE 数据包

  • 255 - 记录任何协议的数据包

记录由值指定的类型的无效数据包。

nf_conntrack_max - INTEGER

允许的最大连接跟踪条目数。默认情况下,此值设置为 nf_conntrack_buckets。请注意,连接跟踪条目会添加到表中两次 - 一次用于原始方向,一次用于回复方向(即,使用反向地址)。这意味着使用默认设置,最大化的表将具有平均哈希链长度 2,而不是 1。

nf_conntrack_tcp_be_liberal - BOOLEAN
  • 0 - 禁用 (默认)

  • 非 0 - 启用

在你做的事情上保守,在你接受来自他人的事物时自由。如果它非零,我们只将窗口外的 RST 段标记为 INVALID。

nf_conntrack_tcp_ignore_invalid_rst - BOOLEAN
  • 0 - 禁用 (默认)

  • 1 - 启用

如果它是 1,我们不会将窗口外的 RST 段标记为 INVALID。

nf_conntrack_tcp_loose - BOOLEAN
  • 0 - 禁用

  • 非 0 - 启用 (默认)

如果设置为零,我们将禁用拾取已建立的连接。

nf_conntrack_tcp_max_retrans - INTEGER

默认 3

未收到来自目标的可接受 ACK 的情况下,可以重新传输的最大数据包数。如果达到此数字,将启动一个较短的计时器。

nf_conntrack_tcp_timeout_close - INTEGER (秒)

默认 10

nf_conntrack_tcp_timeout_close_wait - INTEGER (秒)

默认 60

nf_conntrack_tcp_timeout_established - INTEGER (秒)

默认 432000 (5 天)

nf_conntrack_tcp_timeout_fin_wait - INTEGER (秒)

默认 120

nf_conntrack_tcp_timeout_last_ack - INTEGER (秒)

默认 30

nf_conntrack_tcp_timeout_max_retrans - INTEGER (秒)

默认 300

nf_conntrack_tcp_timeout_syn_recv - INTEGER (秒)

默认 60

nf_conntrack_tcp_timeout_syn_sent - INTEGER (秒)

默认 120

nf_conntrack_tcp_timeout_time_wait - INTEGER (秒)

默认 120

nf_conntrack_tcp_timeout_unacknowledged - INTEGER (秒)

默认 300

nf_conntrack_timestamp - BOOLEAN
  • 0 - 禁用 (默认)

  • 非 0 - 启用

启用连接跟踪流时间戳。

nf_conntrack_sctp_timeout_closed - INTEGER (秒)

默认 10

nf_conntrack_sctp_timeout_cookie_wait - INTEGER (秒)

默认 3

nf_conntrack_sctp_timeout_cookie_echoed - INTEGER (秒)

默认 3

nf_conntrack_sctp_timeout_established - INTEGER (秒)

默认 210

默认设置为 (hb_interval * path_max_retrans + rto_max)

nf_conntrack_sctp_timeout_shutdown_sent - INTEGER (秒)

默认 3

nf_conntrack_sctp_timeout_shutdown_recd - INTEGER (秒)

默认 3

nf_conntrack_sctp_timeout_shutdown_ack_sent - INTEGER (秒)

默认 3

nf_conntrack_sctp_timeout_heartbeat_sent - INTEGER (秒)

默认 30

此超时用于在辅助路径上设置 conntrack 条目。默认设置为 hb_interval。

nf_conntrack_udp_timeout - INTEGER (秒)

默认 30

nf_conntrack_udp_timeout_stream - INTEGER (秒)

默认 120

如果检测到 UDP 流,将使用此扩展超时。

nf_conntrack_gre_timeout - INTEGER (秒)

默认 30

nf_conntrack_gre_timeout_stream - INTEGER (秒)

默认 180

如果检测到 GRE 流,将使用此扩展超时。

nf_hooks_lwtunnel - BOOLEAN
  • 0 - 禁用 (默认)

  • 非 0 - 启用

如果启用此选项,则启用轻量级隧道 netfilter 钩子。一旦启用此选项,就无法禁用它。

nf_flowtable_tcp_timeout - INTEGER (秒)

默认 30

控制 tcp 连接的卸载超时。 TCP 连接可以从 nf conntrack 卸载到 nf 流表。老化后,连接将返回到 nf conntrack。

nf_flowtable_udp_timeout - INTEGER (秒)

默认 30

控制 udp 连接的卸载超时。 UDP 连接可以从 nf conntrack 卸载到 nf 流表。老化后,连接将返回到 nf conntrack。