gpt4 book ai didi

postgresql - iptables DROP 不会静默丢弃数据包

转载 作者:行者123 更新时间:2023-11-29 13:59:34 26 4
gpt4 key购买 nike

我有两台服务器,一台作为备用服务器,另一台作为事件服务器。从备用 pgpool 不断检查 postgres 是否在另一台服务器上工作。我正在尝试模拟 pgpool 对事件服务器的请求超时的情况,并尝试为此使用 iptables DROP。

根据我所读到的内容,DROP 选项会在源不了解的情况下静默丢弃数据包,并且需要很长时间才能失败(源知道)。我在事件服务器的 iptables 中使用了以下条目:

iptables -A INPUT -p tcp -s <standby server ip> \
-m state --state NEW,ESTABLISHED --dport 5432 -j DROP

通过这样做,我可以模拟超时,但超时太快(甚至不到一秒)。

谁能解释一下所有引用资料中的“需要很长时间才能失败”是什么意思?以及我是否可以使用任何选项来增加失败所需的时间。

最佳答案

根据规则在您的规则集中的位置,它可能不会触发并且数据包来自 <standby server ip>可能会遇到 ALLOW规则。

您可以主动监控iptables使用 watch 查看正在触发的规则

$ sudo watch -n1 "iptables -vnL"

“需要很长时间才能失败”意味着DROP告诉 iptables 不要用 tcp 重置数据包或 icmp 错误来响应数据包的发送者。这会导致发件人在关闭尝试的连接之前必须等待其指定的超时期限。

关于postgresql - iptables DROP 不会静默丢弃数据包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23558446/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com