当前位置: 首页 > news >正文

华为CT6100双千M路由记录

该文章仅仅记录使用CT6100的流程,不提供任何参考和建议。

一、简介

  1. 设备:华为CT6100瘦客服端,J1800cpu,不包含外壳,有双千M网口,2G内存+8G硬盘。
  2. 系统:esir的高大全openwrt版本
  3. 用途:对lan设备进行学习上网和广告拦截,跑一些docker应用,以及尽可能低功耗(6W,一点也不低)

二、系统安装

1. 设备连接

问题:收到就发现不对劲了,上面没有HDMI接口。
解决:幸好的是,具有24P+5P的DVI接口,购买后接上即可成功显示。

2. BIOS设置

问题:最开始的时候,由于跳不进去系统,进行了默认配置操作,结果开机进入boot menu跳不出来
在这里插入图片描述
解决:在BOOT CSM设置中,将BOOT NC设置成Disable,其他看情况设置。
在这里插入图片描述

3. 系统烧录

问题:由于openwrt是IMG文件,只能烧录到U盘中,但是想要转移到系统硬盘中。
解决:使用dd命令,参考博客:openwrt如何写入硬盘,具体步骤如下:

  1. 首先U盘烧录一个系统,比如ubuntu或者直接openwrt,我这直接用的是openwrt高大全
  2. 扩容op:由于op内存不够,上传不了待烧录的img设备,需要先扩容。方法就是磁盘管理->修改->挂载点到/overlay
  3. 上传到op:使用文件管理,将文件上传到/opt或者/overlay文件夹中
  4. 格式化硬盘:烧录前需要对硬盘进行格式化,使用命令行cfdisk,对sda硬盘进行删除。
  5. 烧录op:使用dd命令:dd if=/overlay/openwrt.img of=/dev/sda
  6. 启动系统:拔掉U盘重启,或者在BIOS中设置启动为HDD
  7. 端口:默认外面ETH1接wan,里面ETH0接lan

4. 系统扩容

问题:由于OP的默认容量不够,剩余6G硬盘没有用上,需要进行扩容,包括两方面:/overlay和/opt。其中/overlay是软件包的占用空间,建议至少分配到1.6G,然后/opt是docker的空间,将剩余空间全部分配。
注意:以上系统结构是基于ESIR的固件进行配置的,其他OP可能不是同一个类型的空间分配。更多了解ESIR的扩容,可以看油罐的EISR专栏,里面介绍了为啥是/overlay和/opt,以及他们的作用。
解决:具体步骤如下:

  1. 剩余磁盘分区并格式:磁盘管理中,对磁盘进行修改,将剩余空间进行分区,分别1.6和5.2G,并格式化为EXT4。
    在这里插入图片描述
  2. 重启:强烈建议重启,多个步骤可能一下子完成不了导致各种问题。
  3. 挂载磁盘:在挂载点进行磁盘挂载,分别挂载/overlay和/opt。挂载一个重启一次,防止失败。
    在这里插入图片描述
  4. 查看软件包和docker中的空间,应该分别为1G和4.8G,这是由于初始化文件已经占用了一部分了。
  5. 同样方法可以挂载其他硬盘或者U盘。

5. DNS服务

问题:前面提高共有两个需求,分别为学习上网和广告拦截,使用的分别是Adguard home和OPC,如果让他们共同处理呢?
解决:使用的网络逻辑为:客户端->dnsmsq->Adguard->OPC,据说是比较好的结构,然后DHCP还是由OP实现。具体方法如下:

  1. 启动Adguard,设置为54端口(因为dnsmsq是53已经占用了),并作为dnsmsq的上有服务器,设置如下:
    在这里插入图片描述
  2. Adguard上游 DNS 服务器和Bootstrap DNS 服务器设置为:127.0.0.1:7874,表示数据会进入OPC。如果不走OPC,则分别使用以下DNS:
    223.5.5.5 114.114.114.114 8.8.8.8 8.8.4.4 101.226.4.6 tls://dot.360.cn https://doh.360.cn/dns-query https://dns.alidns.com/dns-query tls://dns.alidns.com tls://dns.google
    61.139.2.69 211.137.96.205 8.8.8.8 8.8.4.4
  3. Adguard DNS黑名单设置:推荐以下:
    https://easylist-downloads.adblockplus.org/easylistchina.txt
    https://easylist-downloads.adblockplus.org/easyprivacy.txt
    https://raw.githubusercontent.com/cjx82630/cjxlist/master/cjx-annoyance.txt
    https://www.i-dont-care-about-cookies.eu/abp/
  4. OP DNS设置:设置DNS转发为:127.0.0.1#54,表明dnsmsq的上游是Adguard
    在这里插入图片描述
  5. OPC设置:启动OPC,在DNS中设置本地 DNS 劫持为停用。
  6. 综上,设置完毕

三、系统优化

1. 上电自动开机

待解决

2. 外壳设计

打算便宜到底,使用3D打印

3. 功耗优化

看能不能通过设置CPU频率,降低工号

4. 散热设置

加一个小小的散热风扇

5. docker应用

看看这个2G+8G能跑个啥docker应用来

6. 最后卖掉

如果真的是6W功率,还不如用ALL in Boom好,一个N5105的才9W功耗,还能跑NAS等

相关文章:

华为CT6100双千M路由记录

该文章仅仅记录使用CT6100的流程,不提供任何参考和建议。 一、简介 设备:华为CT6100瘦客服端,J1800cpu,不包含外壳,有双千M网口,2G内存8G硬盘。系统:esir的高大全openwrt版本用途:对…...

【AcWing-Python-785】快速排序

题目:https://www.acwing.com/problem/content/description/787/对应视频讲解:https://www.acwing.com/video/227/题目描述注意本题数据已加强。快速排序过程中,如果每次取区间起点或者终点作为分界点,则会超时。分界点换成随机值…...

从 JDK 8 到 JDK 18,Java 垃圾回收的十次进化

经历了数千次改进,Java 的垃圾回收在吞吐量、延迟和内存大小方面有了巨大的进步。 2014 年3 月 JDK 8 发布,自那以来 JDK 又连续发布了许多版本,直到今日的 JDK 18 是 Java 的第十个版本。借此机会,我们来回顾一下 HotSpot JVM 的…...

虚拟机VMware Workstation Pro环境搭建

VMware Workstation Pro是一款虚拟化工具,允许用户在Windows PC上运行多个操作系统。这个平台提供一个安全和独立的环境,让用户在使用前,可以建立和测试应用程序、检查修补程序,以及尝试不同的操作系统。它附有虚拟机库 它允许用户…...

【华为OD机试模拟题】用 C++ 实现 - 敏感字段加密(2023.Q1)

最近更新的博客 华为OD机试 - 入栈出栈(C++) | 附带编码思路 【2023】 华为OD机试 - 箱子之形摆放(C++) | 附带编码思路 【2023】 华为OD机试 - 简易内存池 2(C++) | 附带编码思路 【2023】 华为OD机试 - 第 N 个排列(C++) | 附带编码思路 【2023】 华为OD机试 - 考古…...

关于Java方法重写的一些反思

最近在开发中遇到一个关于Java方法重写的一些问题,对于方法重写的用法以及可能导致的问题产生了一些思考,本文用于记录下这些想法。 问题场景 我们首先来看两段代码: Override protected void onActivityResult(int requestCode, int resu…...

【C语言进阶】文件的顺序读写、随机读写、文本文件和二进制文件、文件读取结束的判定以及文件缓冲区相关知识

​ ​📝个人主页:Sherry的成长之路 🏠学习社区:Sherry的成长之路(个人社区) 📖专栏链接:C语言进阶 🎯长路漫漫浩浩,万事皆有期待 文章目录1.文件操作1.1 概述…...

图形编辑器:拖拽阻塞优化

大家好,我是前端西瓜哥。在图形编辑器中,想象这么一个场景,我们撤销了一些重要的操作,然后想选中一个图形,看看它的属性。你点了上去,然后你发现你再也无法重做了。 你以为你点了一下,但其实你…...

c++ 的 Eigen库写 AX=XB的矩阵求解代码

1.AXXB的矩阵求解代码(3*3) #include <iostream> #include <Eigen/Dense>int main() {// 定义矩阵A和BEigen::MatrixXd A(3, 3);A << 1, 2, 3,4, 5, 6,7, 8, 9;Eigen::MatrixXd B(3, 3);B << 10, 11, 12,13, 14, 15,16, 17, 18;// 求解AXXBEigen::Mat…...

正点原子linux驱动篇

linux驱动开发与裸机开发的区别 裸机直接操作寄存器&#xff0c;有些mcu提供了库&#xff0c;但还是很底层 1、linux驱动开发直接操作寄存器很麻烦不现实&#xff0c;主要是根据linux驱动框架进行开发&#xff08;就是有很多操作都是一样的&#xff0c;我们只需要对一个程序模…...

MATLAB绘制雷达图/蜘蛛图

雷达图/蜘蛛图 1 方法一 函数来源为MATLAB | 如何使用MATLAB绘制雷达图(蜘蛛图) 1.1 调用函数 1.2 案例 2 方法二 函数来源为MATLAB帮助-spider_plot 2.1 调用函数 语法&#xff08;Syntax&#xff09;&#xff1a; spider_plot(P)spider_plot(P, Name, Value, ...)h …...

算法入门,十字路口选择的案例,如果是南方,则向前行

从if判断start; 十字路口的案例 class HelloWorld { static void Main(string[] args) { /* Write C# code in this online editor and run it. */ Console.WriteLine("Hello World!"); string f…...

父传子与子传父步骤

父传子&#xff1a; 问题&#xff1a;父页面中引入子组件 把想要传给子页面的值用在子组件中用 &#xff1a;值“值” (用同一个值好区分)来绑定。 在子页面中用props接收 子组件不能改变父组件传过来的值。&#xff08;传多个页面的时候是&#xff0c;比如父传孙的时候我会…...

Java concurrency - Task Execution

1.在单个线程里处理所有的请求&#xff1a;接受请求-处理请求 优点&#xff1a;逻辑简单 缺点&#xff1a;吞吐量低&#xff0c;资源利用率低&#xff0c;响应时间长 2.每个任务分配一个单独的线程来处理&#xff1a; 接受请求-创建线程-在线程里处理请求 优点&#xff1a; …...

浅谈BOM

什么是BOM BOM对于每个前端都不陌生&#xff0c;但是很多人都停留在表面&#xff0c;而没有深层次的研究过它。JavaScript有一个非常重要的运行环境就是浏览器&#xff0c;而且浏览器本身又作为一个应用程序需要对其本身进行操作&#xff0c;所以通常浏览器会有对应的对象模型…...

每日学术速递2.24

CV - 计算机视觉 | ML - 机器学习 | RL - 强化学习 | NLP 自然语言处理 Subjects: cs.LG 1.BUAA_BIGSCity: Spatial-Temporal Graph Neural Network for Wind Power Forecasting in Baidu KDD CUP 2022 标题&#xff1a;BUAA_BIGSCity&#xff1a;百度KDD CUP 2022风电预测…...

SpringBoot 面试问答总结(VIP典藏版)

1. 什么是 Spring Boot&#xff1f; Spring Boot 是 Spring 开源组织下的子项目&#xff0c;是 Spring 组件一站式解决方案&#xff0c;主要是简化了使用Spring 的难度&#xff0c; 简省了繁重的配置&#xff0c;提供了各种启动器&#xff0c;使开发者能快速上手。 2. 为什…...

CSS 定位网页元素【快速掌握知识点】

目录 前言 一、position: static 二、position: relative 三、position: absolute 四、position: fixed 五、position: sticky 前言 当我们在设计网页时&#xff0c;经常需要对网页中的元素进行定位&#xff0c;以便它们出现在我们想要的位置。在 CSS 中&#xff0c;我们…...

构建Docker基础镜像(ubuntu20.04+python3.7.1+chrome101+chromedriver101)

文章目录 一、前置条件1.下载 chrome【google-chrome-stable_current_amd64.deb】2.下载 chromedriver【chromedriver_linux64.zip】3.创建 ubuntu 镜像源文件【sources.list】二、构建方法1.构建目录1.创建DockerFile2.打包镜像一、前置条件 要先下载一个支持 linux 的 浏览器…...

最新最全Java面试知识

工作也有好些年了&#xff0c;从刚毕业到前几年看过无数的面试题&#xff0c;在这个过程中也作为面试官面试过其他人&#xff0c;总想着自己写一个面试总结&#xff0c;随着自我认识的变化&#xff0c;一些知识点的理解也越来越不一样了。写下来温故而知新。很多问题可能别人也…...

突破不可导策略的训练难题:零阶优化与强化学习的深度嵌合

强化学习&#xff08;Reinforcement Learning, RL&#xff09;是工业领域智能控制的重要方法。它的基本原理是将最优控制问题建模为马尔可夫决策过程&#xff0c;然后使用强化学习的Actor-Critic机制&#xff08;中文译作“知行互动”机制&#xff09;&#xff0c;逐步迭代求解…...

逻辑回归:给不确定性划界的分类大师

想象你是一名医生。面对患者的检查报告&#xff08;肿瘤大小、血液指标&#xff09;&#xff0c;你需要做出一个**决定性判断**&#xff1a;恶性还是良性&#xff1f;这种“非黑即白”的抉择&#xff0c;正是**逻辑回归&#xff08;Logistic Regression&#xff09;** 的战场&a…...

Psychopy音频的使用

Psychopy音频的使用 本文主要解决以下问题&#xff1a; 指定音频引擎与设备&#xff1b;播放音频文件 本文所使用的环境&#xff1a; Python3.10 numpy2.2.6 psychopy2025.1.1 psychtoolbox3.0.19.14 一、音频配置 Psychopy文档链接为Sound - for audio playback — Psy…...

3-11单元格区域边界定位(End属性)学习笔记

返回一个Range 对象&#xff0c;只读。该对象代表包含源区域的区域上端下端左端右端的最后一个单元格。等同于按键 End 向上键(End(xlUp))、End向下键(End(xlDown))、End向左键(End(xlToLeft)End向右键(End(xlToRight)) 注意&#xff1a;它移动的位置必须是相连的有内容的单元格…...

Aspose.PDF 限制绕过方案:Java 字节码技术实战分享(仅供学习)

Aspose.PDF 限制绕过方案&#xff1a;Java 字节码技术实战分享&#xff08;仅供学习&#xff09; 一、Aspose.PDF 简介二、说明&#xff08;⚠️仅供学习与研究使用&#xff09;三、技术流程总览四、准备工作1. 下载 Jar 包2. Maven 项目依赖配置 五、字节码修改实现代码&#…...

网站指纹识别

网站指纹识别 网站的最基本组成&#xff1a;服务器&#xff08;操作系统&#xff09;、中间件&#xff08;web容器&#xff09;、脚本语言、数据厍 为什么要了解这些&#xff1f;举个例子&#xff1a;发现了一个文件读取漏洞&#xff0c;我们需要读/etc/passwd&#xff0c;如…...

【C++进阶篇】智能指针

C内存管理终极指南&#xff1a;智能指针从入门到源码剖析 一. 智能指针1.1 auto_ptr1.2 unique_ptr1.3 shared_ptr1.4 make_shared 二. 原理三. shared_ptr循环引用问题三. 线程安全问题四. 内存泄漏4.1 什么是内存泄漏4.2 危害4.3 避免内存泄漏 五. 最后 一. 智能指针 智能指…...

Git 3天2K星标:Datawhale 的 Happy-LLM 项目介绍(附教程)

引言 在人工智能飞速发展的今天&#xff0c;大语言模型&#xff08;Large Language Models, LLMs&#xff09;已成为技术领域的焦点。从智能写作到代码生成&#xff0c;LLM 的应用场景不断扩展&#xff0c;深刻改变了我们的工作和生活方式。然而&#xff0c;理解这些模型的内部…...

tomcat指定使用的jdk版本

说明 有时候需要对tomcat配置指定的jdk版本号&#xff0c;此时&#xff0c;我们可以通过以下方式进行配置 设置方式 找到tomcat的bin目录中的setclasspath.bat。如果是linux系统则是setclasspath.sh set JAVA_HOMEC:\Program Files\Java\jdk8 set JRE_HOMEC:\Program Files…...

C++_哈希表

本篇文章是对C学习的哈希表部分的学习分享 相信一定会对你有所帮助~ 那咱们废话不多说&#xff0c;直接开始吧&#xff01; 一、基础概念 1. 哈希核心思想&#xff1a; 哈希函数的作用&#xff1a;通过此函数建立一个Key与存储位置之间的映射关系。理想目标&#xff1a;实现…...