Permitir que uma rede VPC gere tráfego multicast
Nesta página, descrevemos como configurar recursos em Google Cloud para permitir que produtores de multicast em uma rede VPC enviem tráfego de multicast para um determinado domínio de multicast e um ou mais intervalos de grupo.
Antes de começar
Antes de começar os procedimentos nesta página, atenda aos pré-requisitos nas seções a seguir.
Confirme se as configurações de domínio multicast e intervalo de grupo estão concluídas.
Confirme se as configurações de domínio e intervalo de grupo de multicast para os quais você quer gerar tráfego de multicast estão concluídas, conforme descrito na Visão geral da configuração de multicast. Se necessário, entre em contato com o administrador de multicast do domínio.
Definir o projeto
Os procedimentos nesta página exigem que você crie recursos de produtor multicast no projeto do administrador de multicast. Este projeto contém os recursos de domínio multicast e intervalo de grupo.
Configure a CLI gcloud para usar o projeto do administrador de multicast.
Como alternativa, use a flag --project=MULTICAST_ADMIN_PROJECT para cada comando nos procedimentos a seguir.
gcloud config set project MULTICAST_ADMIN_PROJECT
Substitua MULTICAST_ADMIN_PROJECT pelo ID do
projeto administrador de multicast.
Ativar APIs
Se ainda não tiver feito isso, ative as seguintes APIs.
Para ativar APIs, você precisa da permissão serviceusage.services.enable.
Se você não tiver essa permissão, peça ao administrador do Identity and Access Management (IAM) para conceder a você o papel de administrador do uso de serviço (roles/serviceusage.serviceUsageAdmin).
Para criar recursos de multicast, ative a API
networkservices:gcloud services enable networkservices.googleapis.comPara criar um spoke VPC do Network Connectivity Center, ative a API
networkconnectivity:gcloud services enable networkconnectivity.googleapis.com
Funções exigidas
Para receber as permissões necessárias para configurar recursos de produtor de multicast, peça ao administrador para conceder a você os papéis do IAM a seguir:
-
Para criar e gerenciar recursos de rede:
Administrador de rede do Compute (
compute.networkAdmin) no projeto do administrador de multicast -
Para criar e gerenciar regras de firewall:
Administrador de segurança do Compute (
compute.securityAdmin) no projeto administrador de multicast -
Para criar spokes do Network Connectivity Center:
Administrador de spoke (
networkconnectivity.spokeAdmin) no projeto de administrador de multicast -
Para criar recursos de multicast:
Administrador do multicast (
networkservices.multicastAdmin) no projeto do administrador do multicast
Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
Também é possível conseguir as permissões necessárias usando papéis personalizados ou outros papéis predefinidos.
Criar uma rede VPC e adicioná-la a um hub
Se o domínio de multicast usar uma topologia em estrela do Network Connectivity Center em que há uma ou mais redes VPC de produtores de multicast separadas, conclua as etapas desta seção.
Se o domínio de multicast usar uma única topologia de rede VPC ou uma topologia em estrela do Network Connectivity Center em que a rede do administrador de multicast também atua como a rede produtora de multicast, pule esta etapa e siga diretamente para as etapas de ativação da rede VPC para produzir tráfego de multicast.
Crie uma rede VPC
Esta seção descreve como criar uma rede de nuvem privada virtual (VPC) para gerar tráfego multicast.
Para mais informações sobre como criar redes VPC, consulte Criar e gerenciar redes VPC.
gcloud
Crie uma rede VPC usando o comando
compute networks create.gcloud compute networks create MULTICAST_PRODUCER_NETWORK --subnet-mode=custom
Substitua
MULTICAST_PRODUCER_NETWORKpor um nome para a rede VPC do produtor de multicast.Adicione uma ou mais sub-redes para hospedar produtores de multicast usando o comando
compute networks subnets create.gcloud compute networks subnets create SUBNET \ --network=MULTICAST_PRODUCER_NETWORK \ --range=PRIMARY_RANGE \ --region=REGION
Substitua os seguintes valores:
SUBNET: um nome para a sub-redeMULTICAST_PRODUCER_NETWORK: o nome da rede de produtores de multicast que você criou anteriormentePRIMARY_RANGE: o intervalo IPv4 principal da sub-rede, em notação CIDR. Saiba mais em Intervalos de sub-rede IPv4.REGION: a região do Google Cloud em que a nova sub-rede é criada. Precisa ser uma região compatível com multicast, comous-east5.
adicionar regras de firewall
Esta seção descreve como criar uma regra de firewall na rede VPC do produtor de multicast para tráfego de multicast.
Para criar outras regras de firewall, como para SSH, consulte Criar regras de firewall da VPC.
Permitir tráfego multicast de saída
Esta seção descreve como criar uma regra de firewall que permite o tráfego de saída multicast da rede VPC.
Todas as redes VPC têm uma regra padrão de permissão de saída IPv4 com a menor prioridade (65535). Se não houver uma regra de prioridade mais alta que bloqueie explicitamente o tráfego de saída, não será necessário concluir esta etapa. Para mais informações, consulte Regras implícitas.
Esse comando é preenchido previamente com um exemplo de nome de regra de firewall. O nome de uma regra de firewall precisa ser exclusivo em um projeto.
gcloud
Para criar uma regra de firewall que permita o tráfego de saída multicast
da rede VPC, use o
comando compute firewall-rules create.
gcloud compute firewall-rules create allow-multicast-egress --direction=EGRESS \ --priority=1000 \ --network=MULTICAST_PRODUCER_NETWORK \ --action=ALLOW \ --rules=udp[:PORT[-PORT]] \ --destination-ranges=MULTICAST_GROUP_IP_RANGES
Substitua os seguintes valores:
MULTICAST_PRODUCER_NETWORK: o nome da rede de produtores de multicast que você criou anteriormentePORT: uma lista de portas a que a regra de firewall se aplica.O Google Cloud usaudppara tráfego multicast. Uma porta ou um intervalo de portas pode ser especificado após o protocolo a que a regra de firewall se aplica no tráfego por portas específicas. Se nenhuma porta ou intervalo de portas for especificado, as conexões por todos os intervalos serão aplicadas.Por exemplo, especifique
--rules=udp:1234para permitir o tráfego multicast pela porta1234.Se quiser, use
--rules=allpara permitir todos os protocolos e portas.MULTICAST_GROUP_IP_RANGES: os intervalos de endereços IP dos grupos multicast para os quais os produtores de multicast enviam tráfego. Os intervalos de endereços IP multicast precisam ser de classe D. Por exemplo, é possível usar224.0.0.0/4para permitir todo o tráfego multicast.
Adicionar a rede VPC a um hub do Network Connectivity Center
Nesta seção, descrevemos como adicionar sua rede VPC ao hub do Network Connectivity Center criado pelo administrador de multicast. Para adicionar sua rede, crie um spoke da VPC no grupo center.
Para mais informações, consulte Topologia em estrela e Criar um spoke VPC na documentação do Network Connectivity Center.
gcloud
Para adicionar sua VPCnetwork como um spoke central a um hub, use o
comando network-connectivity spokes linked-vpc-network create.
gcloud network-connectivity spokes linked-vpc-network create SPOKE_NAME \
--hub=projects/MULTICAST_ADMIN_PROJECT/locations/global/hubs/HUB_NAME \
--vpc-network=MULTICAST_PRODUCER_NETWORK \
--group="center" \
--global \
--include-export-ranges=INCLUDE_RANGES
Substitua os seguintes valores:
SPOKE_NAME: um nome para o spokeMULTICAST_ADMIN_PROJECT: o ID do projeto do administrador de multicastHUB_NAME: o nome do hub da central de conectividade de rede criado pelo administrador de multicast.MULTICAST_PRODUCER_NETWORK: o nome da rede de produtores de multicast que você criou anteriormenteVocê também pode fornecer o URI da rede de produtores de multicast usando o seguinte formato:
projects/MULTICAST_ADMIN_PROJECT/global/networks/MULTICAST_PRODUCER_NETWORK.INCLUDE_RANGES: uma lista separada por vírgulas de intervalos de endereços IP a serem exportados para o hub.Por padrão, o spoke exporta todos os intervalos de sub-rede. Para evitar a sobreposição com outros spokes no hub, especifique quais intervalos de sub-rede exportar. Se você especificar intervalos de sub-rede, inclua os intervalos que hospedam produtores de multicast e quaisquer outros intervalos necessários para a comunicação com outros spokes, como para tráfego unicast.
Google Cloud proíbe sobreposições de sub-redes nos spokes da VPC, conforme descrito em Unicidade da rota de sub-rede. Para mais informações sobre como usar filtros de exportação para evitar sobreposição, consulte Conectividade de VPC com filtros de exportação.
Permitir que uma rede VPC gere tráfego multicast
Esta seção descreve as etapas necessárias para ativar os produtores de multicast em uma rede VPC para enviar tráfego multicast para um determinado domínio e um ou mais intervalos de grupo.
Adicionar a rede VPC do produtor de multicast a um domínio
Nesta seção, descrevemos como adicionar uma rede VPC de produtor de multicast a um domínio criando uma associação de produtor de multicast entre a rede e o domínio.
Siga estas etapas para cada zona em que você quer hospedar produtores de multicast.
gcloud
Para adicionar uma rede VPC de produtor de multicast a um domínio, use o
comando network-services multicast-producer-associations create.
gcloud network-services multicast-producer-associations create PRODUCER_ASSOCIATION_NAME \
--multicast-domain-activation="projects/ADMIN_PROJECT/locations/ZONE/multicastDomainActivations/DOMAIN_ACTIVATION_NAME" \
--network=projects/ADMIN_PROJECT/locations/global/networks/MULTICAST_PRODUCER_NETWORK \
--location=ZONE
Substitua os seguintes valores:
PRODUCER_ASSOCIATION_NAME: um nome para a associação do produtor de multicastADMIN_PROJECT: o ID do projeto do administrador de multicastZONE: uma zona em que o administrador ativou o domínio de multicast e em que você hospeda produtores de multicastDOMAIN_ACTIVATION_NAME: o nome da ativação de domínio criada pelo administrador de multicast.MULTICAST_PRODUCER_NETWORK: a rede VPC que produz tráfego multicast. A rede do administrador de multicast ou uma rede de produtor de multicast separada, dependendo da topologia de multicast do domínio.
API
Para adicionar uma rede VPC de produtor de multicast a um domínio, use o
método multicastProducerAssociations.create.
POST https://networkservices.googleapis.com/v1/projects/ADMIN_PROJECT/locations/ZONE/multicastProducerAssociations?multicastProducerAssociationId=PRODUCER_ASSOCIATION_NAME
{
"multicastDomainActivation": "projects/ADMIN_PROJECT/locations/ZONE/multicastDomainActivations/DOMAIN_ACTIVATION_NAME",
"network": "projects/ADMIN_PROJECT/locations/global/networks/MULTICAST_PRODUCER_NETWORK"
}
Substitua os seguintes valores:
PRODUCER_ASSOCIATION_NAME: um nome para a associação do produtor de multicastADMIN_PROJECT: o ID do projeto do administrador de multicastZONE: uma zona em que o administrador ativou o domínio multicast e em que você hospeda produtores multicast.DOMAIN_ACTIVATION_NAME: o nome da ativação de domínio criada pelo administrador de multicast.MULTICAST_PRODUCER_NETWORK: a rede VPC que produz tráfego multicast. A rede do administrador de multicast ou uma rede de produtor de multicast separada, dependendo da topologia de multicast do domínio.
Ativar a rede VPC do produtor de multicast para um intervalo de grupo
Esta seção descreve como ativar uma rede VPC de produtor de multicast para um intervalo de grupo.
Siga estas etapas para cada intervalo de grupo de multicast e zona em que você quer gerar tráfego de multicast.
gcloud
Para ativar uma rede VPC de produtor de multicast para um intervalo de grupo, use o
comando network-services multicast-group-producer-activations create.
gcloud network-services multicast-group-producer-activations create GROUP_PRODUCER_ACTIVATION_NAME \
--multicast-producer-association="projects/ADMIN_PROJECT/locations/ZONE/multicastProducerAssociations/PRODUCER_ASSOCIATION_NAME" \
--multicast-group-range-activation="projects/ADMIN_PROJECT/locations/ZONE/multicastGroupRangeActivations/GROUP_RANGE_ACTIVATION_NAME" \
--location=ZONE
Substitua os seguintes valores:
GROUP_PRODUCER_ACTIVATION_NAME: um nome para a ativação do produtor do grupo de multicastADMIN_PROJECT: o ID do projeto do administrador de multicastZONE: uma zona em que a rede de produtores de multicast será ativada. A associação de produtor de multicast e a ativação do intervalo do grupo multicast correspondentes também precisam existir na zona.PRODUCER_ASSOCIATION_NAME: o nome da associação de produtor de multicast que você criou anteriormenteGROUP_RANGE_ACTIVATION_NAME: o nome da ativação do intervalo do grupo multicast criada pelo administrador de multicast
API
Para ativar uma rede VPC de produtor de multicast para um intervalo de grupo, use o
método multicastGroupProducerActivations.create.
POST https://networkservices.googleapis.com/v1/projects/ADMIN_PROJECT/locations/ZONE/multicastGroupProducerActivations?multicastGroupProducerActivationId=GROUP_PRODUCER_ACTIVATION_NAME
{
"multicastProducerAssociation": "projects/ADMIN_PROJECT/locations/ZONE/multicastProducerAssociations/PRODUCER_ASSOCIATION_NAME",
"multicastGroupRangeActivation": "projects/ADMIN_PROJECT/locations/ZONE/multicastGroupRangeActivations/GROUP_RANGE_ACTIVATION_NAME"
}
Substitua os seguintes valores:
GROUP_PRODUCER_ACTIVATION_NAME: um nome para a ativação do produtor do grupo de multicastADMIN_PROJECT: o ID do projeto do administrador de multicastZONE: uma zona em que a rede de produtores de multicast será ativada. A associação de produtor de multicast e a ativação do intervalo do grupo multicast correspondentes também precisam existir na zona.PRODUCER_ASSOCIATION_NAME: o nome da associação de produtor de multicast que você criou anteriormenteGROUP_RANGE_ACTIVATION_NAME: o nome da ativação do intervalo do grupo multicast criada pelo administrador de multicast
Criar instâncias de produtores de multicast
Se ainda não tiver feito isso, crie uma ou mais instâncias do Compute Engine para executar o aplicativo que produz tráfego multicast. Confira a seguir:
- Para informações sobre como escolher um tipo de máquina, consulte Considerações sobre máquinas para instâncias de produtor e consumidor de multicast.
- Para informações sobre como criar instâncias, consulte Criar e iniciar uma instância do Compute Engine.
Ao contrário das instâncias de consumidor multicast, as instâncias de produtor multicast não precisam ser configuradas para IGMP e podem enviar tráfego para um grupo multicast sem entrar no grupo.
A seguir
- Para conferir as configurações de produtor de multicast que você criou, consulte Conferir configurações de produtor de multicast.
- Atualizar as configurações do produtor de multicast
- Ativar uma rede VPC para consumir tráfego multicast