iptables大量插入含有ip地址的规则性能优化

当iptables大量插入含有ip地址的规则时,iptables的性能会比较差,此时可以考虑使用ipset(ip集合)。

#!/bin/sh

prepare_net_kill_ipts() {
	ipset -! create apple_domains hash:ip netmask 24
	domains="itunes.apple.com init.itunes.apple.com s.mzstatic.com p49-buy.itunes.apple.com"
	for d in $domains; do
		ips=$(resolveip $d)
		for i in $ips; do
			ipset -! add apple_domains $i
		done
	done
}

if [ $# -lt 1 ]; then
	echo "Specify command: //"
	exit 1
fi
cmd=$1

case $cmd in
	prepare)
		prepare_net_kill_ipts
		;;
	enable)
		prepare_net_kill_ipts
		;;
	disable)
		;;
	*)
		echo "Invalid command."
		exit 1
		;;
esac


你可能感兴趣的:(OpenWrt)