文档

Fn::Cidr

更新时间:

调用内部函数Fn::Cidr,自动化创建具有特定网络前缀长度的IP地址范围,返回IPv4 CIDR地址块的数组。

函数声明

  • JSON

    { 
      "Fn::Cidr": [ 
        "ipBlock", 
        "count", 
        "cidrBits" 
      ] 
    }
  • YAML

    • 完整函数名的语法。

      Fn::Cidr:
        - ipBlock
        - count
        - cidrBits
    • 缩写形式。

      !Cidr [ipBlock, count, cidrBits]

参数信息

  • ipBlock:需要被细分为多个子网的原始CIDR地址块。

  • count:要生成的IPv4 CIDR数量。有效的输入值范围为1~256,用于决定最终子网的总数。

  • cidrBits:新CIDR的子网位数。例如,如果为该参数指定值“8”,将创建一个具有“/24”掩码的CIDR。

    说明

    子网位数是子网掩码的逆运算,要计算给定子网位数所需的主机位数,请从32位(IPv4)中减去子网位数。

返回值

CIDR地址块的数组。

使用示例

  • 使用Fn::Cidr从具有“/24”掩码的CIDR创建 6 个具有“/27”子网掩码的CIDR。

    YAML

    !Cidr 
      - "192.168.0.0/24"
      - 6
      - 5

    JSON

    { 
      "Fn::Cidr": [ 
        "192.168.0.0/24", 
        6, 
        5 
      ] 
    }

    返回值:['192.168.0.0/27', '192.168.0.32/27', '192.168.0.64/27', '192.168.0.96/27', '192.168.0.128/27', '192.168.0.160/27']