四表
- 4個表有:filter、nat、mangle、raw、默認表是filter(沒有指定表的時候就是filter表)。
表的處理優先級:raw>mangle>nat>filter。
filter:一般的過濾功能
nat:用於nat功能(端口映射,地址映射等)
mangle:用於對特定數據包的修改
raw:有限級最高,設置raw時一般是爲了不再讓iptables做數據包的鏈接跟蹤處理,提高性能。
- RAW表只使用在PREROUTING鏈和OUTPUT鏈上、因爲優先級最高,從而可以對收到的數據包在連接跟蹤前進行處理。
- 一但用戶使用了RAW表、在某個鏈上、RAW表處理完後、將跳過NAT表和
ip_conntrack處理,即不再做地址轉換和數據包的鏈接跟蹤處理了。 - RAW表可以應用在那些不需要做nat的情況下,以提高性能。如大量訪問的web服務器,可以讓80端口不再讓iptables做數據包的鏈接跟蹤處理,以提高用戶的訪問速度。
五鏈
- 5個鏈:PREROUTING,INPUT,FORWARD,OUTPUT,POSTROUTING。
PREROUTING:數據包進入路由表之前
INPUT:通過路由表後目的地爲本機
FORWARD:通過路由表後,目的地不爲本機
OUTPUT:由本機產生,向外轉發
POSTROUTIONG:發送到網卡接口之前。
如下圖:
iptables中表和鏈的對應關係如下: