zoukankan      html  css  js  c++  java
  • iptables 初见 第一章

    官网:https://www.netfilter.org/

    简单来来说 ,netfilter 是一个工作在内核空间的数据包过滤系统,iptables 是一个工作在用户控件。调用netfilter 的规则管理工具。

    一 、什么是netfilter?

    netfilter.org是Linux 2.4.x及更高版本内核系列中包过滤框架软件的所在地通常与netfilter.org相关的软件是iptables

    该框架内的软件支持包过滤,网络地址[和端口]转换(NA [P] T)和其他数据包重整。它是以前的Linux 2.2.x ipchains和Linux 2.0.x ipfwadm系统的重新设计和大幅改进的后继者

    netfilter是Linux内核中的一组钩子,允许内核模块向网络堆栈注册回调函数。然后,对于遍历网络堆栈内的相应挂钩的每个数据包,回调注册的回调函数。

    iptables是规则集定义的通用表结构。IP表中的每个规则都包含许多分类器(iptables匹配)和一个连接动作(iptables目标)。

    netfilter,ip_tables,连接跟踪(ip_conntrack,nf_conntrack)和NAT子系统共同构建了框架的主要部分。

    主要特点

    • 无状态数据包过滤(IPv4和IPv6)
    • 状态包过滤(IPv4和IPv6)
    • 各种网络地址和端口转换,例如NAT / NAPT(IPv4和IPv6)
    • 灵活且可扩展的基础架构
    • 用于第三方扩展的多层API

    我可以用netfilter / iptables做什么?

    • 构建基于无状态和状态包过滤的互联网防火墙
    • 部署高可用的无状态和状态防火墙集群
    • 如果您没有足够的公共IP地址,请使用NAT和伪装来共享Internet访问
    • 使用NAT实现透明代理
    • 帮助用于构建复杂的QoS和策略路由器的tc和iproute2系统
    • 进行进一步的数据包操作(修改),例如改变IP报头的TOS / DSCP / ECN位

     

    二 、什么是iptables

    iptables是用户空间命令行程序,用于配置Linux 2.4.x及更高版本的包过滤规则集。是一个工作管理工具,它面向系统管理员。

    由于网络地址转换也是从数据包过滤规则集配置的,因此 也使用iptables

    iptables的包装还包括 ip6tables。 ip6tables用于配置IPv6数据包过滤器。

    依赖

    iptables需要一个具有ip_tables数据包过滤器的内核。这包括所有2.4.x及更高版本的内核版本。

    主要特点

    • 列出数据包过滤规则集的内容
    • 在数据包过滤规则集中添加/删除/修改规则
    • 列表/归零数据包过滤规则集的每个规则计数器

    具体调用过程如下: 

  • 相关阅读:
    2020年. NET Core面试题
    java Context namespace element 'component-scan' and its parser class ComponentScanBeanDefinitionParser are only available on JDK 1.5 and higher 解决方法
    vue 淡入淡出组件
    java http的get、post、post json参数的方法
    vue 父子组件通讯案例
    Vue 生产环境解决跨域问题
    npm run ERR! code ELIFECYCLE
    Android Studio 生成apk 出现 :error_prone_annotations.jar (com.google.errorprone:error) 错误
    记忆解析者芜青【总集】
    LwIP应用开发笔记之十:LwIP带操作系统基本移植
  • 原文地址:https://www.cnblogs.com/zy09/p/10384051.html
Copyright © 2011-2022 走看看