この netfilter ヘッダーを参照してください : http://lxr.free-electrons.com/source/include/uapi/linux/netfilter.h
9 /* Responses from hook functions. */
10 #define NF_DROP 0
11 #define NF_ACCEPT 1
12 #define NF_STOLEN 2
13 #define NF_QUEUE 3
14 #define NF_REPEAT 4
15 #define NF_STOP 5
16 #define NF_MAX_VERDICT NF_STOP
ここで私はこの段落を見つけました:
NF_DROP リターン コードは、このパケットを完全にドロップし、割り当てられたリソースを解放する必要があることを意味します。NF_ACCEPT は、Netfilter に、パケットがまだ受け入れ可能であり、ネットワーク スタックの次の段階に移動する必要があることを伝えます。NF_STOLEN は、Netfilter にパケットを「忘れる」ように指示するため、興味深いものです。これが Netfilter に伝えていることは、フック関数がここからこのパケットの処理を取得し、Netfilter がそのすべての処理をドロップする必要があるということです。ただし、これはパケットのリソースが解放されるという意味ではありません。パケットとそのそれぞれの sk_buff 構造はまだ有効です。フック関数がパケットの所有権を Netfilter から奪っただけです。NF_REPEAT は、Netfilter が再びフック関数を呼び出すことを要求します。
しかし、 toとについてのdiscarding
との違いは何ですか?forgetting
NF_DROP
NF_STOLE