分类 技术 下的文章

微博图床禁止外链的临时解决办法

微博图床的免费和高速这里就不说了,最近由于微博禁用了图片外链,即referer为非官方返回403,导致我的博客的图片都挂了,临时解决办法是:在HTML代码的head中添加一句。可能会导致第三方统计不准,只是个临时解决办法,最好还是用稳定的图床。
经过测试,影响评论功能,不影响Google analytics。

静音全万兆全固态nas(持续更新)

目标:读写1gb/s,目前群晖ds3018xs受限于cpu只能到写700m/s读1g/s,且群晖风扇噪音太大盘位稍小,买群晖的时候还没出fs1018
硬件:主板 x11sdv-16c,内存 三星ddr4 ecc 64g2,散热 d15s,硬盘笼 516sp,硬盘 860evo-4t8,hba卡lsi 2308-it,sata raid卡OImaster EB-6250 JMicron的芯片,网卡 板载x557双10g电口,机箱 先马 小黑洞
第一版图片
硬件1
第二版图片
硬件2正面
硬件2背面

软件:底层esxi6.7,nas系统黑裙6.2

1,为什么不选freenas,网卡驱动性能太差,只有写200m/s,读600m/s,且cpu资源消耗较高,会增加散热风扇噪音
2,为什么不选windows server,调整网卡mtu,buffer之后能到850m/s读写,但是存储池为parity(raid5)写入性能太差,hyper-v兼容性较差
3,为什么需要两个raid卡,OImaster EB-6250 是两个2.5硬盘转sata接口的硬盘盒,两个2.5硬盘支持jbod,raid0,raid1,这里我用了raid1用来安装esxi,并作为esxi的存储,存储虚拟机配置及虚拟硬盘,这样在基础层面保证数据安全
4,为什么选择先马小黑洞机箱,1京东可以第二天送到,2有前面板可以把硬盘抽取盒挡住,以防熊孩子,3设计是近几年的设计,酷冷等有两个5寸光驱位的机箱还是上个世纪的设计,电源上置。。。
5,功耗怎么样,待机80w左右,满载200w,按满载算一年1600度电,还是可以接受,毕竟性能摆在这里
6,噪音怎么样,待机凑到机箱10cm处可以听到风扇声音,满载略低于冰箱工作声音,基本满足静音的目标
7,性能怎么样,afp协议读可以跑满万兆1.1g/s,写大概750m/s,smb协议还在继续优化中
性能1

群晖的radius server使用openldap认证的坑

群晖的radius server是魔改的freeradius,可以使用本地ldap server和远程ldap,分别对应两套配置文件。
在使用远程ldap时,会读取控制面板/ldap客户端的配置信息,每次重启radius server都用读取的配置重置radius server的远程ldap配置文件,坑就在这里:radius server有个连接远程ldap的start_tls = no配置信息默认是yes,然而openldap默认是不开放ldaps://的,配置ldaps需要证书等一系列配置,比较繁琐,并且内网使用ldap://也没有什么安全问题,群晖radius server每次修改配置都会重置start_tls为yes,然后就连不上远程ldap了。
解决办法:
1,修改start_tls配置文件

vi /usr/local/synoradius/rad_ldap_starttls
start_tls =no

然后radius server的配置不动,在客户端每次不勾选客户端应用,再够远应用,达到不重置配置文件重启认证服务器。

2,修改ldap配置文件

vi /volume1/@appstore/RadiusServer/etc/raddb/mods-enabled/ldap
    tls {
#        $INCLUDE /usr/local/synoradius/rad_ldap_starttls
       $INCLUDE /var/packages/RadiusServer/target/syno_conf/rad_ldap_starttls
    }

注释掉原来的引用,修改成重启radius server不会重置的配置文件。

3,修改radius server的重启脚本
由于群晖魔改,配置文件启动脚本路径比较混乱,还没有找到重置配置文件的位置。

ps:由于群晖的packages的特殊性,每次升级后理论上上面三个方法都会失效,需要重新修改。

通过rclone备份vps数据到google drive

1,安装rclone

apt update && apt install curl unzip -y
curl https://rclone.org/install.sh | sudo bash

2,配置rclone

rclone config

有Leave blank normally字样的直接回车就行,注意选择Use auto config?选择Say N if you are working on a remote or headless machine or Y didn't work。
复制一串url到浏览器按提示登陆后会得到一串密钥,复制到终端里会车即可。

3,配置定时同步
crontab -e
rclone sync 要备份的目录 rclone的配置名称:google drive的路径

注意不会备份目录的根目录

google cloud platform(gcp)的一个关于网络的坑

gcp这个网络坑是vm网卡的mtu是1460,一般其他vps或云服务的都是1500。

在gcp上使用更换付费账号的方式重新撸了300刀一年,其实在15/16年就用过一年,当时台湾服务器还没被草烂,联通直连能跑满带宽,后来用的人越来越多,很多ip被墙了,到期之后就没再用。

最近发现gcp新放出来一批ip,识别地址是美国,还没有被各大视频网站(Netflix,hbo,hulu等)加入黑名单,所以又撸了一年,先用着。

之前用gcp只是用ss,没有碰到mtu的问题。这次用gcp做落地机出现了问题。
境内路由器隧道到阿里云香港然后隧道到gcp香港,再出去,由于隧道的原因链路最小mtu是1390,小于gcp网卡1460,所以没有问题。

我的苹果设备需要一个ikev2服务器访问美国服务,按之前的一键脚本一路下来很顺利,却打不开谷歌的各种服务,但是ping正常,telnet正常,刚开始以为是dns问题,一键脚本默认是8.8.8.8,服务器是169.254.169.254的内网ip,修改dns服务器地址之后依然不行。然后想到是不是gcp对nat有什么限制,遍历gcp设置,各种查文档,改配置也是一无所获。

ikev2建立连接后,客户端通过telnet发现是可以建立tcp连接的,然后通过curl -v去请求测试,发现curl -v google.com可以收到301状态码,但是curl -v www.google.com卡在tcp建立连接后接收http报文,curl -v https://www.google.com 卡在tls协商,其实从这基本可以确定是mtu问题了,因为卡住之前都是小包碰不到分片或丢包,到接收http报文或者tls协商都是大包,超过mtu都是要分片或丢包,由于关于mtu的问题很久没有遇到了,一时没想起来。

惆怅迷惑之际拿起了wireshark抓包,curl -v www.google.com后,wireshark出现“tcp previous segment not captured”,终于意识到大包被丢包了,可能是mtu问题。ifconfig发现imac的ipsec0接口mtu是1400,sudo ifconfig ipsec0 mtu 1200 up,问题解决。但是不能每个客户端都修改mtu,ios怎么修改mtu?

查询文档,谷歌建议vm网卡使用1460,说是全球链路中最大1460,先不管了修改vm网卡为1500,vm只作中转不从vm直接上传什么应该问题不大。

gcp关于strongswan的文档根本没有提到mtu问题。