|  |      1lambdaq      2023-12-19 15:03:22 +08:00 这事直接去问 gpt | 
|      2GopherDaily      2023-12-19 15:19:20 +08:00 - iptables 是基于 netfilter 实现的,是对 netfilter 暴露的 hook 的使用 - iptables 的 chain(PREROUTING/INPUT/FORWARD/OUTPUT/POSTROUTING) 对应 netfilter 的五个钩子 - iptables 的 table 对应不同的功能,比如 nat 是改写目的地/来源地,filter 是用来过滤的 - 从结构上来看 table 由 chain 组成,chain 由 rule 组成,rule 由 match 和 target 组成 Link: https://arthurchiao.art/blog/deep-dive-into-iptables-and-netfilter-arch-zh/#3-iptables-%E8%A1%A8%E5%92%8C%E9%93%BEtables-and-chains Link: https://github.com/j2gg0s/j2gg0s/blob/main/_posts/wips-k8s%20network%3A%20kube-proxy%20%E5%92%8C%20flannel.md#iptables-%E5%9B%9E%E9%A1%BE 当然我觉得这事还是需要 google 来结果,基础好的,直接看 wiki 和 manpage , 基础薄的看别人的 blog LLM 大部分都是回答一些看上去对或者不对的内容。 | 
|  |      3mohumohu      2023-12-19 15:20:57 +08:00 这个问题你随便找张 iptables/netfilter 的图就明白了,对于默认 chain 来说,能够适用的 table 不一样。 | 
|  |      4old9      2023-12-19 15:55:18 +08:00 | 
|      5julyclyde      2023-12-19 16:17:43 +08:00 你这个“明明”是错的 所以按这个思路看正确的内容就觉得不对劲了 表-链-规则 | 
|      6WaterWestBolus OP 谢谢诸位 @GopherDaily @old9   大致是明白了 理解下来应该是这样:netfilter 在网络协议栈里埋了 5 个 hook ,每个 hook 都会触发对应的 chain ,但是同一个 chain 可能会存在于多个表里,触发 chain 的时候需要按预定义的顺序从各个表里捞出对应的 rule 去执行 | 
|      7GeruzoniAnsasu      2023-12-19 16:50:35 +08:00  6 | 
|  |      8Panic      2023-12-19 16:59:57 +08:00 enum nf_ip_hook_priorities { NF_IP_PRI_FIRST = INT_MIN, NF_IP_PRI_RAW_BEFORE_DEFRAG = -450, NF_IP_PRI_CONNTRACK_DEFRAG = -400, NF_IP_PRI_RAW = -300, NF_IP_PRI_SELINUX_FIRST = -225, NF_IP_PRI_CONNTRACK = -200, NF_IP_PRI_MANGLE = -150, NF_IP_PRI_NAT_DST = -100, NF_IP_PRI_FILTER = 0, NF_IP_PRI_SECURITY = 50, NF_IP_PRI_NAT_SRC = 100, NF_IP_PRI_SELINUX_LAST = 225, NF_IP_PRI_CONNTRACK_HELPER = 300, NF_IP_PRI_CONNTRACK_CONFIRM = INT_MAX, NF_IP_PRI_LAST = INT_MAX, }; table 的设计确实不好理解, 感觉也并不是太合理, chain 才是关键. | 
|      9leonshaw      2023-12-19 17:03:44 +08:00  1 @WaterWestBolus 一个 chain 只在一个表里,虽然是可以同名的。2023 年了,换 nftables. | 
|  |      10daxy223      2023-12-19 18:43:21 +08:00 via iPhone @GeruzoniAnsasu 这个是真好 我也准备推荐的 | 
|  |      11jasonyang9      2023-12-19 19:37:03 +08:00 同。iptables 每次都要搞一下脑子。nftables 中表的概念弱化了 | 
|      12chenqh      2023-12-19 19:40:41 +08:00 感觉 iptables 真的难学, | 
|  |      13huangmingyou      2023-12-20 09:32:07 +08:00 学 nftables 吧 | 
|      14WaterWestBolus OP @leonshaw 公司还在用 iptables= =积重难返 |