阻止 ip cloudflare 防火墙规则,阻止除两个国家之外的所有国家

block ip cloudflare firewall rules, to block all countries but two

我正在设置我的 cloudflare 帐户。我想阻止所有国家的 ip 但不是秘鲁和玻利维亚。

在按钮上下文中...我做了以下操作:

   country not equal to Peru and country not equal to Bolivia, block

虽然我不知道是否正确。

  (ip.geoip.country ne "BO" and ip.geoip.country ne "PE")

我输入了这个表达式,但实际上我不知道是否正确。使用哪个 ORAND

预计

block everything, but Perú and Bolivia.

谢谢。

我不使用 cloudflare,但看起来你想在这里使用 AND。如果该国家不等于玻利维亚并且也不等于秘鲁,则阻止它。

为什么不能使用 OR?

你在表扬中问为什么不能使用 OR。原因是因为你要否定等于,所以你需要使用 OR。它归结为布尔逻辑。如果您使用的国家不等于秘鲁或国家不等于玻利维亚,那么您最终会阻止一切。要了解原因,让我们检查一下使用 OR 会出现的逻辑:

  • 如果该国家/地区是秘鲁,那么它会因为不是玻利维亚而被阻止
  • 如果该国家/地区是玻利维亚,那么它会因为不是秘鲁而被阻止
  • 如果国家两者都不是,则将因两者都不是而被封锁

这显然不是你想要的。