免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12
最近访问板块 发新帖
楼主: contestjia
打印 上一主题 下一主题

[系统管理] iptables 操作nat表的OUTPUT链,这样不行吗? [复制链接]

论坛徽章:
0
11 [报告]
发表于 2015-09-09 15:50 |只看该作者
回复 10# chenyx


    那nat表里的OUTPUT链又能提供什么作用了?

论坛徽章:
1
IT运维版块每日发帖之星
日期:2016-07-14 06:20:00
12 [报告]
发表于 2015-09-09 19:53 |只看该作者
本帖最后由 ken1980 于 2015-09-09 20:04 编辑

注意netfilter的链接跟踪的优先级高于设置的规则,如果是已连接的包,直接用连接跟踪tuple里的信息修改IP地址,而不会到NAT表去查询规则,一条连接的第一个包(即状态为IP_CT_NEW)会查询规则,后续的包就不查询规则了,所以为什么你在B上主动ping的包是DNAT有效的

Linux/Net/Ipv4/Netfilter/nf_nat_standalone.c

case IP_CT_NEW:

                if (!nf_nat_initialized(ct, maniptype)) {
                        unsigned int ret;
                        if (unlikely(nf_ct_is_confirmed(ct)))
                                /* NAT module was loaded late */
                                ret = alloc_null_binding_confirmed(ct, hooknum);
                        else if (hooknum == NF_IP_LOCAL_IN)
                                /* LOCAL_IN hook doesn't have a chain!  */
                                ret = alloc_null_binding(ct, hooknum);
                        else
                                ret = nf_nat_rule_find(skb, hooknum, in, out,
                                                       ct);

论坛徽章:
0
13 [报告]
发表于 2015-09-09 22:23 |只看该作者
回复 12# ken1980


    谢谢,这下明白了
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP