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

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

一、添加标记。

1、第一条标记

2、添加第二条标记

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

二、添加计划任务脚本。这个脚本用于删除已经跳转过页面的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

RouterOS首次打开网页强制跳转的更多相关文章

  1. 禁止 PC端打开网页 进行跳转

    try {var urlhash = window.location.hash;if (!urlhash.match("fromapp")){if ((navigator.user ...

  2. Nodejs一键实现微信内打开网页url自动跳转外部浏览器访问的功能

    前言 现如今微信对第三方推广链接的审核是越来越严格了,域名在微信中分享转发经常会被拦截,一旦被拦截用户就只能复制链接手动打开浏览器粘贴才能访问,要不然就是换个域名再推,周而复始.无论是哪一种情况都会面 ...

  3. chrome浏览器打开网页,总是跳转到2345主页的解决方法 2345.com 绑架主页

    昨晚装了一个wifi共享精灵,原本以为这下好了,全宿舍都可以上网了,但是,确实噩梦的开始啊. 遇到问题:不小心在安装wifi共享精灵的时候,点到了设置2345.com为主页,后来,每次使用chrome ...

  4. 开启HSTS让浏览器强制跳转HTTPS访问

    开启HSTS让浏览器强制跳转HTTPS访问 来源 https://www.cnblogs.com/luckcs/articles/6944535.html 在网站全站HTTPS后,如果用户手动敲入网站 ...

  5. http强制跳转到https

    原文地址:http://m.blog.csdn.net/article/details?id=8549290 需求简介 基于nginx搭建了一个https访问的虚拟主机,监听的域名是test.com, ...

  6. 黄聪:如何阻止iframe里引用的网页自动跳转

    今天做了个网页,要在网页里设置一个iframe,然后套用其他的网站.使用http://luanqi-cat.blogbus.com 这个网址的时候,出现了莫名其妙的问题,我的网页居然会强制自动跳转到这 ...

  7. 如何阻止iframe里引用的网页自动跳转

    今天做了个网页,要在网页http://www.58shuwu.com/to/21766654/Legend%20of%20Miyue/ 里设置一个iframe,然后套用其他的网站.使用http://m ...

  8. 解决 winform打开网页 和WebBrowser打开链接360误报拦截的问题

    以下方法我已经在自己电脑上验证通过,其他电脑并未测试,请广大读者自行验证并反馈,如果有更好的方法请指教. 在winform中如果使用这种方法弹出网页,例如这样 Process.start(" ...

  9. 有哪些api接口可以实现微信自动唤醒浏览器,下载app,打开网页

    现在微信渠道可以说是拉新最快的渠道,因为微信具备强裂变性.但是目前微信对第三方下载链接的拦截是越来越严格了,那么想要在微信内肆无忌惮地推广链接就需要用到微信跳转浏览器的接口,那如何获取该接口呢?   ...

随机推荐

  1. windows查看占用端口的进程

    1方法 先找到进程号: netstat -aon|findstr 再根据进程号得到进程: tasklist |findstr " 2结果

  2. shelve模块理解

    import shelve import sys def store_person(db): pid = input("Enter unique ID mnumber:") per ...

  3. 编译安装chkrootkit出现的问题

    tar xf chkrootkit.tar.gz cd chkrootkit-* make sense的时候出现make: *** [strings-static] Error 1,解决办法:yum ...

  4. javascript函数的定义与执行

    要理解javascript函数的定义与执行,首先需要知道这几个重要的概念,现在可以先知道稍后再理解! 函数的执行环境(excution context).活动对象(call object).作用域(s ...

  5. Django笔记-数据库操作(多对多关系)

    1.项目结构 2.关键代码: data6.settings.py INSTALLED_APPS = ( 'django.contrib.admin', 'django.contrib.auth', ' ...

  6. URL中“#” “?” &“”号的作用

    URL中"#" "?" &""号的作用   阅读目录 1. # 2. ? 3. & 回到顶部 1. # 10年9月,twit ...

  7. webuploader横向按钮样式

    #picker{display: inline-block;line-height: 1.428571429;vertical-align: middle;margin: 0 12px 0 0;wid ...

  8. Reachability(判断网络是否连接)

    类似于一个网络状况的探针. [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(reachabili ...

  9. 【转】 使用maven创建web项目

    生成kafka java客户端时,参考的资料!!!文章来源:http://blog.csdn.net/zhshulin/article/details/37921705 目前做的项目使用的是MAVEN ...

  10. CF460C Present (二分 + 差分数列)

    Codeforces Round #262 (Div. 2) C C - Present C. Present time limit per test 2 seconds memory limit p ...