iptables大量挿入ipアドレスを含むルール性能最適化
687 ワード
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