• iptables-save 输出格式详解


    前言格式详解总结

    前言

    我们都知道:iptables是linux系统下用来配置netfilter子系统的一个client tool。

    配套的常用命令有:
    iptables -- 对表、链、规则进行配置
    iptables-save -- dump 已配置的规则,可以用 > 重定向到一个文件中
    iptables-restore -- 从之前导出的iptable规则配置文件加载规则。

    今天主要讲一下iptables-save的输出格式怎么看:
    (网上找了很久没找到相关的介绍,只能自己来了…)

    格式详解

    Controller@localhost # iptables-save -t nat -c

    说明:-t 表示要dump的表(不指定的话dump所有表的配置)。-c 表示输出中显示每条规则当前报文计数。

    # Generated by iptables-save v1.4.21 on Tue Jan 15 15:42:32 2019
    --这是注释
    *nat
    -- 这表示下面这些是nat表中的配置
    :PREROUTING ACCEPT [5129516:445315174]
    -- :PREROUTING ACCEPT,表示nat表中的PREROUTING 链默认报文策略是接受(匹配不到规则继续) ,

    -- [5129516:445315174] 即[packet, bytes],表示当前有5129516个包(445315174字节)经过nat表的PREROUTING 链
    :INPUT ACCEPT [942957:151143842]
    :OUTPUT ACCEPT [23898:3536261]
    :POSTROUTING ACCEPT [23898:3536261]
    -- 解释同上
    :DOCKER - [0:0]
    -- 解释同上(此条是自定义链)
    ---------- 下面开始按条输出所有规则----------
    [4075:366986] -A PREROUTING -m addrtype --dst-type LOCAL -j DOCKER
    -- [4075:366986]即[packet, bytes],表示经过此规则的包数,字节数。 后面部分则是用iptables命令配置此规则的命令(详解选项可参考iptables帮助)。
    [0:0] -A OUTPUT ! -d 127.0.0.0/8 -m addrtype --dst-type LOCAL -j DOCKER
    [0:0] -A POSTROUTING -s 172.17.0.0/16 ! -o docker0 -j MASQUERADE
    [2:188] -A POSTROUTING -s 192.168.122.0/24 -d 224.0.0.0/24 -j RETURN
    [0:0] -A POSTROUTING -s 192.168.122.0/24 -d 255.255.255.255/32 -j RETURN
    [0:0] -A POSTROUTING -s 192.168.122.0/24 ! -d 192.168.122.0/24 -p tcp -j MASQUERADE --to-ports 1024-65535
    [0:0] -A POSTROUTING -s 192.168.122.0/24 ! -d 192.168.122.0/24 -p udp -j MASQUERADE --to-ports 1024-65535
    [0:0] -A POSTROUTING -s 192.168.122.0/24 ! -d 192.168.122.0/24 -j MASQUERADE
    [0:0] -A DOCKER -i docker0 -j RETURN
    --以上规则同第一条规则的解释
    COMMIT
    -- 应用上述配置
    # Completed on Tue Jan 15 15:42:32 2019

    哈哈,是不是很简单:)

    总结

    其实iptables-save输出的是iptable规则的当前配置,是从配置角度输出的(方便由iptable-restore解析并重新配置),(-c参数也可输出包计数信息)

    如果想查看当前规则的状态,用iptables命令则更清晰明了。

    举例:

    Controller@localhost # iptables --table filter --list VXLAN-INPUT --line-numbers -n -v

    Chain VXLAN-INPUT (1 references)
    num pkts bytes target prot opt in out source destination 
    1 0 0 DROP all -- storage_data0 * 0.0.0.0/0 0.0.0.0/0 
    2 0 0 DROP all -- storage_data1 * 0.0.0.0/0 0.0.0.0/0 
    3 0 0 DROP all -- brcps * 0.0.0.0/0 0.0.0.0/0 
    4 0 0 DROP all -- external_api * 0.0.0.0/0 0.0.0.0/0 
    5 0 0 DROP all -- external_om * 0.0.0.0/0 0.0.0.0/0 
    6 0 0 ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0

    -- 这个输出就不用解释了吧,有表头,很清晰!

    iptables --table filter --list VXLAN-INPUT --line-numbers -n -v 命令中参数解释:

    1. --table filter --list VXLAN-INPUT :输出filter 表的VXLAN-INPUT链下的所有规则。
    2. --line-numbers:显示规则号(按号删除规则很方便)。
    3. -v:显示流量统计信息。
  • 相关阅读:
    springboot将接口内容快速生成接口文档导出,swagger将api文档以表格文档导出
    IDEA2019.2或2019.3激活码失效后重新激活教程
    Java代码自动生成,生成前端vue+后端controller、service、dao代码,根据表名自动生成增删改查功能
    百度网盘下载慢解决办法,最新.浏览器下载速度突破方法
    smartGit 版本19.1没有settings文件如何破解
    arp欺骗软件(来自互联网)
    关闭学生端v1.0(附链接)
    [TODO]multiaet/set/multimap/map
    树状数组【洛谷3374】
    luoguP1439
  • 原文地址:https://www.cnblogs.com/sixloop/p/iptables-save-help.html
Copyright © 2020-2023  润新知