宿舍网络拓扑介绍(附部分教程)
前言曾经折腾了个K2P的路由器,感觉性能还是差点意思,于是暑假就入手了台J4125小主机,准备好好折腾一下宿舍网络,装一些实用的功能来方便我学习生活。
现在差不多折腾好了,遂写一篇文章记录一下,我的近乎完美的宿舍网络设计。
设计理念
性价比+实用+好玩
三个点没有绝对的优先级,主打一个主观好玩且买得起
但是现实是实用的东西比较多
网络结构总结起来是“1+1+1”结构,即一个硬路由+群晖+小爱
拓扑图如下:
本文主要围绕这张图展开介绍
实现功能这里我先简单介绍几个最实用的功能和实现的基本部件思路:
校园内网远程桌面(硬路由端口转发)
校园网多拨(OP的多拨功能)
多设备存储/备份(NAS+微力存储自动同步)
自建DNS+去广告(Docker+adguardHome)
全局爬墙(PassWall 2+旁路由)
公网访问内网网盘/图床/RSS阅读器 (CF打洞)
远程or语音操控开关空调/台灯/电脑(小爱音箱+终端设备)
墨水屏实时监控宿舍电量(驱动板自动连接WIFI爬取数据)
安全的内网穿透访问(zerotier+自建Moon)
……
还有很多就不一一列举了,接下来就详细介绍一下各个功能的一些细节,以及使用心得。
校园网内网远程桌面这是我最常使用的功能,实现起来也非常简单。需要升级到企业版Windows,并且开放相应的端口到校园网上就行。
但是这样有几个小问题,首先就是校园网IP可能会经常变化,其次校园网账号只有三个设备,很容易被挤掉。
所以这时候可以在宿舍装一个路由器,这样可以稍微固定校园网IP,同时,使用端口转发可以方便的通过路由器IP访问远程桌面。另外使用openwrt固件的DDNS功能还可以动态绑定域名和IP,这样就不用记路由器IP了
校园网多拨校园网多拨是个好东西,因为🐏带校园网IPV4下行只有40M带宽 ...
win11下使用qemu运行Loongarch虚拟机
前言之前打软件杯龙芯赛道,师姐让我们自己用qemu装loongnix体验一下比赛环境,但是当时一直忙就没装。现在又要编译一下loongarch的包了,交叉编译链搭起来好麻烦,遂想到了用qemu装loongarch虚拟机来玩玩。而且在8月份更新的8.1版本中对LA(代指loongarch,下同)更好了,更有理由装一个玩玩了。
安装qemu现在在windows下安装qemu已经很方便了,只需要在官网下载安装包:qemu-w64-setup-20230822.exe
按照需要安装即可。
下载loongnix镜像这里我安装的是loongnix系统,当然LA也支持其他系统(如arch,debian12等)。根据需求安装。
镜像去官网下载:Nginx Directory (loongnix.cn)
我下的是cartoon版的,带gui。并且是直接使用官方提供的qcow2虚拟盘格式,这样做的好处就是集成在一起,不用自己划盘,缺点就是比普通镜像稍微大点。当然这里使用普通iso镜像安装也是可以的。
下载UEFI镜像启动需要引导程序,可以使用arch的引导程序Index of /loongarch/archlinux/images/ (wsyu.edu.cn)
这里下载8.0的引导程序QEMU_EFI_8.0.fd
安装虚拟网卡使用tap-windows创建一张虚拟网卡,官网:Index of /downloads/releases/ (openvpn.net)
win11使用最新版本比较稳定,这个tap-windows-9.24.7-I601-Win10版本,之前使用9.23.1就会出现桥接之后虚拟机连不上网的情况,使用9.24.7完美解决。
下载地址:https://build.openvpn.net/downlo ...
基于NFC的Url Scheme奇妙用法
前言Url Scheme对于移动设备用户来说是十分方便的,可以在手机上快速打开应用,也可以实现应用间的互相调用;对于苹果用户,得益于快捷指令的强大,许多软件都支持各种各样的捷径来快速打开;而反观安卓这边,由于没有一个统一的要求,捷径这种东西在安卓上并不常见。一般都是软件内部自己在使用。但是安卓上的Url Scheme有许多有意思的东西,连苹果都做不到的一些功能,在这里记录一下。
准备工作安卓没有类似苹果的捷径这样纯软件打开Url Scheme(貌似有,不过要root),所以需要一些NFC芯片来作为Trigger
这里用M1卡和NTAG21X都可以,能正常写入数据的就可以了,我推荐使用NTAG215轻薄款
很薄,可以到贴到纸的后面或者其他什么地方都可以。
其次,手机需要安装一个写入NFC数据的软件
最后,也是最重要的一点,准备一台有NFC功能的手机。
实际应用以下是个人觉得比较有用的一些Url Scheme应用,欢迎大佬在评论区补充些
碰一碰连WIFI这个功能是最常见的,严格意义上来说这不属于Url Scheme的内容,因为里面数据是这样式的
这是用NFC Tools写入的数据,如果你是小米手机,使用米家app写入,就有些不一样
当然这个也不是正宗的Url Scheme,是打开米家自己进行的操作而已。
碰一碰听歌(NFC音乐墙)这个在各大视频平台有很高的播放量,而且同一个Url Scheme安卓和苹果都能使用,网上比较多的教程是用网易云音乐的,当然其他音乐软件也行,我这里演示一下网易云的
往卡里写入如下代码:
1orpheus://song/1365626644/?autoplay=1
其中orpheus是网易云音乐的包名,冒号后面的就是Url Scheme的路径了,中间的数字是想听的歌的id,后面的autoplay=1是打开后自动播放的参数,可加可不加 ...
武汉游
本来想着,在天河机场等飞机的时候就开始写的,结果躺椅子上直接睡着了,就忘了这事。回青岛之后忙着写作业,一直没机会写。现在终于忙完了,终于可以开始写了。
写在前面这是一篇游记,主要记录了五一假期去武汉七天的经历,没有文笔可言,主要是流水账和一些自己人的烂梗吧,不认识我的人估计看起来很费劲,不过我也会尽量写的通俗易懂的。写这篇游记的主要目的就是为了记录这7天在武汉发生的各种各样的魔幻的事情和经历。
主要出场人物介绍
我:笔者,亦是故事主人公,是一个心超大的人(或许),而且很笨(某个人说的)
同学Z:武带同学,人高还帅,就是不怎么出来玩。
同学L:民带同学,一个靓女,就是不怎么出来玩。
同学X:武理工的,一个好人,就是不怎么出来玩。
第一部分
如果再给你一次机会,你还会来武汉吗?
同学Z如是道
这是同学Z当时某一天问我的一个问题,现在想想真是讽刺。谁能想到,一次正常的旅游,出了这么多鸟事。
本人是一名在琴岛念书的苦逼带学牲,这个学期解封之后,差不多把市区逛了个底朝天,然后在一次和同学L的闲聊之中,我开玩笑的说了一句,有时间可以去武汉玩(笑),
然后,突然发现五一放五天假,这么一想,好像确实可以去。于是去武汉旅游这件事就给我留下了心里阴影在我心里扎了根。
3月和4月过去了,我的泰山之旅一直没去成,身边的同学也没人邀请我五一去玩(其实是有的,只不过不是很感兴趣,绝不是因为我没朋友) 。有个同学五一打算去淄博吃烧烤,但是我感觉淄博会很多人,遂没去(事实证明是正确的选择)。后面到了四月中旬,就正式决定了要去武汉了。
然后就是做攻略,买车票,订酒店。我这个人比较喜欢随性旅游,攻略就是在小红薯上看了两眼,就觉得稳了。事实证明,什么都看小红薯只会害了你!!!,然后有俩需要预约的地方(省博和美术馆)由于太佛系,结果忘了预约,然后就差点去不了了,不过这也是后话了。
攻略做好后(可能),接下来 ...
计算机系统工程SecFs实验一
前言这个学期(大二下)我在郝xd的撺掇下,选了曲老师的《计算机系统工程》这门课。对标的是MIT的6.033课程,参考内容目录MIT6.033 Computer System Design | 计算机系统设计 | Miigon’s blog这门课在国内各大高校同类型的课基本找不到(可能不叫这个名字吧),就连这本课本的中译版正版都很难找到(我只买到了盗版)。就是这么一门神秘的课程,却讲了许多计算机系统设计的基本原则,可谓是干货满满。用曲老师的话来说:这门课可能是大学四年中,计算机专业最实用的课。在上了半个学期后,我是深深体会到了。故想写一篇博客记录一下这节课的实验课,以及自己的一些想法。
实验背景世界正在慢慢变得更加紧密,并且越来越需要让你的所有数据都具有可用性、可共享性、安全性和可 复制性,由于这些需求,Dropbox 和 Google Drive 等云服务应运而生,并取得了巨大成功。他们获取你的 文件并将它们透明地托管在“云”中。但是,用户在此过程中失去了对数据的一些控制。你必须信任公司 能够保证数据安全;你必须相信他们不会查看你的数据,不会共享它,也不会丢失它。在本实验中,要求 开发一个文件系统,这个系统允许用户将数据存储在远程文件服务器上,但是用户无需信任该服务器。
实验介绍本实验的目的是让你了解如何构建安全、相对复杂且有用的软件。你将构建一个远程文件系统 SecFS, 它在面对完全不受信任的服务器时能提供机密性和完整性。 我们为你提供了一个具有很少功能和更少安全保证的框架为基础进行本实验。你需要扩展这些功能来 实现线面的实验目标。我们提供的代码是 SUNDR 序列化版本的一部分。你应该阅读论文 SUNDR ,因为本 实验中的许多概念和原理与之相似。为了完成本实验,你需要实现其余部分以支持整个序列化 SUNDR,并 添加机密性保证(文件的读取保护)。
实验官网:6.85 ...
自制Amiibo全记录
Amiibo卡写入何为Amiibo
Amiibo(官方正名:amiibo,日文:アミーボ,中文:阿咪包或阿咪寶),是由日本遊戲廠商任天堂自家所發行的近場通訊產品,與之前其他遊戲廠商所發行的《寶貝龍冒險》系列、《迪士尼 無限》系列以及《Telepods》等系列擁有近場通訊功能的玩偶有所差異[1][2],主要用在Wii U平板控制器、新任天堂3DS[3]、新任天堂2DS XL/LL、任天堂3DS(需要額外Amiibo接收平台提供支援)和任天堂Switch上,這些Amiibo可以在一些特定的遊戲上傳送或接收所儲存的遊戲數據。
Amiibo首次在2014年E3展上對外發表,並公佈第一波Amiibo,早期發售的Amiibo大多數為《任天堂明星大亂鬥3DS/Wii U》登場的角色,後續也陸續發行了《超級瑪利歐系列》等的Amiibo。[4]
——Amiibo - 維基百科,自由的百科全書 (wikipedia.org)
简单来说,Amiibo是任天堂官方出品的,具有NFC通信功能的塑胶人偶,国行版加个大概在99元,以正品手办来说,这个价格还可以接受。其质量来说也属于上乘了。
但是Amiibo和普通手办最大的不同之处在于,其底座里有一块NFC芯片,可以与NS右侧手柄的摇杆进行交互,从而实现游戏与现实的互动。
Amiibo有什么用以《薩爾達傳說 曠野之息》为例,其在游戏中能够使用的的Amiibo有25个,而且随着数据更新,应该会不断增加,而且最近《薩爾達傳說 王国之心》也准备出了,之前旷野之息能使用的Amiibo在王国之心里应该也是能使用的。下图是旷野之息能使用的amiibo一览
在旷野之息中,使用Amiibo可以获得一定的奖励,比如限定武器,装备,坐骑,宠物狼,材料等等。不同的奖励概率不一样,但是每个Amiibo每天只能用一次。由于Amiibo能刷限定装备,加之 ...
RFID第一期——各种IC卡和ID卡详解
起因放假闲来无事,在B站冲浪,看到有人在讨论IC卡,我在这方面刚好还是有这么一点了解,就拿MF1卡给别人举了个例子,然后MF1卡就被开除出IC卡籍了。
有点气,但是仔细想想,网上关于这些卡的介绍知识太少了,有些人区分不了也很正常,于是我查阅大量资料,才有了这篇文章。
前置知识先给大家捋清楚几个不同的名词:ID卡,IC卡,RFID卡,CPU卡,m1卡,MF1卡,UID卡,CUID卡。。。
看到这对名词想必大家头都大了,但是,今天我就带大家搞清楚这每一个名词的意思,以及目前市面上比较常见的卡的类型的介绍。
RFID卡和IC卡首先,大家需要知道的一个名词是:RFID
这是什么意思?我摘抄了Wiki上的介绍,帮助大家理解:射频识别 - 维基百科,自由的百科全书 (wikipedia.org)
射频识别(英语:Radio Frequency IDentification,缩写:RFID)是一种无线通信技术,可以通过无线电信号识别特定目标并读写相关数据,而无需识别系统与特定目标之间建立机械或者光学接触。
可以看到,RFID不是一种卡的代号,而是一种技术,一种非常常见的技术,使用了这个技术的“卡”都能称为RFID卡,这是一个大类,基本涵盖今天说的所有卡,除了接下来要说的IC卡的一部分:
IC卡定义,摘自百度百科:IC卡_百度百科 (baidu.com)
IC卡 (Integrated Circuit Card,集成电路卡),也称智能卡(Smart card)、智慧卡(Intelligent card)、微电路卡(Microcircuit card)或微芯片卡等。它是将一个微电子芯片嵌入符合ISO 7816标准的卡基中,做成卡片形式。IC卡与读写器之间的通讯方式可以是接触式也可以是非接触式。
从两者定义可以看出,RFID卡和IC卡并不是简单的包含与被包含的关系,因为一个是从技术 ...
Supervisord进程管理工具的重启问题 supervisor.sock no such file
起因前两天,黄哥找到我说,有个网站挂了,需要我去恢复一下,然后给了我账号密码,然后我就去看了一下,然后发现网站使用的是flask搭的,但是,我不太了解,完全不知道是用什么来启动的。甚至nginx都没配软连接,后面拿到了帮助文档才知道,原来使用Supervisord来启动和守护进程。因为之前阿里云服务器空调故障,导致服务器宕机。这个Supervisord直接异常退出了,按照网上的方法,并没有用,然后就去研究了一下。
关于SupervisordSupervisor 是一个用 Python 写的进程管理工具,可以很方便的用来在 UNIX-like 系统(不支持 Windows)下启动、重启(自动重启程序)、关闭进程(不仅仅是 Python 进程)Supervisor 是一个 C/S 模型的程序,supervisord 是 server 端,supervisorctl 是 client 端
supervisord的出现,可以用来管理后台运行的程序。通过supervisorctl客户端来控制supervisord守护进程服务,真正进行进程监听的是supervisorctl客户端,而运行supervisor服务时是需要制定相应的supervisor配置文件的。Supervisord工具的整个使用流程:1、首先通过echo_supervisord_conf 生成配置文件模板2、然后你根据自己的需求进行修改,接着就使用相应的命令来使用supervisorctl客户端3、而supervisorctl客户端会将对应的信息传递给supervisord守护进程服务,让supervisord守护进程服务进行进程守护。
问题复现及解决supervisorctl的几条指令
1234supervisorctl restart all supervisorctl statussupervisor ...
DjangoAdmin后台collectstatic不生效问题
问题起因最近把一个Django项目部署上服务器的时候,发现了一个问题。在收集静态资源的时候,发现后台Admin的样式资源不生效,
具体表现在,执行了collectstatic命令后,提示copy成功
但是实际上,项目目录下并没有收集到文件。
问题分析反复收集了几次,还是不生效。都显示已经收集了,并没有修改。
首先一开始我先按照网上的方法,排除了一些常规的原因,然后开始想想还能有什么离谱的bug,先看看配置文件。
看似并没有什么问题,也确实没什么问题。但实际上这是个巨坑的地方
解决方法非常坑爹的一个地方,先把STATICFILES_DIRS给注释掉,然后再把STATIC_ROOT里的/static/给改成static,如下图:
这样一来就能正常收集了
在收集完静态文件后记得把settings修改回来。
Git配置全局代理解决10054问题
问题复现最近装了新电脑,很多东西都没配置,都是很久以前在笔记本上配置的。结果现在台式上有一堆环境问题,就比如今天这个Git推送的问题就是一个。
众所周知,由于某些不可抗力因素,github在的登录属于一个玄学的问题,偶尔运气好就能裸连,运气不好直接连push都push不上。
解决方法为了解决这个问题,我们一般想到的方法就是走一下代理,但是Clash开启之后,我们可以在网页端正常访问github,但是push还是不行。问题的根源是:普通的代理模式,流量都是走一个特定的端口,与服务器通信,但是git的流量不会走。所以我们需要手动绑定一下代理。
方法非常简单,这里以Clash为例,其他软件的配置也大差不差。
打开Clash,马上就可以看到它使用的代理端口,这里为7890
接下来,给git设置代理,方法如下:
方法一 直接使用命令直接在Bash里输入命令设置全局http/https代理
123git config --global http.proxy http://127.0.0.1:7890 git config --global https.proxy https://127.0.0.1:7890
这样以后使用Clash时,git也能走代理了
方法二 修改配置文件打开配置文件
1vi ~/.gitconfig
在文件末尾添加配置
12345678[http] proxy = http://127.0.0.1:7890 [https] proxy = https://127.0.0.1:7890
保存退出,重启一下git,结果也是立竿见影。
结果改了之后马上就会生效,无论是push还是clone都没有问题了。记得开代理就行。