我要做环保的垃圾佬(一)
前言
这篇文章应该在18年年底发布的,因为给买房装修的事给耽搁了,加上工作的繁忙,一直没写上。刚好碰上这次疫情,公司没了,失业在家,反正闲着也是闲着,把当初的文章补上吧。
事情经过
在17年618的时候,在某东家买了一台华硕AC1900P,最初也是用原版的固件,但是里面的下载大师,离线下载的速度真的是非常的慢,而且又没有公网地址,在外面很难连进去离线添加下载任务。这时候看到koolshare论坛的梅林软件,觉得不错,按照型号刷了当时最新的版本x7.8,用着花生壳内网穿透还有Aria2,也满足我的要求。但是不知道是不是硬件问题,花生壳会掉线连不上,要重启才能上线。后来设置了每个星期天重启,也能解决问题,但掉线的问题越来越严重。我试过出厂设置,升级梅林固件都未能解决问题。
一怒之下,在18年双11的时候在某宝的X火经营部,购买了一台3215U的四网口工控机。直接装ESXI,做虚拟化软路由、远程服务器和黑群晖,满足我日常使用的需求。文章中的产品都为自费购买,不存在广而告之的行为。
硬件配置:
3215U四口工控机带电源 含邮费709元
山寨DDR3L 1600 8G 笔记本内存 184元
三星PM851 MSATA 250GB 自用闲置
西数蓝盘2.5寸 1T 5400 8M 自用闲置
软件准备
1.VMware-VMvisor-Installer-6.7.0.update03-14320388.x86_64.iso (ESXI安装镜像)
2. ubuntu-20.04-desktop-amd64.iso (乌班图安装镜像)
3.20200316-openwrt-x86-64-combined-squashfs.img.gz (L大的openwrt软路由)
4.openwrt-koolshare-mod-v2.35-r14297-5efd32232b-x86-64-generic-squashfs-combined-efi.img.gz (koolshare论坛的openwrt软路由)
5.synoboot.img (黑群晖启动盘)
6.UltroISO
注:由于软件会更新,我在写这篇文章的时候,将所有系统都重新安装了一次,软件的版本都是手头上最新的。
我会在这台工控机上安装四台虚拟机,分别为两台软路由,一台乌班图和一台黑群晖。
一、安装ESXI
这一步非常的简单,可以将ESXI的ISO镜像写入空白的U盘里,将U盘接在机器上,开机用U盘引导即可,一直按照提示安装就可以了,详细步骤我就不写了,度娘上也有很多的例子。
或者你不想写盘,手头上有PE启动的U盘,可以按照PE启动盘的提示方法,在启动盘的根目录新建一个ISO的文件夹,然后将ESXI的ISO镜像放在里面,这样启动的时候,可以直接选择ISO镜像安装。
安装完成后,需要激活ESXI,这里大家可以搜一下度娘,非常容易的激活。
然后切换到网络-虚拟交换机-添加标准虚拟交换机,如下图所示,选择好上行链路和安全模式,点击确认即可。
然后切换到网络-端口组-添加端口组,,如下图所示,将虚拟交换机指向刚刚新建的,点击确认即可。
二、制作ISO合集
打开UltroISO软件,默认会新建一个空白的ISO镜像,这时候将20200316-openwrt-x86-64-combined-squashfs.img、openwrt-koolshare-mod-v2.35-r14297-5efd32232b-x86-64-generic-squashfs-combined-efi.img.gz和synoboot.img都放在里面,如下图所示
保存为ISO镜像,同时将乌班图的镜像,上传到ESXI中,如下图所示
三、安装L大openwrt
首先新建一台虚拟机,名字随便你取,然后选择操作系统为Linux,版本为其他4.x或更高版本(64位)
到分配虚拟硬件的页面。
因为3215U主频只有1.7G,性能比较低,所以我分配两个处理器,当然这个你可以按照自身需求分配。
内存我暂时分配4GB,这个只是用于前期运行环境的部署,后期运行软路由系统缩减到256MB也足够了。
硬盘我分配1GB的空间,选择精简置备的模式,其实也不用1GB的空间,不过精简置备是用多少算多少,也没太大的差别。如果对硬盘性能有高要求的同学,可以选择厚置备,置零,系统会立刻划分1GB的空间,这个就看个人所需了。
这个软路由是链接外网的,所以要新添加一个网络适配器,指向WAN网络,
还要添加一个CD/DVD驱动器,第一个驱动器装载Ubuntu的镜像,第二个驱动器装载前面自制的System镜像。
然后切换到虚拟机选项,那个引导选项,是按照你下载软路由的启动方式去选,combined的方式选择BIOS启动,uefi-gpt的方式选择EFI启动。
没问题的话,点击完成按钮就可以了,这样虚拟机就生成了。
打开电源后,会引导到Ubuntu的安装界面,这里我们不选择安装,选择试用,然后会来到体验桌面。
在左下角的软件列表里,找到一个叫Terminal的程序(就是命令行),然后打开,输入以下命令
sudo -i #切换到root权限
mount /dev/sr1 /mnt #挂载CD/DVD驱动器
cp /mnt/20200316-openwrt-x86-64-combined-squashfs.img.gz/tmp #将压缩包拷到临时变量的目录
gzip -d /tmp/20200316-openwrt-x86-64-combined-squashfs.img.gz #将压缩包解压
dd if=/tmp/20200316-openwrt-x86-64-combined-squashfs.imgof=/dev/sda #将软路由写入硬盘
完成后,你可以使用右上角的关机按钮,或者直接打命令 shutdown -h now,进行关机。
然后,可以将内存降至256MB,删除两个CD/DVD驱动器,保存即可。
开机后,在浏览器输入192.168.1.1这个地址,然后用户名是root,密码是password,就能访问并进行配置了。
四、安装koolshare的openwrt
安装koolshare的openwrt,前期配置基本同L大的openwrt一样,不过只需要一个网络适配器就可以了,因为这只是做一个二级路由,实现一些不可告人的功能,并不需要连接外网。
安装时输入以下命令
sudo -i #切换到root权限
mount /dev/sr1 /mnt #挂载CD/DVD驱动器
cp /mnt/openwrt-koolshare-mod-v2.35-r14297-5efd32232b-x86-64-generic-squashfs-combined-efi.img.gz/tmp #将压缩包拷到临时变量的目录
gzip -d /tmp/openwrt-koolshare-mod-v2.35-r14297-5efd32232b-x86-64-generic-squashfs-combined-efi.img.gz #将压缩包解压
dd if=/tmp/openwrt-koolshare-mod-v2.35-r14297-5efd32232b-x86-64-generic-squashfs-combined-efi.imgof=/dev/sda #将软路由写入硬盘
完成后,你可以使用右上角的关机按钮,或者直接打命令 shutdown -h now,进行关机。
然后,可以将内存降至512MB,删除两个CD/DVD驱动器,保存即可。
但是两个路由器的IP地址都是192.168.1.1,为了不冲突,配置二级路由的时候,可以先关闭一级路由,再进行配置。
登录的用户名为root,密码为koolshare,登录后,可以在网络-接口-LAN处修改IP地址为192.168.1.2,网关为192.168.1.1,DNS为192.168.1.1,而且关闭接口的DHCP服务,完成后点击保存,再次点击网络界面的保存并应用即可。由于更改了IP地址,访问时需要改为192.168.1.2。
五、安装ubuntu
为什么要安装Ubuntu?用Windows 10不行吗?
在3215U这样的低性能机器里面,用Windows 10不是不行,但是体验的话,的确没有Linux好。我自己试过安装Windows 10 LTSC版,但是一开机就已经吃了很多资源,CPU居高不下,如果再添加一个下载任务,那就直接100%,体验十分的糟糕。反观Linux,系统稳定,占用资源少,运行流畅,的确是首选。
创建Ubuntu虚拟机,名字可以随便改,系统系列选择Linux,系统版本选择Ubuntu(64位)
CPU分配两个,内存分配2GB,硬盘分配精简置备的120GB,CD/DVD驱动器挂载Ubuntu镜像,检查配置没问题,就点击完成按钮就可以了。
安装过程我就不详细叙述了,具体的安装过程可以度娘上找一下,这里我选择最小安装,后期可以按照需求自行安装软件。
安装完成后,首先切换一下root用户,升级一下源 apt-get update && apt-get upgrade,完成后,重启一下虚拟机。
然后在Teamviewer的官网下载linux版本的客户端,这里要选择deb x64安装包的。
安装软件使用以下命令 dpkg -i teamviewer_15.5.3_amd64.deb
如果提示缺少某些库文件,执行以下命令 apt-get -f install,完成后再执行上面的安装命令,就能正常安装了。
安装完成后,配置一下密码,就能够远程连接访问了,跟使用Windows没啥区别。
第三,在花生壳的官网下载linux版本的内网穿透客户端,这里也是要选择deb x64安装包的,安装激活,后面配置绑定域名的我就不叙述了,官网有教程。为啥我要用这个?免费啊。申请个免费域名,每个月有1G流量,带宽有1Mbps,映射两个端口,一般没啥需求的也够用了,如果对内网穿透有很大需求的,可以度娘一下各种内网穿透教程,我就不再详细叙述了。
安装软件命令 dpkg -i phddns_3.0_x86_64.deb
第四,在百度云的官网下载linux版本的云盘客户端,也是选择deb x64安装包的,安装完成后,登录就能使用了,下载的单位是以MB/S来计算的,好过用windows的客户端。到这里有同学会说为啥不用二级路由里面的百度云插件?那个插件我没记错的话,应该是baidupcs-go吧,用过两三次,速度有限制,而且下载列表比较粗糙,如果我下载一个很多文件的文件夹,baidupcs就不直观了,而且如果机器重启,任务都会清空了,但是用官方的客户端就不会了。
安装软件命令 dpkg -i baidunetdisk_linux_3.0.1.2.deb
第五,在linux里面下载网络资源,可以使用Aria2这个软件,当然你可以使用二级路由里面的插件,也可以自己输入命令进行安装,安装好以后,写好aria2.conf的配置文件和新建一个aria2.session文件,就能愉快的下载了,具体的教程可以搜索度娘。想快捷一点的,就直接用二级路由里面的插件。
安装软件命令 apt-get install aria2
六、安装黑群晖
因为群晖6.2.2版本是基于linux 4.x 内核进行开发的,所以创建虚拟机的时候,要选恰当的版本。
分配硬件的时候需要注意,由于白群只支持SATA协议的盘,使用SAS控制器是不能引导的,所以将默认的硬盘删除,同时删除SAS控制器、默认的CDDVD驱动器。然后添加一个60MB的硬盘存放启动镜像,确保SATA的编号是0:0,网卡选择千兆或者万兆都没有问题,再添加两个CDDVD驱动器,编号是0:1和0:2,还有引导选项要确保是BIOS启动。
安装时输入如下命令,这里我列出指令,图就不截取了
sudo -i #切换到root权限
mount /dev/sr1 /mnt #挂载CD/DVD驱动器
dd if=/mnt/synoboot.imgof=/dev/sda #将引导盘写入硬盘
到这里,如果你想洗白,可以执行以下的命令
umount /mnt #卸载当前挂载的光驱
mount /dev/sda1 /mnt #挂载引导盘第一个分区到mnt
vi /mnt/grub/grub.cfg #编辑引导文件
找到 set sn 这一项,更改为正版白群的序列号,找到 set mac1 这一项,更改为正版白群第一个网卡的物理地址,貌似现在用算号器的都不行的,这两个参数最好在一台正版白群上获取,完成后保存并退出文件。关闭虚拟机,将虚拟机的网卡物理地址改为手动,设置为刚才的物理地址。
删除两个CDDVD驱动器,添加第二个磁盘,这个磁盘是用于存放文件的空间,直接点击上部的添加硬盘-新标准硬盘,确保硬盘占用了SATA的编号就可以,例如0:1。如果你需要直接挂载(映射)物理硬盘,可以开启ESXI的安全SSH模式,然后使用putty或者其他工具连入主机,输入以下命令
vmkfstools -z /vmfs/devices/disks/你的磁盘名称 需要映射到的地方
例如以下例子,我将物理硬盘映射到Remote2这台虚拟机下面一个叫320G的文件上,
vmkfstools -z /vmfs/devices/disks/t10.ATA__ST320LM0102D1KJ15C__W621CS6E__ /vmfs/volumes/5ea50853-06f5194c-38aa-0cc47ab0d8ee/Remote2/320G.vmdk
完成后,你可以点击虚拟机上部的添加硬盘-现有硬盘,找到你映射的地方,找到那个映射的vmdk文件,点击确认就可以了。
至于你硬盘的名称,可以在存储-设备中找到,括号里面的就是硬盘的名称。
开机引导黑群晖,用群晖工具找到对应的IP地址,然后按照步骤设置就可以了,这里我不详细叙述了。
七、使用效果
这台机器已经运行了两个月了,没有重启过,非常的稳定,除了里面的虚拟机因为软件升级而重启过,它所对外提供的服务一直很稳定,也达到了我的要求。至于功耗,当时测试的时候没有拍,现在已经在服役了,就不想动了,由于3215U是低功耗的CPU,加上4台虚拟机一天多数都是处于空闲的状态,所以它的功耗只有10W左右,在我复制大文件的时候,功耗也不超15W,非常的省电。机器外壳的温度还能接受,不过夏天来了,放在弱电箱里最好就添加一个风扇吹着,这样可以确保机器在低温的环境下工作,更稳定。
八、预告
我的All in one一体机要升级了,四代平台加20W的功耗,性能却比3215U好很多的机器,敬请关注下篇《我要做环保垃圾佬(二)》。
Terrry
校验提示文案
无理数
校验提示文案
小豚豚的爸爸
校验提示文案
tutugreen
校验提示文案
tutugreen
混杂相当于hub,巨影响性能和安全性。
启一个vm,一倍流量,四个vm,流量就同时复制四份发到所有vm,不关心mac,各个vm网络栈还得去处理本来和他没关系的流量,这些实现还是软实现,吞cpu。
安全方面也不用多说,你可能smb拖个文件跑满1g,然后其他vm相当于都在吃1g的攻击流量,现在esxi虚拟卡可以跑40g了。。另外和端口镜像一样,任何一个vm在无感,不实施arp等攻击的情况下,就可以抓取所有流量。
还有mtu,就算几年前的的设备也不在mtu卡脖子,除非配置不当,包括tcp mss等等没有打好。
从你回复角度看,mtu也和ping丢包没什么关联,一般情况下icmp ping 32字节,离1500还挺远,真实环境下流量也是小包居多,路由也不会把你几个小包并到一个1500里,所以不用担心。
丢包情况很多你可以再排一排,没准你关掉混杂,duang,就好了。
校验提示文案
ipam
校验提示文案
infinetely
校验提示文案
楼下万能的小黑
校验提示文案
南京冯绍峰
校验提示文案
南京冯绍峰
校验提示文案
ipam
校验提示文案
tutugreen
混杂相当于hub,巨影响性能和安全性。
启一个vm,一倍流量,四个vm,流量就同时复制四份发到所有vm,不关心mac,各个vm网络栈还得去处理本来和他没关系的流量,这些实现还是软实现,吞cpu。
安全方面也不用多说,你可能smb拖个文件跑满1g,然后其他vm相当于都在吃1g的攻击流量,现在esxi虚拟卡可以跑40g了。。另外和端口镜像一样,任何一个vm在无感,不实施arp等攻击的情况下,就可以抓取所有流量。
还有mtu,就算几年前的的设备也不在mtu卡脖子,除非配置不当,包括tcp mss等等没有打好。
从你回复角度看,mtu也和ping丢包没什么关联,一般情况下icmp ping 32字节,离1500还挺远,真实环境下流量也是小包居多,路由也不会把你几个小包并到一个1500里,所以不用担心。
丢包情况很多你可以再排一排,没准你关掉混杂,duang,就好了。
校验提示文案
tutugreen
校验提示文案
小豚豚的爸爸
校验提示文案
楼下万能的小黑
校验提示文案
infinetely
校验提示文案
无理数
校验提示文案
Terrry
校验提示文案