taolu-soft
taolu-soft
> 试试我改的 https://github.com/llccd/netfilter-full-cone-nat/tree/dev ,原理是把`nat_mapping`里面的`ifindex`改成出接口IP,同时合并@tingjunli的patch,这样出接口改变或出接口IP改变就应该都没问题了。 > Update: 在`fullconenat_tg_init`里面调用一下`nf_nat_masquerade_inet_register_notifiers`好像就行了 不能,直接炸了
> @llccd 是的,因为我的测试环境内核很老了,我在浏览 MASQUERADE 模块的源码时还没有这个公共函数,所以就把 MASQUERADE 中的部分代码做了一下版本兼容直接复制过来用了。这个只是临时的用于测试的补丁,尽可能保持简单,除了 notifier 没有修改别的东西,用来供各位测试是否解决了这个issue的。如果这个能够解决,之后会参考你的方法将更优雅的 fix 并入本仓库中。 > > 我指的不依赖 MASQUERADE 模块指的是不需要在运行时加载 MASQUERADE 模块。 /root/netfilter-full-cone-nat/xt_FULLCONENAT.c: 在函数‘fullconenat_device_event’中: /root/netfilter-full-cone-nat/xt_FULLCONENAT.c:743:15: 错误:提供给函数‘nf_ct_iterate_cleanup’的实参太少 (void *)(long)dev->ifindex);
> @taolu-soft patch 更新修复了,请重新编译试一下。 **还是这样,内核版本:3.10.0-957.10.1.vz7.85.17** /root/netfilter-full-cone-nat/xt_FULLCONENAT.c: 在函数‘fullconenat_device_event’中: /root/netfilter-full-cone-nat/xt_FULLCONENAT.c:746:15: 错误:提供给函数‘nf_ct_iterate_cleanup’的实参太少 (void *)(long)dev->ifindex);