私はARM9プロセッサに基づいて修正されたLinuxバージョンを持っています。うまくいきましたが、昨日、次のエラーが繰り返し発生しました。
kernel: nf_conntrack: table full, dropping packet
2つの質問があります。
- 問題の原因をどのように知ることができますか? (機器が1年以上問題なく動作しています。)
- 私はいくつかの調査を行い、一時的にテーブルサイズを増やしてから
echo "5096" > /proc/sys/net/ipv4/netfilter/ip_conntrack_max
プロセッサを再プログラムすることでこの問題を解決できました。テーブルサイズを永久に増やす方法は?
編集する:(追加情報)
の出力
uname -mrs
:Linux 2.6.30.9 armv5tejl
;の出力cat /proc/version
:。また、このディストリビューションでは。Linux version 2.6.30.9 ([email protected]) (gcc version 4.4.1 (Sourcery G++ Lite 2009q3-67) ) #1 PREEMPT Thu Jan 23 11:58:19 CST 2014
/etc/sysctl.conf
ボード上の2つの物理イーサネットインターフェイスをループバックし、同じVLANに配置してループを作成し、ボードがクラッシュするようにトラフィックを変更しました。この直後に表示されます
kernel: nf_conntrack: table full, dropping packet
。ただし、ループを切断した後もエラーが発生し続けますkernel: nf_conntrack: table full, dropping packet
。これが原因かもしれません(どうやって確認できますか?)
答え1
問題はトラフィックの変化である可能性が高いです。
その項目を次の場所に配置できます/etc/sysctl.conf
。
net.ipv4.netfilter.ip_conntrack_max = 5096
man 5 sysctl.conf
とを参照してくださいman sysctl
。