我认为目前这是不可能的,但我会尝试一下。
VNET“main”包含子网“A”和“B”。
子网 A 包含虚拟机 A1。子网 B 包含虚拟机 B1 和 B2。
默认情况下(即使将 NSG 应用于子网),由于标准的“AllowVnetInBound”规则,两个子网中的所有内容都可以相互通信。
如果在子网 B 上设置的 DenyAll 规则的优先级高于“AllowVnetInBound”规则,则会阻止 A1 与 B1 和 B2 通信,但由于 NSG 规则实际上是在 NIC 级别应用的,因此也会阻止 B1 与 B2 通信,即子网级别 NSG 只是批量应用 NIC 级别 NSG 的一种便捷方式。
那么,有没有办法可以防止子网 A 与子网 B 通信,而无需中断 B1 和 B2 之间的所有流量,或者在 NSG 中指定每个 B1 到 B2 规则?
答案1
是的。
指定两个拒绝规则。一个以子网 A 的网络掩码作为源,一个以子网 B 的网络掩码作为目标,反之亦然。