“”不是有效的 CIDR 块:无效的 CIDR 地址

C_Z*_*_Z_ 3 terraform

我在 terraform 中定义了一个 VPC:

\n
//vpc.tf\nresource "aws_vpc" "my_vpc" {\n  cidr_block = "10.0.0.0/16"\n}\n\n
Run Code Online (Sandbox Code Playgroud)\n

我正在尝试创建一个安全组:

\n
// securityGroup.tf\nresource "aws_security_group" "allow_tls" {\n  name        = "allow_tls"\n  description = "Allow TLS inbound traffic"\n  vpc_id      = aws_vpc.my_vpc.id\n  ingress {\n    description      = "TLS from VPC"\n    from_port        = 443\n    to_port          = 443\n    protocol         = "tcp"\n    cidr_blocks      = [aws_vpc.my_vpc.cidr_block]\n    ipv6_cidr_blocks = [aws_vpc.my_vpc.ipv6_cidr_block]\n  }\n  egress {\n    from_port        = 0\n    to_port          = 0\n    protocol         = "-1"\n    cidr_blocks      = ["0.0.0.0/0"]\n    ipv6_cidr_blocks = ["::/0"]\n  }\n}\n
Run Code Online (Sandbox Code Playgroud)\n

然而,当我跑步时terraform plan出现错误Error: "" is not a valid CIDR block: invalid CIDR address:

\n

我认为cidr_block我的 vpc 中定义的内容可供 securityGroup 使用,但事实似乎并非如此。如何正确引用cidr_block从我的 vpc 中正确引用?

\n

完整的错误输出:

\n
\xe2\x94\x82 Error: "" is not a valid CIDR block: invalid CIDR address: \n\xe2\x94\x82 \n\xe2\x94\x82   with module.shared.aws_security_group.allow_tls,\n\xe2\x94\x82   on modules/shared/securityGroup.tf line 1, in resource "aws_security_group" "allow_tls":\n\xe2\x94\x82    1: resource "aws_security_group" "allow_tls" {\n
Run Code Online (Sandbox Code Playgroud)\n

Mar*_*k B 5

您尚未为您的 VPC 配置任何 IPV6 地址。因此,您的安全组中的这一行应该被删除:

ipv6_cidr_blocks = [aws_vpc.my_vpc.ipv6_cidr_block]
Run Code Online (Sandbox Code Playgroud)