transmission-cli制作种子/ipset+iptables屏蔽指定国家的IP-荒岛

transmission-cli制作种子/ipset+iptables屏蔽指定国家的IP-荒岛

安装需要用到的工具:
apt -y install transmission-cli mediainfo ipset

创建种子:

transmission-create -p -c lala.im -s 1024 -t https://tp.m-team.cc/announce.php -o /opt/xxx.torrent [要创建的文件名或者目录]

注:

-p 代表创建私有种子。

-c 是可选项,作用是添加种子的注释。

-s 分块大小,自行根据文件体积合理填写。

-t tracker服务器地址。

-o 种子输出路径和文件名

所有参数的后面跟上要做种的目录或是文件名。

有些PT站发个毛片还非要贴上视频的编码等信息,那这里可以用mediainfo,用法很简单命令后面跟上要查看的媒体文件名即可,例如:

mediainfo 326MAG-003.mp4

复制回显的内容粘贴并发布就行了:

不想让自己做的种子被某些盒子连上?可以使用ipset+iptables屏蔽指定国家的IPv4/v6。注意!这样做很多时候有适得其反的效果,打个最简单的比方:你必须将所有盒子的IP都屏蔽干净,一个不剩,哪怕只有一个盒子连上你的种子,一旦他从你这里下载完,它就可以立即和其他被你屏蔽的盒子连接,这样你会发现到头来你的上传还不如被你屏蔽的那些盒子多。

这里我只拿德国和法国的IP做演示,首先需要下载IPv4数据库:

mkdir -p ipdeny && cd ipdeny  wget http://www.ipdeny.com/ipblocks/data/countries/all-zones.tar.gz  tar -xzvf all-zones.tar.gz

然后新建两个ipset链:

ipset -N de hash:net  ipset -N fr hash:net

接着将指定国家的IPv4添加到链:

for k in $(cat ~/ipdeny/de.zone); do ipset -A de $k; done  for i in $(cat ~/ipdeny/fr.zone); do ipset -A fr $i; done

现在添加iptables规则即可完成屏蔽:

iptables -A INPUT -m set