您好,登錄后才能下訂單哦!
/位于 /sbin/iptables
四表五鏈
四表 filter. nat. mangle. raw
五鏈 INPUT. FORWARD. OUTPUT. PREROUTING. POSTROUTING
表的處理優先級 raw >mangle >nat >filter
filter:執行所有的過濾動作
nat:(端口映射,地址轉換),所有網絡地址轉換都在nat上執行
mangle:用于數據包的修改
raw:加快封包穿越防火墻的速度,可提高防火墻性能
五個鏈的作用
INPUT: 處理入站數據包,通過路由表后目的地為本機
OUTPUT:由本級產生,向外轉發
FORWARD:通過路由表后,目的地不為本機
PREROUTING:數據包進入路由表之前
POSTROUTING:在進行路由選擇前處理數據包,數據包進入路由表之前
規則鏈之間的匹配順序
入站數據:PREROUTING >INPUT
出站數據:OUTPUT >POSTROUTING
轉發數據:PREROOUTING >FORWARD >POSTROUTING
1.當數據包的目標地址是本機時
(1)數據包進入網絡接口
(2)進入NAT表的prerouting鏈,根據需要做DNAT
(3)進入mangle表的prerouting鏈,在這里根據需要改變數據包頭內容(比如TTL值)
(4)進入路由判斷,(進入本地還是轉發)
(5)進入mangle表的INPUT鏈,在路由之后到達本地程序之前修改數據包頭內容
(6)進入filter表的INPUT鏈,所有目標地址是本機的數據包都會經過這里
(7)到達本機應用程序處理
2.當數據包的源地址是本機時、
(1)本機應用程序產生數據包
(2)路由判斷
(3)進入mangle表的OUTPUT鏈,在這里可以根據需要改變包頭內容
(4)進入nat表的OUTPUT鏈,根據需要對防火墻產產生的數據作DNAT
(5)進入filter表的OUTPUT鏈,在這里可以對數據包的過濾條件進行設置
(6)進入mangle表的PREROUTING鏈,這里主要做DNAT動作
(7)進入NAT表的PREROUTING鏈,這里主要做DNAT動作
(8)離開本機
3.經由本機轉發的數據包 (源、目標地址都不是本機)
(1)數據包進入網絡接口
(2)mangle表的PREROUTING鏈,在這里可以根據需要改變數據包內容(TTL值)
(3)nat表中FORWARD鏈,可根據需要對數據包做DNAT
(4)mangle表的FORWARD鏈,在這里數據包頭內容被修改
(5)filter表的FORWARD鏈,需要轉發的數據包會到這里
(6)mangle表的PREROUTING鏈
(7)nat表的POSTROUTING鏈,在這里根據需要對數據包做SNAT
(8)離開網絡接口
Iptables表和鏈的動作
filter表主要用于過濾數據包,對數據包進行(ACCEPT DROP REJECT LOG RETURN)
filter表包含:
INPUT鏈,過濾所有目標地址是本機的數據包
FORWARD鏈,過濾由本機轉發的數據包
OUTPUT鏈,過濾有本機產生的數據包
NAT表主要用于網絡地址轉換
(1)DNAT,主要用于改變數據包目的地址,使包能重新路由到某臺主機
(2)SNAT,改變數據包的源地址,將源地址轉換成公網地址
NAT表包含三條鏈
(1)PREROUTING鏈,在數據包到達防火墻的時候改變目標地址
(2)OUTPUT鏈,可以改變數據包的目的地址
(3)POSTROUTING,在數據包離開防火墻時改變數據包源地址
MANGLE表
mangle表主要用于修改數據包,通過mangle表可以改變(TTL)等
mangle表主要包含5條鏈
(1)PREROUTING、 (2)POSTROUTING、 (3)OUTPUT、 (4)INPUT、 (5)FORWARD、
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。