TGTGInsighttelegram intelligenceLIVE / telegram public index
← Welcome to the Black Parade
Welcome to the Black Parade avatar

TGINSIGHT POST

Post #393

@TheB1ackParade

Welcome to the Black Parade

Views190Post view count
PostedAug 3108/31/2023, 05:47 PM
Post content

Post content

快要被 xfrm 折磨死了,也没啥心情好好阐述,总之 linux xfrm 有两个东西 policy 和 state,它有一套比 iptables 还复杂且没文档的规则去匹配 skb。你以为是先匹配一下 policy,如果找不到就扔掉,找得到再去找 state,错了,它甚至在多个网络分层里按照特别的顺序检查匹配,匹配使用的 key 根本没有文档记录且有一套只用于 xfrm 的术语,ingress egress 检查的东西不一样且一个东西在两个方向上有两个语义,拦截下来一个 skb 可能会产生 28 种错误码,内核只告诉你 28 种错误码的统计,而且错误的语义与其内核实现紧耦,文档不误导就不错了。举例来说,XfrmInNoStates 的文档只有一句话 Either inbound SPI, address, or IPsec protocol at SA is wrong,然而实际上也可能是 mark 不匹配。 且没有 bpf hook 点,且是 percpu_ptr,且没有 monitor API,且要在客户云环境上捉虫,且横跨五个版本,热补丁都打不过来。 这个傻逼 xfrm 已经把我组前 TL 逼得压力过大辞去了 TL 的帽子,从其他组租借了两位工程师并开始让其他 TL 一起协助,然而一个季度过去了依然没解决客户的问题,相信所有人心中都充满了感恩。感恩的心,感谢有你,伴我一生,让我有勇气做我自己。 算了,打一会儿游戏,反正解决不了问题迟早被开除。