首先需要得到国家IP段,列表下载地址:http://www.ipdeny.com/ipblocks/
方法:
Linux
1、安装ipset
#Debian/Ubuntu系统
apt-get -y install ipset
#CentOS系统
yum -y install ipset
2、创建规则
#创建一个名为cn的规则
ipset -N cn hash:net
#下载国家IP段
wget -P . http://www.ipdeny.com/ipblocks/data/countries/cn.zone
#将IP段添加到cnip规则中
for i in $(cat /root/cn.zone ); do ipset -A cnip $i; done
3、开始屏蔽
iptables -I INPUT -p tcp -m set --match-set cn src -j DROP
4、解除屏蔽
#-D为删除规则
iptables -D INPUT -p tcp -m set --match-set cn src -j DROP
方法参考:Blocking attack Ips/ddos Ips from China
Windows
1、导入规则
for /f %i in (cn.zone) do netsh advfirewall firewall add rule name="Block %i" dir=in action=block remoteip=%i