kernel: printk: 2 messages suppressed.
2012-04-20 16:33
801 查看
解决方案:
(1) 加大 ip_conntrack_max 值:
查出原本的 ip_conntrack_max 值,指令: cat /proc/sys/net/ipv4/ip_conntrack_max
写入理想的数值 (每一个 ip_conntrack buffer 会占用 292 Bytes)
指令: echo “数值” > /proc/sys/net/ipv4/ip_conntrack_max
例如: echo “163840″ >/proc/sys/net/ipv4/ip_conntrack_max
这个效果是暂时的, 如果要每次开机都使用新的数值, 需将上述指令写入 /etc/rc.d/rc.local
或是在 /etc/sysctl.conf 加入: net.ipv4.ip_conntrack_max = 数值
或使用指令: sysctl -w net.ipv4.ip_conntrack_max=数值
(2): 降低 ip_conntrack timeout 时间
重设:ip_conntrack_tcp_timeout_established (原值: 432000, 单位: 秒)
指令:echo “数值” > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_established
例如:echo “180″ > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_established
开机自动设置的作法同方法(1).
(3):开启 tcp_syncookies
重设:tcp_syncookies (默认值 0)
例如:echo ’1′> /proc/sys/net/ipv4/tcp_syncookies
开机自动设置的作法同方法(1).
经过以上设置后,系统日志出现一条:kernel: possible SYN flooding on port 80. Sending cookies.后不再出现:kernel: printk: xxx messages suppressed. 的提示。访问网站明显感觉速度提升。
附其他相关命令:
查看目前 ip_conntrack buffer 使用状况
指令: grep conn /proc/slabinfo
#syn
sysctl -w net.ipv4.tcp_max_syn_backlog=2048
sysctl -w net.ipv4.tcp_synack_retries=3
sysctl -w net.ipv4.tcp_syncookies=1
#Syn flood
#iptables -A INPUT -p tcp –syn -m limit –limit 1/s -j ACCEPT
#iptables -A FORWARD -p tcp –tcp-flags SYN,ACK,FIN,RST RST -m limit –limit 1/s -j ACCEPT
#ping of death
#iptables -A FORWARD -p icmp –icmp-type echo-request -m limit –limit 1/s -j ACCEPT
vi/etc/sysctl.conf http://hi.baidu.com/icelandbjork/blog/item/48721da1a1c4518246106435.html 5.12 掉包解决方法
echo “965535″ > /proc/sys/net/ipv4/ip_conntrack_max
echo 180>/proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_established
echo 120 > /proc/sys/net/ipv4/neigh/default/gc_stale_time
echo 1024 > /proc/sys/net/ipv4/neigh/default/gc_thresh1
echo 4096 > /proc/sys/net/ipv4/neigh/default/gc_thresh2
echo 8192 > /proc/sys/net/ipv4/neigh/default/gc_thresh3
限制同一ip连接数:
iptables -I INPUT -m connlimit –connlimit-above 5 -p tcp –dport 80 -j REJECT http://myeblog.3322.org/1184.html https://bbs.et8.net/bbs/showthread.php?t=977006
(1) 加大 ip_conntrack_max 值:
查出原本的 ip_conntrack_max 值,指令: cat /proc/sys/net/ipv4/ip_conntrack_max
写入理想的数值 (每一个 ip_conntrack buffer 会占用 292 Bytes)
指令: echo “数值” > /proc/sys/net/ipv4/ip_conntrack_max
例如: echo “163840″ >/proc/sys/net/ipv4/ip_conntrack_max
这个效果是暂时的, 如果要每次开机都使用新的数值, 需将上述指令写入 /etc/rc.d/rc.local
或是在 /etc/sysctl.conf 加入: net.ipv4.ip_conntrack_max = 数值
或使用指令: sysctl -w net.ipv4.ip_conntrack_max=数值
(2): 降低 ip_conntrack timeout 时间
重设:ip_conntrack_tcp_timeout_established (原值: 432000, 单位: 秒)
指令:echo “数值” > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_established
例如:echo “180″ > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_established
开机自动设置的作法同方法(1).
(3):开启 tcp_syncookies
重设:tcp_syncookies (默认值 0)
例如:echo ’1′> /proc/sys/net/ipv4/tcp_syncookies
开机自动设置的作法同方法(1).
经过以上设置后,系统日志出现一条:kernel: possible SYN flooding on port 80. Sending cookies.后不再出现:kernel: printk: xxx messages suppressed. 的提示。访问网站明显感觉速度提升。
附其他相关命令:
查看目前 ip_conntrack buffer 使用状况
指令: grep conn /proc/slabinfo
#syn
sysctl -w net.ipv4.tcp_max_syn_backlog=2048
sysctl -w net.ipv4.tcp_synack_retries=3
sysctl -w net.ipv4.tcp_syncookies=1
#Syn flood
#iptables -A INPUT -p tcp –syn -m limit –limit 1/s -j ACCEPT
#iptables -A FORWARD -p tcp –tcp-flags SYN,ACK,FIN,RST RST -m limit –limit 1/s -j ACCEPT
#ping of death
#iptables -A FORWARD -p icmp –icmp-type echo-request -m limit –limit 1/s -j ACCEPT
vi/etc/sysctl.conf http://hi.baidu.com/icelandbjork/blog/item/48721da1a1c4518246106435.html 5.12 掉包解决方法
echo “965535″ > /proc/sys/net/ipv4/ip_conntrack_max
echo 180>/proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_established
echo 120 > /proc/sys/net/ipv4/neigh/default/gc_stale_time
echo 1024 > /proc/sys/net/ipv4/neigh/default/gc_thresh1
echo 4096 > /proc/sys/net/ipv4/neigh/default/gc_thresh2
echo 8192 > /proc/sys/net/ipv4/neigh/default/gc_thresh3
限制同一ip连接数:
iptables -I INPUT -m connlimit –connlimit-above 5 -p tcp –dport 80 -j REJECT http://myeblog.3322.org/1184.html https://bbs.et8.net/bbs/showthread.php?t=977006
相关文章推荐
- 解决系统日志: kernel: printk: xxxx messages suppressed.问题
- 解决系统日志: kernel: printk: xxxx messages suppressed. 问题
- 服务器日志出现"kernel: printk: X messages suppressed"
- printk X messages suppressed
- Nat报错“printk: xxxx messages suppressed”
- Disabling the flood of kernel messages in Debian console
- /proc/sys/kernel/printk
- kernel的console_init和printk
- Linux Kernel printk, early_printk, early_print, printascii
- /proc/sys/kernel/printk
- /proc/sys/kernel/printk
- messages suppressed
- /proc/sys/kernel/printk
- /proc/sys/kernel/printk
- kernel printk|pr_info 调试基本原则
- [kernel]内核日志及printk结构分析
- kernel/printk.c
- Linux kernel printk的分析
- How to get kernel messages from Android?
- echo 0 > /proc/sys/kernel/printk