nf_conntrack
iptablesはパケットフィルタリングを行う際に、nf_conntrack(ip_conntrack)というテーブルでtcpの接続を管理する
大量にパケットをフィルタリングする必要のあるサーバーでは、処理の過程で管理テーブルが溢れることがある
溢れが発生するとパケットを弾いてしまう。
実際に溢れが発生したときは、/var/log/messages (CentOS/RHEL)や /var/log/syslog(Debian/Ubuntu)、dmesg で以下のようなメッセージを確認できる
ip_conntrack: maximum limit of 65536 entries exceeded
nf_conntrack: table full, dropping packet.
code:sh
# 現状の設定値
$ cat /proc/sys/net/netfilter/nf_conntrack_max
65536
# 値の変更
vim /etc/sysctl.conf
net.nf_conntrack_max = 65536 # 適切そうな値に変更する
# 変更の反映
sysctl -p
関連情報
ip_conntrackの設定を変更しても初期値に戻る場合 | ex1-lab