ROS通过DNAT实现推送PUSH广告、通知等服务
实现:ROS下客户第一次打开网页时重定向到自定义页面,可用于推送广告、PPPOE用户到期提醒等服务。1.在postrouting链添加规则:
add action=add-src-to-address-list address-list=LAN address-list-timeout=5m chain=postrouting dst-port=80 protocol=tcp
#经过postrouting链时添加IP至地址列表
2.在NAT表prerouting链添加DNAT,判断条件为源地址不在LAN列表,DNAT后经过postrouting链会添加IP至LAN列表,再次访问网络正常。
add action=dst-nat chain=dstnat dst-port=80 in-interface=bridge-local protocol=tcp src-address-list=!LAN to-addresses=192.168.1.4 to-ports=80
#DNAT至192.168.1.4:80
ip firewall nat add chain=srcnat action=masquerade dst-address=192.168.1.4
#添加相应SNAT
如果客户端使用PPPOE拨号可用以下脚本判断客户端是否在线,如不在线从LAN列表中将IP移除。
{:local ip/ip firewall address-list
:foreach i in= do={
#遍历LAN列表内IP赋值ip
:set ip
:if ([:len ]=0) do={remove $i}}
#查找相应IP是否在线,不在线则IP位数为0,删除相应IP。
}
沙发价值千金!! 学习了,谢谢 楼主你这种能做成右下角弹窗的形式吗?
页:
[1]