zoukankan      html  css  js  c++  java
  • Linux Kernel Packet Traveling

                               Network
                        -----------+-----------
                                   |
                      +--------------------------+
              +-------+-------+        +---------+---------+
              |    IPCHAINS   |        |      IPTABLES     |
              |     INPUT     |        |     PREROUTING    |
              +-------+-------+        | +-------+-------+ |
                      |                | |   conntrack   | |
                      |                | +-------+-------+ |
                      |                | |    mangle     | | <- MARK WRITE  
                      |                | +-------+-------+ |
                      |                | |      IMQ      | |
                      |                | +-------+-------+ |
                      |                | |      nat      | | <- DEST REWRITE
                      |                | +-------+-------+ |     DNAT or REDIRECT or DE-MASQUERADE
                      |                +---------+---------+
                      +------------+-------------+
                                   |
                           +-------+-------+
                           |      QOS      |
                           |    INGRESS    |
                           +-------+-------+
                                   |
             packet is for +-------+-------+ packet is for
              this machine |     INPUT     | another address
            +--------------+    ROUTING    +--------------+
            |              |    + PDBB     |              |
            |              +---------------+              |
    +-------+-------+                                     |
    |   IPTABLES    |                                     |
    |     INPUT     |                                     |
    | +-----+-----+ |                                     |
    | |   mangle  | |                                     |
    | +-----+-----+ |                                     |
    | |   filter  | |                                     |
    | +-----+-----+ |                                     |
    +-------+-------+                                     |
            |                               +---------------------------+
    +-------+-------+                       |                           |
    |     Local     |               +-------+-------+           +-------+-------+
    |    Process    |               |    IPCHAINS   |           |    IPTABLES   |
    +-------+-------+               |    FORWARD    |           |    FORWARD    |
            |                       +-------+-------+           | +-----+-----+ |
    +-------+-------+                       |                   | |  mangle   | | <- MARK WRITE
    |    OUTPUT     |                       |                   | +-----+-----+ |
    |    ROUTING    |                       |                   | |  filter   | |
    +-------+-------+                       |                   | +-----+-----+ |
            |                               |                   +-------+-------+
    +-------+-------+                       |                           |
    |    IPTABLES   |                       +---------------------------+
    |     OUTPUT    |                                     |
    | +-----------+ |                                     |
    | | conntrack | |                                     |
    | +-----+-----+ |                                     |
    | |   mangle  | | <- MARK WRITE                       |
    | +-----+-----+ |                                     |
    | |    nat    | | <-DEST REWRITE                      |
    | +-----+-----+ |     DNAT or REDIRECT                |
    | |   filter  | |                                     |
    | +-----+-----+ |                                     |
    +-------+-------+                                     |
            |                                             |
            +----------------------+----------------------+
                                   |
                      +------------+------------+
                      |                         |
              +-------+-------+       +---------+---------+
              |    IPCHAINS   |       |      IPTABLES     |
              |     OUTPUT    |       |    POSTROUTING    |
              +-------+-------        | +-------+-------+ |
                      |               | |    mangle     | | <- MARK WRITE  
                      |               | +-------+-------+ |
                      |               | |      nat      | | <- SOURCE REWRITE
                      |               | +-------+-------+ |      SNAT or MASQUERADE
                      |               | |      IMQ      | |
                      |               | +-------+-------+ |
                      |               +---------+---------+
                      +------------+------------+
                                   |
                            +------+------+
                            |     QOS     |
                            |    EGRESS   |
                            +------+------+
                                   |
                        -----------+-----------
                                Network
  • 相关阅读:
    人员安排问题--搜索算法的剪支方法应用
    深度优先搜索与广度有限搜索的比较
    任务调度问题-使用拟阵进行解决
    无向图的最小生成森林的拟阵解法
    拟阵的最优子集问题的贪心算法
    中国大学MOOC —— 学习笔记(三)
    中国大学MOOC —— 学习笔记(二)
    中国大学MOOC —— 学习笔记(一)
    Python DayDayUp —— 小项目实现(二)
    Python DayDayUp —— shelve模块
  • 原文地址:https://www.cnblogs.com/sixloop/p/linux_packet_travel.html
Copyright © 2011-2022 走看看