ios客户端做屏蔽_Transmission 屏蔽迅雷反吸血脚本

介绍了一款用于定时获取并屏蔽使用迅雷系客户端IP的脚本,该脚本适用于Transmission用户,通过Transmission-Remote工具获取指定客户端的IP地址,并将其添加到屏蔽列表中。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

更新了Powershell版本, arm可用, 功能更加完善了.

https://github.com/GrandArth/Transmission-Client-Block-Scirpt​github.com

如题, 这是一个用来定时将使用迅雷系客户端的ip加入屏蔽列表的脚本.

现在win10主流的Bitcomet自带完善的客户端屏蔽, Linux比较主流的QB也有人写了基于WEB API的脚本, 相反, 反而是cli支持非常完善的Transmission没有相应的简化脚本.

在此之前

本脚本的原理就是使用Transmission-Remote获取某特定客户端的ip, 将其格式化输出到反代理目录下的txt文件中, 再同样利用Transmission-Remote更新blocklist (注意, blocklist的url必须要预先写好, 指向本机的反代理目录下的文件).

在更新之后, 脚本会暂停所有任务并在2s之后重开, 以便禁止名单生效.

似乎不用重开也行 注释掉了

建议使用crontab对这个脚本进行定时, 我个人是每10min跑一次.

既然重开不需要了 干脆2min一检查也挺好的

脚本

#!/bin/zsh
Username=写你的名字
#transmission webgui的用户名
Password=写你的密码
#transmission webgui的密码
ClientList=(Xunlei Thunder "-XL0012-")
#这里指定要修改的客户端列表, 每个客户端用空格分隔
ListAddress="/var/www/html/blocklist.txt"
#这里写你的list的储存位置, 我用的apache反代理

for CertainClient ($ClientList){
transmission-remote --auth $Username:$Password  -t all -ip |grep $CertainClient |awk '{print $1}' | xargs -L1 -I {ip} echo "{ip}" >> "templist.txt"
}
Temp=("${(@f)$(< templist.txt)}")
#这里生成的临时文件之后会被自动清理
for EachIp in $Temp 
do
if [ $(grep -c $EachIp $ListAddress) -gt 0 ]
		then
			echo "$EachIp exist, not adding"
	else
		echo "$EachIp didn't exist, adding"
		echo "$EachIp - $EachIp , 0 , Autogen" >> $ListAddress
	fi
done

transmission-remote --auth $Username:$Password --blocklist-update
#echo "clocklist updated"
#transmission-remote --auth $Username:$Password  -t all --stop
#echo "current session stopped, starting after 2 seconds"
#sleep 2s
#transmission-remote --auth $Username:$Password  -t all --start
#echo "session started"
#好像不用重开也行
rm "templist.txt"

菜鸡声明

我本人是个powershell用户, 除了Jetson Nano因为pwsh不支持用的zsh以外, 其他机器用的都是powershell core 7, 上述代码是我花费中午看动画片的时间, 用两个小时一边了解bash一边查Stackoverflow写出来的, 不用估计, 肯定是垃圾中的垃圾.

但即便如此, 我觉得这个思路应该是屏蔽指定客户端的最好的思路了, 如果有擅长BASH/ZSH的人看到了, 能用老手的方式重新写出来, 能造福更多用户, 我就感激不尽了.

此外, 国内大部分用户都是动态ip, 这个列表可以时不时清理一下. 我是每2天清理一次.

f44096482da774e5eb765c4671b91b86.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值