如果我从 127.0.0.1 通过端口 3306 对 MYSQL 数据库进行 10 亿或 1 万亿次查询。
与
如果我也通过端口 3306 从 127.0.0.1 对 MYSQL 数据库进行相同数量的查询。
但有一点不同。在这种情况下,我将在以下位置使用此规则iptables
:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -s 127.0.0.1 -j ACCEPT
而不是常规的..
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
- 会产生任何速度后果吗?
- 会产生任何效率后果吗?
因为人心会说:
如果必须由 iptables 验证它实际上是 127.0.0.1 而不是尝试建立连接的其他 IP 地址,怎么可能没有后果”
答案1
对于数十亿或万亿的巨大流量,您的第二条规则:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -s 127.0.0.1 -j ACCEPT
可能会慢一些,因为它必须将数据包的源地址与127.0.0.1
.虽然你的第一条规则是:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
将接受来自端口 3306 的所有请求任何地方。这是安全方面的一个大漏洞,您不应该在生产中使用此规则。