本章主要讲如何进行连接标记和包标记,可以用来做队列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的速度了,本例只是为了做个连接标记和包标记示范。
、