iptables指令逻辑详解

使用 Iptables 命令详细图文教程 使用 Iptables 详细图文教程 阅读详情

前言:本文主要讲解iptables的基本概念,工作处理流程,配置指令

 

一、基本概念

iptables用以进行网络防火墙,具体概念由表(table)、链(Chain)、规则构成。一个iptables包含多个表,一个表包含多条链、一条链包含多条规则,每条规则包含一个匹配项和数据包处理动作。iptables包含filter、nat、mangle、raw四张表,其中filter表最常用,链一共有PREROUTING、INPUT、FORWARD、OUTPUT、POSTROUTING五条链(hook,即5个钩子函数),每个链上都有一些规则,一个规则定义了匹配模式和处理动作。具体每张表只能包含特定链,而一条链可以有多种规则,指定匹配模式和处理方式,如果一个数据包无法匹配链上的任何一条规则,则采取默认处理动作。

注:一共有4张表、5条链,但是每张表都只能包含特定的链,每条链可以包含不同的规则。具体关系如下图:

 

二、iptables处理流程

在得知iptables内部的静态结构后,需要进一步了解各个模块间的相互作用,如何实现防火墙,检测、修改、转发、重定向、丢弃数据包的。理解iptable如何工作关键是理解下图:

 

 

整个iptables的封包流向如上图所示:

 封包首先经过nat->PREROUTING,进行路由判断,本包数据是转发还是放行进入本机,是否需要进行网络地址转换。若果需要转发则走filter->FORWARD链,如果放行进本机,走filter->INPUT链。所以网络封包有两条线路:

1)转发线路:

nat-PREROUTING  ------------> filter-FORWARD-------------->nat-POSTROUTING

2)放行路线:

nat-PREROUTING------->filter-INPUT-------->local_process--------->nat-OUTPUT---------->filter-OUTPUT------->nat-POSTROUTING

更详细的流向:

三、iptables配置指令

指令基本模式如下:

iptables [-t table_name] -option [chain_name] [rule_no] [rule] [-j action] 
表示对表tablbe_name
iptables详解 我们知道,防火墙的作用就在于对经过的报文匹配”规则”,然后执行对应的”动作”,所以,当报文经过这些关卡的时候,则必须匹配这个关卡上的规则,但是,这个关卡上可能不止有一条规则,而是有很多条规则,当我们把这些规则串到一个链条上的时候,就形成了”链”,所以,我们把每一个”关卡”想象成如下图中的模样 ,这样来说,把他们称为”链”更为合适,每个经过这个”关卡”的报文,都要将这条”链”上的所有规则匹配一遍,如果有符合条件的规则,则执行规则对应的动作。这是后话,后面再聊,在实际使用时我们即可更加的明白。 阅读详情

相关推荐

iptables详解:链、表、表链关系、规则的基本使用

iptables 是一个用于配置 Linux 内核防火墙规则的工具,它允许系统管理员控制数据包的传输,从而实现网络安全和流量控制。iptables 是一个非常强大和灵活的工具,可以根据网络数据包的来源、目的、协议、端口等多种条件来进行过滤和转发,从而保护网络安全,限制网络访问和提高网络性能。 iptables 主要由三个部分组成:表(table)、链(chain)和规则(rule)。表是用来组织规则的集合,每个表包含一组链,而链则是一系列规则的集合。规则是用来定义数据包的处理方式,可以允许或者拒绝数据包的

qq_68163788的博客 2514

AVL_Cruise_interface\Simulink联合仿真

分享了AVL_Cruise通过interface模块与Simulink进行联合仿真的过程

qq_64735036的博客 2669

RTKLIB PPP与RTK_POST精密定位实战:从实时到事后处理的完整流程解析

本文详细解析了如何使用RTKLIB进行精密单点定位(PPP)的完整流程,涵盖从实时处理到事后处理(RTK_POST)的关键步骤。文章深入探讨了数据准备、软件配置、核心参数设置(如电离层、对流层、潮汐改正)以及常见问题排查,旨在帮助用户掌握高精度GNSS定位技术,实现从入门到精通的实战应用。

weixin_29047919的博客 274

当GO.db安装失败时,生物信息学新手应该知道的5个底层逻辑

本文为生物信息学新手提供了解决GO.db安装失败的5个关键底层逻辑,包括网络连接与镜像源设置、版本兼容性检查、依赖关系管理、SQLite存储机制理解以及调试技巧。特别针对Bioconductor的GO.db包安装问题,详细介绍了如何通过切换国内镜像、管理版本冲突和解决依赖问题来成功安装,帮助用户高效克服常见安装障碍。

weixin_29062823的博客 403

ffmpeg中av_read_frame阻塞的原因与解决方案

最近用到ffmpeg,想要av_read_frame立即返回,但是看网上的博客,都没有详细的解说,那就自己看源码。 两种方法: 设置回调打断函数和设置超时 超时,但是如果只设置该参数,依然会在av_read_frame中阻塞, av_dict_set(&inputDic, "stimeout", "2*1000*1000", 0); // milliseconds //打断回调 m_avformatCtx->interrupt_callback.callback = interru

weixin_43360707的博客 1万+

从实验室到生产线:Qwen3-Omni后训练技术在实际业务中的落地挑战

本文探讨了Qwen3-Omni后训练技术在实际业务中的落地挑战,重点分析了多模态AI在工业应用中的关键问题与解决方案。通过金融风控、跨境电商等场景案例,揭示了通用模型与垂直需求的矛盾,并提供了知识蒸馏、语音合成优化等实战经验,助力企业实现技术到业务的转化。

weixin_29035147的博客 259

多尺度仿真软件:Copasi_(1).Copasi概述

Copasi(Complex Pathway Simulator)是一款开源的多尺度仿真软件,专为生物化学、系统生物学和合成生物学领域的研究人员设计。它不仅能够模拟细胞内和细胞间的生化反应网络,还能处理代谢途径、信号传导途径和基因调控网络等多种复杂系统。Copasi提供了用户友好的图形界面和强大的命令行接口,支持多种仿真算法和分析工具,使用户能够高效地进行模型构建、仿真和分析。Copasi允许用户创建自定义报告,以便生成特定格式的仿真结果。用户可以通过图形界面或命令行创建自定义报告。

kkchenjj的博客 854

实用指南:制作通用的INCA和CANape兼容A2L文件

A2L(ASAM MCD-2 Measurement and Calibration Data)文件是描述ECU(电子控制单元)测量和校准数据的标准文件格式。在标定工作中,A2L文件扮演着极为重要的角色,它定义了测量通道、校准参数等关键信息,为工程师提供了统一的描述方式。INCA和CANape是两种常见的汽车电子系统标定工具,分别由ETAS和Vector公司开发。它们在汽车电子系统的开发和调试过程中发挥着重要作用,提供了丰富的标定功能和用户友好的界面。

一直在水些技术小文 2916

WindowsServer2022蓝牙音频开启方法

为Windowsserver 2022 添加蓝牙音频驱动的方法和工具

thebestismin的专栏 2698

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

上一篇: TCP报文、滑动窗口、拥塞窗口解释
下一篇: XSD(Xml Schema Definiton)简介
felixtao.xz
博客等级 码龄14年 5粉丝 5原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值