在vtun配置的mangle鏈中有一條規則
-A AS0_MANGLE_TUN -j MARK --set-xmark 0x2000000/0xffffffff
下面分析mark何意。
mark值有何意義
mark字段的值是一個無符號的整數,在32位系統上最大可以是4294967296(就是2的32次方),這足夠用的了。比如,我們對一個流或從某臺機子發出的所有的包設置了mark值,就可以利用高級路由功能來對它們進行流量控制等操作了。
mark值不是包本身的一部分, 而是在包穿越計算機的過程中由內核分配的 和它相關聯的一個字段 。它可能被用來改變包的傳輸路徑或過濾。mark值只在本機有意義!
在本機給包設置關聯的mark值后,可通過該值對包后續的傳輸進行控制(排隊,流量控制等)。
如何設置mark
在 http://hi.baidu.com/zmhabc/item/04112b2f68f90c99b6326369 這篇文章中對mark的介紹比較詳細。
例子:
iptables -t mangle -A PREROUTING -p tcp --dport 22 -j MARK --set-mark 2 ?
如何匹配mark
iptables -t mangle -A INPUT -m mark --mark 1
-m 即match匹配的意思。
mark的格式是 --mark value[/mask] ,如上面的例子是沒有掩碼的,帶掩碼的例子如 --mark 1/1 。如果指定了掩碼,就先把mark值和掩碼取邏輯與,然后再和包的mark值比較。
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
