分类 技术分享 下的文章

安装docker后运行下面命令安装alpine系统

docker run -it --rm \
--cap-add=NET_ADMIN \
--cap-add=SYS_ADMIN \
--device=/dev/net/tun alpine:3.16 /bin/bash

随后会自动进入alpine系统,首先安装zerotier运行环境

apk add openrc --no-cache

然后安装zerotier

apk add zerotier-one
/etc/init.d/zerotier-one -d
zerotier-one -d  
rc-update add zerotier-one sysinit

最后加入网络 zerotier-cli join XXXXXXXXX #XXXXXXXXX是你的zerotier16位id

由于谷歌关闭了国内谷歌翻译服务器导致国内无法使用chrome自带的翻译功能,网上一直有通过修改hosts来复活谷歌翻译的教程,但由于使用的人多了导致ip经常被封禁,需要不停地换ip,而寻找新的ip又特别麻烦,我突然想到可以通过ipv6来解决这个问题,ipv6是十六进制拥有大量的ip,哪怕被封了也可以随时更换新的。

2001:470:8935:8:XXXX:XXXX:XXXX:XXXX

只需要将上面X换成数字或者abcdef中任意一个即可,这样一个新的支持谷歌翻译的ip就诞生了,比如:2001:470:8935:8:9b2d:6dba:f572:3ecf

修改C:WindowsSystem32driversetchosts 将ip写入文件最下方

2001:470:8935:8:9b2d:6dba:f572:3ecf translate.google.com
2001:470:8935:8:9b2d:6dba:f572:3ecf translate.googleapis.com
2001:470:8935:8:9b2d:6dba:f572:3ecf translate-pa.googleapis.com

首先安装环境

apk add wget curl sudo make gcc automake autoconf build-base

下载程序

wget https://github.com/samhocevar/rinetd/releases/download/v0.73/rinetd-0.73.tar.gz

tar -zxvf rinetd-0.73.tar.gz

cd rinetd-0.73

./bootstrap

./configure

make && make install

新建rinetd配置文件

vi /etc/rinetd.conf

填写如下内容,意为监听本地2022端口并转发至192.168.1.2的2023端口

0.0.0.0 2022 192.168.1.2 2023

以配置文件启动rinetd

rinetd -c /etc/rinetd.conf

Alpine Linux 的 开机自启目录在/etc/local.d下,这个目录用于放置我们需要在本地服务启动或停止后执行的脚本。

新建脚本

vi /etc/local.d/rc.start

按下i键就可以编辑内容了,输入你想执行的命令,比如nohup python3 /usr/server.py -c /root/1.json &最后保存即可
赋予脚本执行权限

chmod +x /etc/local.d/rc.start

设置 local 服务开机启动

rc-update add local

将ipv6整段分配给某一个虚拟机,一个一个添加不太现实干脆直接虚拟机广播整个ipv6前缀

比如想将2001:db8::1/64分配给某个虚拟机,需要在虚拟机里开启ipv6转发

echo "net.ipv6.conf.default.forwarding = 1" >> /etc/sysctl.conf
echo "net.ipv6.conf.all.forwarding = 1" >> /etc/sysctl.conf
echo "net.ipv6.conf.all.proxy_ndp = 1" >> /etc/sysctl.conf
echo "net.ipv6.conf.all.accept_ra = 2" >> /etc/sysctl.conf
sysctl -p

广播整个ipv6/64前缀

ip -6 route add local 2001:db8:a:a::/64 dev lo

虚拟机已经布置完毕,现在只需要去母鸡配置一下路由就可以了

ip -6 route add 2001:db8:a:a::/64 via 2001:db8:aaa:1 dev vmbr0

最后一条命令是在母鸡运行的,其中2001:db8:a:a::/64是你想分配给虚拟机的ipv6前缀和子网段、2001:db8:aaa:1是你虚拟机的ipv6地址、vmbr0是你虚拟机连接母鸡的网卡名称,根据情况自行修改