为什么防火墙/服务器在 1-2 天后会变慢?影响防火墙及其后面的机器

为什么防火墙/服务器在 1-2 天后会变慢?影响防火墙及其后面的机器

一两天后,我的防火墙变得非常慢。防火墙后面有 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 并检查数据包计数。特别是检查错误计数。

相关内容