简单理解iptables

在配置iptables的时候需要先选表再匹配链
所有的规则都记录在raw、mangle、nat、filter这四张表中
处理的优先级raw>mangle>nat>filter

功能
mangle拆解报文做出修改,重新封装
nat网络地址转换功能
filter过滤功能,防火墙
raw可在数据包连接跟踪前进行处理

选择表filter并查看规则

1
iptables -t filter -L

其它表同理,实际使用中默认查看的是filter表,因此查看filter表的规则也可以简写为

1
iptables -L

命令其它可选参数,-v更详细的规则信息,-n不解析地址

简单的说“链”就是对一些特定行为的数据包采用的规则集合

匹配的报文能使用的表
INPUT需要发到本机上层数据包mangle、nat*、filter
OUTPUT从本机上层发出的数据包raw、mangle、nat、filter
FORWARD非本机需要转发的数据包mangle、filter
PREROUTING进入网卡还未路由的数据包raw、mangle、nat
POSTROUTING即将出网卡的数据包mangle、nat

某些系统规定nat表中的规则不能用于INPUT链

常用参数
| 参数 | 用途 |
| — | — |
| -L | 查看规则 |
| -P | 设置默认策略 |
| -I | 插入规则(默认在第一条) |
| -A | 添加一条规则在链尾 |
| -R | 替换某条规则 |
| -D | 删除某条规则 |
| -F | 删除所有规则 |
| -Z | 计数器清零 |
| -X | 删除自定义链 |

匹配

基本匹配规则
| 参数 | 内容 |
| — | — |
| -s | 匹配来源IP地址,“!”表示除外 |
| -d | 匹配目标IP地址 |
| -i | 匹配流入该网卡的数据包 |
| -o | 匹配从该网卡流出的数据包 |
| -p | 匹配协议,如tcp,udp,icmp |

动作

参数动作
ACCEPT接受
REJECT拒绝
DROP丢弃数据包
RETURN数据包不继续执行该链后面的命令
REDIRECT转发(仅用于nat表)
感谢您的阅读,本文由 NewHanly 版权所有。如若转载,请注明出处:NewHanly(http://newhanly.com/2020/04/21/iptables/
安装UEFI启动的ArchLinux
Clash旁路网关设置