红米AC2100路由器原官方固件关闭IPv6防火墙

news2024/12/27 4:58:10

红米AC2100路由器原官方固件关闭IPv6防火墙

问题背景

我家里宽带开通了IPv6,并且获得了公网的IPv6地址。在同一Wi-Fi内部,可以使用公网IPv6正常访问。

但是,当我切换为手机流量,也就是公网环境,访问就失败了。

问题排查

怀疑是路由器设置了防火墙,但红米2100路由器后台没有关闭IPv6防火墙的地址,于是就有了下面的内容

操作步骤

  1. 升级/降级至官方固件版本: 2.0.23 稳定版。操作入口在路由器常用设置-系统状态-升级检测处。

img

  1. 开启SSH权限。F12打开浏览器的开发者模式,并切换至控制台选项卡,复制以下代码至终端处,并敲回车执行:

    function getSTOK() {
        let match = location.href.match(/;stok=(.*?)\//);
        if (!match) {
            return null;
        }
        return match[1];
    }
    
    function execute(stok, command) {
        command = encodeURIComponent(command);
        let path = `/cgi-bin/luci/;stok=${stok}/api/misystem/set_config_iotdev?bssid=SteelyWing&user_id=SteelyWing&ssid=-h%0A${command}%0A`;
        console.log(path);
        return fetch(new Request(location.origin + path));
    }
    
    function enableSSH() {
        stok = getSTOK();
        if (!stok) {
            console.error('stok not found in URL');
            return;
        }
        console.log(`stok = "${stok}"`);
    
        password = prompt('Input new SSH password');
        if (!password) {
            console.error('You must input password');
            return;
        }
    
        execute(stok, 
    `
    nvram set ssh_en=1
    nvram commit
    sed -i 's/channel=.*/channel=\\"debug\\"/g' /etc/init.d/dropbear
    /etc/init.d/dropbear start
    `
        )
            .then((response) => response.text())
            .then((text) => console.log(text));
        console.log('New SSH password: ' + password);
        execute(stok, `echo -e "${password}\\n${password}" | passwd root`)
            .then((response) => response.text())
            .then((text) => console.log(text));
    }
    
    enableSSH();
    

    此时会弹出一个对话框,要求输入密码,请输入并记住这个密码,敲回车提交。

  2. 使用Putty 或 Xshell 终端连接路由器,MIWIFI默认网关地址为 192.168.31.1,用户名为 root,密码为上一步设定的密码。

img

  1. 使用 Vim 修改防火墙配置文件:

    vim /etc/config/firewall
    
    • 将文件中defaults 闭包下 disable_ipv6 的值改为 0zone 闭包下 forward 的值改为 ACCEPT

      img

    • 在原有的Rule 中添加一个闭包,允许IPv6外网访问路由器下游设备

      img

      config rule                   
              option name 'Allow-IPv6'
              option target 'ACCEPT'  
              option family 'ipv6'    
              list proto 'all'        
              option src '*'          
              option dest '*'         
      

      修改完毕,保存文件并退出修改。

  2. 终端执行命令,重启路由器防火墙:

    1/etc/init.d/firewall restart
    
  3. 进入路由器后台常用设置——上网设置——最底部IPv6设置,打开上方开关,上网方式修改为Native

    img

  4. 使用路由器进行拨号上网,确保拨号成功。

    img

此时,外网即可访问路由器下游设备。

参考文章:https://www.cnblogs.com/wx2020/p/16028098.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2212525.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

苹果最新论文:LLM只是复杂的模式匹配 而不是真正的逻辑推理

大语言模型真的可以推理吗?LLM 都是“参数匹配大师”?苹果研究员质疑 LLM 推理能力,称其“不堪一击”!苹果的研究员 Mehrdad Farajtabar 等人最近发表了一篇论文,对大型语言模型 (LLM) 的推理能…

<<迷雾>> 第11章 全自动加法计算机(5)--顺序取数 示例电路

顺序地从存储器里取数的电路方案. info::操作说明 在开始之前, 地址计数器 AC 需要清零, 以指向地址 0000. 按一下开关 KAR, 将 AC 当前的地址锁存到 AR 地址寄存器. 按住 KRD, 不要松开(注: 系统中使用的是普通开关, 无需按住), 再按一下 KDR, 数据保存到寄存器 DR 中, 最后,…

Mapstruct的使用备忘【代替BeanUtils高效率属性拷贝】

文章目录 Mapstruct的使用备忘【代替BeanUtils高效率属性拷贝】1. 引入mapstruct依赖2. 数据准备2-1 准备一个子类,TestData2-2 准备两个类,SourceData,TargetData,属性完全一样 3. 定义Mapper接口【注:这里的Mapper是…

AIGC毕设项目分享:基于RAG的数字人对话系统及其应用

本研究的主要目标是设计并实现一个基于检索增强生成(RAG)技术的数字人对话系统,旨在提升数字人系统在多轮对话中的上下文管理、情境感知能力以及动态内容生成效果。系统结合了深度学习中的最新大语言模型技术,通过引入RAG框架来增…

概率论基础01_事件概率

目录 一、事件 1、概率 1.1基本事件 1.3必然事件 1.4不可能事件 1.5样本空间 1.6样本点 2、事件间的关系 2.1包含关系 2.2并集 2.3交集 2.4差集 2.5互斥事件 2.6对立事件 2.7完备事件组 3、运算律 3.1交换律 3.2结合律 3.3分配律 3.4对偶律 二、概率 1、…

10.MySql全局参数优化

从上图可以看出SQL及索引的优化效果是最好的,而且成本最低,所以工作中我们要在这块花更多时间。 一、全局参数 配置文件my.ini(windows)或my.cnf(mac)的全局参数: 假设服务器配置为: CPU:32核 内存:64G…

2025推荐选题|基于MVC的农业病虫害防治平台的设计与实现

作者简介:Java领域优质创作者、CSDN博客专家 、CSDN内容合伙人、掘金特邀作者、阿里云博客专家、51CTO特邀作者、多年架构师设计经验、多年校企合作经验,被多个学校常年聘为校外企业导师,指导学生毕业设计并参与学生毕业答辩指导,…

机器视觉AI场景为什么用Python比C++多?

好多开发者在讨论机在机器视觉人工智能领域的时候,纠结到底是用Python还是C,实际上,Python 和 C 都有广泛的应用,选择 Python而不是 C 可能有以下一些原因: 语言易学性和开发效率 语法简洁: Python 语法简…

【部署篇】Redis-01介绍‌

一、Redis介绍‌ 1、什么是Redis? ‌Redis,英文全称是Remote Dictionary Server(远程字典服务),Redis是一个开源的、使用‌ANSI C语言编写的‌Key-Value存储系统,支持网络、可基于内存亦可持久化。‌ 它提…

Android Compose 控件基本属性

本文的代码由上一篇文章的Demo进一步书写完成, 传送门:Android Compose的基本使用-CSDN博客 _____________________________________________________________________________ 以下代码分别列举了控件的: 内边距,外边距,内容居中,渐变自定义边框,宽度权重,string资源引用等…

走进面向对象编程的奇妙世界

在当今的编程领域,面向对象编程(Object - Oriented Programming,简称 OOP)犹如一颗璀璨的明星,照亮了软件开发的道路。 面向对象编程是一种基于对象概念的编程范式。那么,什么是对象呢?对象可以…

Windows系统C盘爆满了,如何清理?

Windows系统C盘爆满了,如何清理? 大家好,我是秋意零。 相信使用过Windows系统的朋友,都见过C盘那道靓丽的 “红色风景线” ! 我自己的Win10系统,已经使用了4-5年时间了。最近频频出现"红色风景线&q…

免费送源码:Java+Springboot+MySQL 水环境检测系统的设计与实现 计算机毕业设计原创定制

摘 要 在我国,水源的污染是不可忽视的问题。对于水质监测进行数据的采集工作,目前主要通过人工实现。因此,部分地区的采集工作,实施起来难度很大,比如恶劣环境和偏僻山区等地。所以,目前对于水质监测的研究,主导方向是建立更加高效完善,智能化的水质监测系统。近几年,无线传感器…

OpenUAV:首个专为现实无人机视觉语言导航设计的大规模轨迹数据集,由大约 12k 个轨迹组成,涵盖了多种环境和复杂的飞行动态。

2024-10-10,由北京航空航天大学人工智能研究所、香港中文大学MMLab以及感知与交互智能中心共同创建了OpenUAV数据集,首个专为现实无人机(UAV)视觉语言导航(VLN)任务设计的大型轨迹数据集,该数据…

java数据库操作-cnblog

创建lib目录,填入jar包 选择 libraries添加lib目录 package nb;import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException;public class JDBCtest {private static final String url "jdbc:mysql://localhost:3306/test?c…

ubuntu下打开摄像头

ubuntu下打开摄像头 在Ubuntu下,你可以使用cheese,这是一个开源的摄像头应用程序。如果你还没有安装它,可以通过以下命令安装: sudo apt-get updatesudo apt-get install cheese 安装完成后,你可以通过命令行启动它: cheese 或者,你也可以使用ffmpeg来打开摄像头并进…

navicate可视化数据库操作-cnblog

1 连接数据库 点击链接,自定义名称,输入root密码 2 准备按照图例创建数据库demo 3 新建数据库

使用 Visual Studio Installer Projects 打包 C# WinForms 程序的教程

前言 在开发完成一个 C# WinForms 程序后,打包成安装程序是发布和分发软件的重要步骤之一。通过使用 Visual Studio Installer Projects, 可以轻松创建一个 .exe 或 .msi 格式的安装包供用户安装。本文将详细介绍如何使用 Visual Studio Installer Proj…

springcloud之基于github webhook动态刷新服务配置

前言 在实际开发中经常会有一个叫做配置中心的服务,这个服务经过变更参数来动态刷新线上业务数据行为配置。比如;行为开关、活动数据、黑白名单、本地/预发/线上环境切换等等,这些配置信息往往需要在我们不重启系统的时候就可以被更新执行。那…

2.1 使用点对点信道的数据链路层

欢迎大家订阅【计算机网络】学习专栏,开启你的计算机网络学习之旅! 文章目录 前言1 通信信道类型2 数据链路3 帧4 透明传输5 差错检测 前言 在计算机网络通信中,数据链路层起着关键作用。它为直接相连的网络设备之间提供可靠的数据传输服务。…