一两天后,我的防火墙变得非常慢。防火墙后面有 5 台机器,它们也变得非常慢。硬件重启后,防火墙又变快了。
我当前的 conntrack 限制:
[root@fw ~]# cat /proc/sys/net/ipv4/ip_conntrack_max
100000
平均连接跟踪表数量:
[root@fw ~]# cat /proc/net/ip_conntrack |wc -l
1301
我的 iptables 规则:
[root@fw ~]# iptables -L -n
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy DROP)
target prot opt source destination
DROP all -- 24.0.0.0/8 0.0.0.0/0
ACCEPT udp -- $IP_155 0.0.0.0/0 udp
ACCEPT udp -- 0.0.0.0/0 $IP_155 udp dpt:8888
ACCEPT udp -- 0.0.0.0/0 $IP_155 udp dpt:9999
ACCEPT udp -- 0.0.0.0/0 $IP_155 udp dpt:8777
ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0
ACCEPT all -- $IP_160 $IP_39
ACCEPT all -- $IP_39 $IP_160
ACCEPT all -- $ip_veloX 0.0.0.0/0
ACCEPT all -- 192.168.1.0/24 0.0.0.0/0
ACCEPT all -- 192.168.1.0/24 0.0.0.0/0
ACCEPT all -- 0.0.0.0/0 192.168.1.0/24
ACCEPT all -- 192.168.1.0/24 0.0.0.0/0
ACCEPT all -- 0.0.0.0/0 192.168.1.0/24
ACCEPT all -- 192.168.1.0/24 0.0.0.0/0
ACCEPT all -- 0.0.0.0/0 192.168.1.0/24
ACCEPT tcp -- 0.0.0.0/0 $IP_39 state NEW tcp dpt:2106
ACCEPT tcp -- 0.0.0.0/0 $IP_160 state NEW tcp dpt:2106
ACCEPT tcp -- 0.0.0.0/0 $IP_156 state NEW multiport dports 7777
ACCEPT tcp -- 0.0.0.0/0 $IP_211 state NEW multiport dports 7777
ACCEPT tcp -- 0.0.0.0/0 $IP_215 state NEW multiport dports 7777
ACCEPT tcp -- 0.0.0.0/0 $IP_160 state NEW multiport dports 7777
ACCEPT tcp -- 0.0.0.0/0 $IP_155 state NEW multiport dports 7777
ACCEPT tcp -- 0.0.0.0/0 $IP_155 state NEW multiport dports 8767,9999,8777,14534,51234,6969,7777
ACCEPT tcp -- 0.0.0.0/0 $IP_160 state RELATED,ESTABLISHED
ACCEPT tcp -- 0.0.0.0/0 $IP_156 state RELATED,ESTABLISHED
ACCEPT tcp -- 0.0.0.0/0 $IP_211 state RELATED,ESTABLISHED
ACCEPT tcp -- 0.0.0.0/0 $IP_215 state RELATED,ESTABLISHED
ACCEPT tcp -- 0.0.0.0/0 $IP_39 state RELATED,ESTABLISHED
ACCEPT tcp -- 0.0.0.0/0 $IP_155 state RELATED,ESTABLISHED
ACCEPT tcp -- $IP_160 0.0.0.0/0 state RELATED,ESTABLISHED
ACCEPT tcp -- $IP_156 0.0.0.0/0 state RELATED,ESTABLISHED
ACCEPT tcp -- $IP_211 0.0.0.0/0 state RELATED,ESTABLISHED
ACCEPT tcp -- $IP_215 0.0.0.0/0 state RELATED,ESTABLISHED
ACCEPT tcp -- $IP_39 0.0.0.0/0 state RELATED,ESTABLISHED
ACCEPT tcp -- $IP_155 0.0.0.0/0 state RELATED,ESTABLISHED
ACCEPT tcp -- $IP_160 0.0.0.0/0 state NEW
ACCEPT tcp -- $IP_156 0.0.0.0/0 state NEW
ACCEPT tcp -- $IP_211 0.0.0.0/0 state NEW
ACCEPT tcp -- $IP_215 0.0.0.0/0 state NEW
ACCEPT tcp -- $IP_39 0.0.0.0/0 state NEW
ACCEPT tcp -- $IP_155 0.0.0.0/0 state NEW
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
[root@fw ~]#
[root@fw ~]# df -h 文件系统大小已用可用使用率% 挂载在 /dev/sda1 142G 21G 114G 16% /
答案1
在这种情况下,它不会直接有帮助,但总是把
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
作为第一条规则。这将为所有属于已建立连接的数据包节省一些 CPU 周期。
如果您有 DROP 策略,则输入/输出也类似。
机器的负载是多少[从 w 或 top 取]
你在 dmesg 中发现一些有趣的东西吗?
你做了一些地址翻译吗?
答案2
假设您指的是带宽变慢,我会首先尝试重新加载 iptables(root$ /etc/init.d/iptables reload,或者手动刷新并重新加载规则),看看是否能解决您的问题。如果能,那么您就知道是您的 fw 配置问题。如果没有,那么您可以开始监控您的系统,看看是否有什么东西在消耗资源。
我猜是前一个问题,一般是和你的 nat 转换表满了有关。你可以用 '-t nat' 和任何合适的选项来查看它。
答案3
除了上述提到的其他可能情况外,还有一个可能是您的某个网关 NIC 开始出现故障。当速度开始“变慢”时,运行 ifconfig 并检查数据包计数。特别是检查错误计数。