[Bug 830] New: 關於iptables影響服務器性能事宜
bugzilla-daemon at netfilter.org
bugzilla-daemon at netfilter.org
Wed Jun 26 22:21:23 CEST 2013
https://bugzilla.netfilter.org/show_bug.cgi?id=830
Summary: 關於iptables影響服務器性能事宜
Product: iptables
Version: unspecified
Platform: All
OS/Version: RedHat Linux
Status: NEW
Severity: major
Priority: P5
Component: iptables
AssignedTo: netfilter-buglog at lists.netfilter.org
ReportedBy: higkoohk at gmail.com
Estimated Hours: 0.0
非常高興今天找到可以發出此問題的地方,請允許我啰嗦幾句。
在使用Linux的iptables時,我發現它會嚴重影響服務器性能,特別是在高壓力服務器上感知明顯。
比如:一臺每秒處理過萬次http請求的web服務器,即使iptables不設置任何規則,你會發現:
1、服務器性能開始下降
2、很快出現 iptables ip_conntrack table full dropping packet
OK,針對 ip_conntrack
表滿的問題,可以調大表,但表越大越慢,根本問題是這些表裏記錄了所有tcp各種狀態!其實我並不關心tcp狀態,只需要ip地址的過濾功能。感覺iptables太重了,有沒辦法輕量化?
另外,我也找到 ip_conntrack 的其他解決辦法:使用 raw 表,開啟 notrack 標記,這樣符合規則的連接就不會被記錄到
ip_conntrack 表,iptables 的性能明顯提升!
但是,開啟了 notrack 功能會影響服務器的正常功能,比如對外進行http請求、dns解析。
所以,生產環境,我們只對服務端口,譬如80開啟notrack,但最終這不是一個好辦法。因為可能有其他端口也需要維護,這件事情就變得非常複雜。
求支援!
--
Configure bugmail: https://bugzilla.netfilter.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching all bug changes.
More information about the netfilter-buglog
mailing list