may/10/2011 15:14:55 by RouterOS 3.22
前提:局域网用户已经可以通过路由器的NAT访问互联网。
最终效果:用户每天第一次访问网页时
会自动进入
http://news.ai800.com/test.html3秒后用户数据恢复原有流程不再经过透明代理,不影响原有流量控制。
缺陷:个别电脑不能弹出,主要原因是有的网络软件(如某款播放器和杀毒软件)
有时也向80端口发送数据,当这个网络软件先向80端口发送数据,过了弹出时间段(3s)
后面即使再访问网页也不能弹出公告栏。
#配置开始
#当检测到用户访问网页后,把用户加入两个地址池,一个保存3s,一个保存1d。如果发现已经加入1d地址列表,则不再加入3s地址列表。
/ip firewall mangle
add action=add-src-to-address-list address-list=src1 address-list-timeout=3s chain=prerouting comment="" disabled=no dst-port=80 protocol=tcp \
src-address=192.168.1.1-192.168.1.253 src-address-list=!src2
add action=add-src-to-address-list address-list=src2 address-list-timeout=1d chain=prerouting comment="" disabled=no port=80 protocol=tcp \
src-address=192.168.1.1-192.168.1.253
/ip proxy
set always-from-cache=no cache-administrator=webmaster cache-hit-dscp=4 cache-on-disk=no enabled=yes max-cache-size=unlimited \
max-client-connections=600 max-fresh-time=3d max-server-connections=600 parent-proxy=0.0.0.0 parent-proxy-port=0 port=8080 \
serialize-connections=no src-address=0.0.0.0
#如果用户被加入3s地址列表,则此用户数据进入透明代理端口。
/ip firewall nat
add action=redirect chain=dstnat comment="" disabled=no dst-port=80 protocol=tcp src-address-list=src1 to-ports=8080
/ip proxy access
add action=deny comment="" disabled=no dst-host=!*ai800* redirect-to=http://news.ai800.com/test.html
#配置结束
复制代码补充说明:
1.最后一句命令中加了 dst-host=!*ai800* 是避免页面跳转一次后再次跳转。如果不加可能正常也可能不正常,所以推荐加上dst-host=!*ai800*,请酌情修改。