
Aunque la documentación de GCP afirma que las direcciones IPv6 son compatibles al crear reglas de firewall (https://cloud.google.com/vpc/docs/firewalls) Parece que no puedo lograrlo. De este documento:
- Las reglas del firewall admiten conexiones IPv4. Las conexiones IPv6 también se admiten en redes VPC que tienen IPv6 habilitado. Al especificar un origen para una regla de entrada o un destino para una regla de salida por dirección, puede especificar direcciones o bloques IPv4 o IPv6 en notación CIDR.
- Cada regla de firewall puede contener rangos de IPv4 o IPv6, pero no ambos.
Sin embargo, cuando intento crear una regla de firewall con una dirección IPv6, aparece un error y no me permite guardarla, como se muestra en la siguiente captura de pantalla.
El ejemplo anterior muestra dos ejemplos que probé, pero lo probé con direcciones únicas, con y sin bloques CIDR, etc. Y todos son rechazados. Confirmé que la subred de VPC tiene IPv6 habilitado.
¿Me estoy perdiendo de algo?
Respuesta1
La GUI tampoco me funciona, pero pude crear correctamente las reglas del firewall con un comando de gcloud equivalente.
Para probar, creé una nueva VPC, una nueva subred y una nueva regla de firewall:
error@cloudshell:~ (strange-passage-193919)$ gcloud compute networks create ipv6test --project=strange-passage-193919 --subnet-mode=custom --mtu=1460 --bgp-routing-mode=regional
Created [https://www.googleapis.com/compute/v1/projects/strange-passage-193919/global/networks/ipv6test].
NAME SUBNET_MODE BGP_ROUTING_MODE IPV4_RANGE GATEWAY_IPV4
ipv6test CUSTOM REGIONAL
Instances on this network will not be reachable until firewall rules
are created. As an example, you can allow all internal traffic between
instances as well as SSH, RDP, and ICMP by running:
$ gcloud compute firewall-rules create <FIREWALL_NAME> --network ipv6test --allow tcp,udp,icmp --source-ranges <IP_RANGE>
$ gcloud compute firewall-rules create <FIREWALL_NAME> --network ipv6test --allow tcp:22,tcp:3389,icmp
error@cloudshell:~ (strange-passage-193919)$ gcloud compute networks subnets create ipv6test --project=strange-passage-193919 --range=10.16.0.0/20 --network=ipv6test --region=us-west2
Created [https://www.googleapis.com/compute/v1/projects/strange-passage-193919/regions/us-west2/subnetworks/ipv6test].
NAME REGION NETWORK RANGE STACK_TYPE IPV6_ACCESS_TYPE IPV6_CIDR_RANGE EXTERNAL_IPV6_CIDR_RANGE
ipv6test us-west2 ipv6test 10.16.0.0/20 IPV4_ONLY
error@cloudshell:~ (strange-passage-193919)$ gcloud compute networks subnets update ipv6test --project=strange-passage-193919 --stack-type=IPV4_IPV6 --ipv6-access-type=EXTERNAL --region=us-west2
Updated [https://www.googleapis.com/compute/v1/projects/strange-passage-193919/regions/us-west2/subnetworks/ipv6test].
error@cloudshell:~ (strange-passage-193919)$ gcloud compute --project=strange-passage-193919 firewall-rules create ruletest --direction=INGRESS --priority=1000 --network=ipv6test --action=ALLOW --rules=tcp:22 --source-ranges=2001:db8::/32
Creating firewall...⠹Created [https://www.googleapis.com/compute/v1/projects/strange-passage-193919/global/firewalls/ruletest].
Creating firewall...done.
NAME NETWORK DIRECTION PRIORITY ALLOW DENY DISABLED
ruletest ipv6test INGRESS 1000 tcp:22 False
error@cloudshell:~ (strange-passage-193919)$