zoukankan      html  css  js  c++  java
  • RouterOS首次打开网页强制跳转

    网上极少有关于RouterOS的第一次打开网页强制跳转主页的方法,大多数都方法是将浏览某个域名的IP地址跳转到自己的主页,这种方法有时会失效。
    还有一种方法就是当用户用80端口连接时,抓取源地址到地址列表,然后指定该地址的timeout时间,在做地址映射来达到强制跳转的目的,但是这种方法也会经常失效,某些即时通软件也会使用TCP 80端口来通讯。
    BUG:循环脚本比较耗CPU,使用此方法时需要注意路由器硬件配置。

    说明:需要添加两条标记mangle、一条DST目标地址规则、还有一个循环脚本。此外要做个网页跳转页面。注意:BUG如果要跳转的地址无效,会让所有网页不能打开。

    一、添加标记。

    clip_image002

    1、第一条标记

    clip_image004

    clip_image006

    clip_image008

    2、添加第二条标记

    clip_image010

    clip_image012

    3、添加dst目标地址跳转规则。

    clip_image014

    clip_image016

    clip_image018

    二、添加计划任务脚本。这个脚本用于删除已经跳转过页面的IP。在/system scheduler 制定一个任务循环执行定时2-4秒 最佳

    :foreach i in=[/ip firewall address-list find list=src1] do={

    :foreach n in=[/ip firewall address-list find list=src2] do={

    :if ([/ip firewall address-list get $i address] = [/ip firewall address-list get $n address]) do={

    /ip firewall address-list remove $i}

    }

    }

    三、网页跳转页面。这个是必须的不然src2不会自动添加IP。将以下代码另存为htm文件放到IIS的默认网站。

    <html>

    <head>

    <meta http-equiv="Content-Language" content="zh-CN">

    <meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=gb2312">

    <title></title>

    </head>

    <SCRIPT LANGUAGE="javascript">

    <!-- Start Code

    var ver = navigator.appVersion;

    if (ver.indexOf("MSIE") != -1)

    {

    window.location.href="要跳转的网站虚拟目录,例如http://10.20.20.1/webmedia"

    }else

    window.location.href="要跳转的网站虚拟目录, 例如http://10.20.20.1/webmedia "

    // End Code -->

    </SCRIPT>

    </html>

    以下是配置文件

    /ip firewall mangle

    add action=add-src-to-address-list address-list=src1 address-list-timeout=0s

    chain=prerouting comment="" disabled=no dst-address=!10.20.20.1 dst-port=

    80 in-interface=!WAN protocol=tcp src-address-list=!src2

    add action=add-src-to-address-list address-list=src2 address-list-timeout=3h

    chain=prerouting comment="" disabled=no dst-address=10.20.20.1 dst-port=

    80 in-interface=!WAN protocol=tcp

    /ip firewall nat

    add action=dst-nat chain=dstnat comment=ToAddress disabled=yes dst-port=80

    protocol=tcp src-address-list=src1 to-addresses=10.20.20.1 to-ports=80

  • 相关阅读:
    改造vant日期选择
    css3元素垂直居中
    npm综合
    (转)网页加水印方法
    Mac下IDEA自带MAVEN插件的全局环境配置
    隐藏注册控件窗口
    High performance optimization and acceleration for randomWalk, deepwalk, node2vec (Python)
    How to add conda env into jupyter notebook installed by pip
    The Power of WordNet and How to Use It in Python
    背单词app测评,2018年
  • 原文地址:https://www.cnblogs.com/h2zZhou/p/4739245.html
Copyright © 2011-2022 走看看