DC的工作间 · 2025年5月30日 0

再次上班后的一些办公实践

总之是重新回归了社畜身份,新单位的网络是内外网一体的,外网流量也会路由到公司总部再出公网。由于平时办公终归还是要用到内网,单纯靠手机流量开热点既不方便也吃不消话费,于是摸索了一些结合实际情况的办公实践,在此简单记录。

一、个人信息和流量保护

虽然新单位允许使用自己的电脑,但我不想在自己的电脑上安装任何单位的软件,所以我干脆买了台新笔记本,在虚拟机里安装常用的通讯软件,一些可能涉及许可问题的办公和开发软件也一同放进虚拟机进行隔离。于是乎虽然新单位并不像老东家那样内外网使用不同的桌面云环境,但我还是自己划分出了两套不同的环境,确保“工作”和“个人”隔离开来。

在现有的NIC之外,我又新开一台VPN服务器用于保护我的流量。最初试用了Pritunl(底层是OpenVPN)和Wireguard,但都穿不透公司的访问控制,还是久经考验的SoftEther能够胜任。只需开启SecureNAT便可以让虚拟机内的所有流量都通过VPN了。顺便一提TX云的服务器似乎只要改DNS就能直接上GitHub,意外收获了属于是。

二、公网镜像下载加速

新单位没有自己的镜像服务器,给开发环境(运行在我自己电脑上的虚拟机)安装各种依赖是只能靠每人分不到100M的小水管慢慢下。一些简单的依赖倒还好,但若是CUDA、PyTorch这种就很痛苦了。

目前的权宜之计是将虚拟机网卡配置为桥接到宿主机无线网卡,我用手机开热点给虚拟机提供网络;而宿主机使用Windows默认的路由设置,会继续优先使用有线网(即办公网)。说是权宜之计,是因为这只能解决下载速度的问题,若是多个虚拟机重复下载相同的包,就会缺少内网镜像的pull-through cache,要多跑我几遍流量。好在现在流量也用不完,这些环境也不用天天新建,偶尔装一次还是吃得消的。之后再考虑要不要开台虚拟机做Nexus Repo。

这也体现出使用在虚拟机中使用我自己的上网环境的优势:我可以任意切换虚拟机的网络环境——无论是经过办公网和我自己的VPN上网,还是直接用我的手机流量,而不影响宿主机与办公网之间的稳定连接。我的同事就曾经遇到在办公网和手机热点之间切换后,零信任客户端短暂掉线,导致从远程服务器下载过程中断需要重新下载的情况。

三、本地Gitea

没错,试用期连GitLab权限都没给开。不过本地部署Gitea相对简单(哪怕是在Windows宿主机上),虽然SSH服务愣是没整好,但通过HTTP推拉代码也够用了。我配置Gitea只监听VirtualBox的Host-only网卡,并设置Windows防火墙仅允许虚拟网络所属网段访问Gitea,这样所有推拉代码的操作都停留在本机,且新增的虚拟机也能够很方便的从Gitea拉代码了。

话说直接新建Git仓库也不是不能用,无非是贪图Gitea的网页端有个好用点的UI罢了,用PR合代码更方便点。而且这边的工作性质也没有那么多协同开发的机会,大多是相对独立的任务包发给个人,写完上传或者部署,暂时只用管好自己的代码即可。