本章主要講如何進行連接標記和包標記,可以用來做隊列Queue調用。
那麼如何進行包標記,我們先理解一下自己的需求。
1.標記DNS連接和包(雙向)
2.標記我們192.168.11.0/24網段的所有連接(雙向)
一、操作流程:
1.標記DNS上傳連接
那麼這時候我們先打開mangle,點擊新建一個規則,chain選擇Prerouting
在動作裏面使用標記連接,連接標記爲DNS_U_conn,並添加備註爲“DNS上傳鏈”
此時我們就完成了對內網向PPPOE撥號發送DNS請求的連接標記了。
2.把DNS上傳連接標記變成包標記
點擊新加,再創建一個規則。Chain選Prerouting
在動作裏面標記爲包標記。標記爲DNS_U_P,並添加備註爲“DNS上傳包”!
完成了上傳包標記後,我們需要去掉繼續匹配passthrough,省CPU資源。
這時候我們就完成了對上傳的DNS連接標記和包標記的操作了。
3.標記DNS下載連接。
新建一條Mangle連接,這次選擇forward
在動作裏面使用標記連接,連接標記爲DNS_D_conn,並添加備註爲“DNS下載鏈”
4.把DNS上傳連接標記變成包標記
新建一個mangle連接,
在動作裏面標記爲包標記。標記爲DNS_D_P,並添加備註爲“DNS下載包”!
二、標記所有的連接
按照上面的操作,建立另外四個mangle規則
上傳連接標記爲ALL_U_conn,保留繼續匹配
上傳包標記爲ALL_U_P,去掉繼續匹配
下載連接標記爲ALL_D_conn,保留繼續匹配
下載包標記爲ALL_D_P,去掉繼續匹配
問題答疑:
1上傳用prerouting,下載用forward,這是爲什麼?
因爲上傳時候需要經過網關NAT,形成映射表。下載時候直接就通過NAT映射表回送數據,走高速路,不需要經過網關!
2.這樣子的話調用QUEUE隊列處理時候豈不是會限制了Ether4的速度?
是的,所以我們可以把Ether4掛到一個Bridge接口上面,就不會限制Ether4的速度了,本例只是爲了做個連接標記和包標記示範。
、