我正在使用 protonvpn。
我的服务器看起来像:
UK#13
US-VA#2
US-CA#1
US-CA#2
US-NJ#9
要切换到服务器,我必须使用protonvpn c UK#13
.
我想每隔一小时无限地循环浏览此列表中的 VPN 服务器。
换句话说,一小时后它将运行protonvpn c UK#13
2小时后它将运行protonvpn c US-VA#2
3小时后它将运行protonvpn c US-CA#1
4小时后它将运行protonvpn c US-CA#2
5小时后它将运行protonvpn c US-NJ#9
6小时后它将运行protonvpn c UK#13
7小时后它将运行protonvpn c US-VA#2
8小时后它将运行protonvpn c US-CA#1
……
我怎样才能做到这一点?
答案1
您也可以使用简单的 bash 脚本来完成此操作
#!/bin/bash
sites=("UK#13" "US-VA#2" "US-CA#1" "US-CA#2" "US-NJ#9")
while true;
do
for site in ${sites[@]};
do
echo "Connecting to $site"
sleep 1
done
done
更改sleep 1
为sleep 3600
并添加您的 protonvpn 命令而不是echo
.
答案2
简单的切换脚本和配置文件运行在计划任务或者系统定时器应该足够了。
#!/usr/bin/env bash
set -euo pipefail
SWITCHFILE='/tmp/switch'
switch_to="$(head -1 $SWITCHFILE)"
sed -i '1d' "$SWITCHFILE"
echo "$switch_to" >> "$SWITCHFILE"
protonvpn c "$switch_to"
配置文件:
UK#13
US-VA#2
US-CA#1
US-CA#2
US-NJ#9
这是脚本工作的解释。有一个配置文件(将其放在比 /tmp 更安全的地方),其中包含要循环浏览的服务器列表。该脚本读取第一个并将其保存到$switch_to
.然后它删除第一行(即命令sed
)并将其附加到文件末尾。然后根据请求调用protonvpn进行切换。