Crie intervalos de grupos de multicast

Esta página descreve os passos que um administrador de multicast tem de seguir para criar intervalos de grupos de multicast.

Para uma vista geral do processo de configuração da transmissão múltipla, consulte o artigo Vista geral da configuração da transmissão múltipla.

Antes de começar

Um intervalo de grupos multicast tem de estar associado a um domínio multicast específico. Antes de criar um intervalo de grupos de multicast, siga os passos para criar um domínio de multicast.

Crie um intervalo de grupos de multicast

Esta secção descreve como criar um intervalo de grupos de multicast num domínio. Pode repetir estes passos para criar vários intervalos de grupos num determinado domínio.

Crie um intervalo de grupos

Associe um intervalo de endereços IP de grupo multicast ao domínio multicast.

gcloud

  1. Reserve um intervalo interno na rede VPC do administrador de multicast que contém os endereços IP do grupo de multicast que quer usar. Para reservar um intervalo interno, use o comando network-connectivity internal-ranges create.

    gcloud network-connectivity internal-ranges create INTERNAL_RANGE_NAME \
       --network=ADMIN_NETWORK \
       --ip-cidr-range=CIDR_RANGE
    

    Substitua os seguintes valores:

    • INTERNAL_RANGE_NAME: um nome para o intervalo interno a reservar
    • ADMIN_NETWORK: o nome da rede do administrador de multicast
    • CIDR_RANGE: o intervalo CIDR a reservar

      O intervalo CIDR que especificar tem de ser um endereço de classe D (como 224.0.0.0 - 239.255.255.255) e tem de ter um prefixo que seja igual ou superior a /23. Por exemplo, 224.1.60.0/24 é um intervalo válido. Os intervalos com um comprimento do prefixo de /22 ou menos são inválidos.

    Para mais informações sobre a criação de intervalos internos, consulte o artigo Crie e use intervalos internos.

  2. Crie um intervalo de grupos de multicast usando o intervalo interno que reservou. Para criar um intervalo de grupos de multicast, use o comando network-services multicast-group-ranges create.

    gcloud network-services multicast-group-ranges create GROUP_RANGE_NAME \
       --multicast-domain="projects/ADMIN_PROJECT/locations/global/multicastDomains/DOMAIN_NAME" \
       --reserved-internal-range="projects/ADMIN_PROJECT/locations/global/internalRanges/INTERNAL_RANGE_NAME" \
       --location=global \
       [--require-explicit-accept ] \
       [--consumer-accept-list=CONSUMER_ACCEPT_LIST] \
       [--distribution-scope=DISTRIBUTION_SCOPE] \
       [--enable-logging | --no-enable-logging]
    

    Substitua os seguintes valores:

    • GROUP_RANGE_NAME: um nome para o intervalo do grupo de multicast
    • DOMAIN_NAME: o nome do domínio multicast que criou anteriormente
    • ADMIN_PROJECT: o ID do projeto do administrador de multicast
    • INTERNAL_RANGE_NAME: o nome do intervalo interno que reservou anteriormente
    • Especifique as seguintes propriedades para o tráfego de multicast, a associação a grupos e o registo.

      Exceto para o âmbito da distribuição de tráfego, pode atualizar cada propriedade conforme necessário mais tarde.

      • --require-explicit-accept: determina que projetos podem usar o intervalo de grupos de multicast se a lista de aceitação de consumidores de multicast estiver vazia. Esta configuração determina se um projeto consumidor de multicast pode ativar uma rede VPC do consumidor de multicast para o intervalo de grupos.
        • Para recusar todos os projetos, inclua esta flag. Um projeto só pode usar o intervalo de grupos se o adicionar à lista de autorizações de consumidores de multicast.
        • (Predefinição) Para permitir todos os projetos, exclua esta flag. Qualquer projeto que tenha acesso ao domínio de multicast pode usar o intervalo de grupos. Na topologia em estrela do Network Connectivity Center, concede a um projeto acesso ao domínio aceitando-o no hub.
      • CONSUMER_ACCEPT_LIST: se especificou --require-explicit-accept, pode introduzir uma lista de projetos de consumidor de multicast que podem usar este intervalo de grupos de multicast. Se um projeto consumidor de multicast não estiver na lista de aceitação, o projeto não pode criar configurações de consumidor de multicast com este intervalo de grupos.

        Pode especificar até 100 projetos pelo ID ou nome do projeto.

      • DISTRIBUTION_SCOPE: determina o âmbito da localização do tráfego multicast. Não pode atualizar esta propriedade mais tarde.

        • Para permitir que este intervalo envie tráfego de multicast apenas numa zona, defina este sinalizador como intra-zone.
        • (Predefinição) Para permitir que este intervalo envie tráfego de multicast em várias zonas, defina esta flag como intra-region.
      • --[no-]enable-logging: determina se o registo de eventos de associação a grupos está ativado.

        • Para ativar o registo, use --enable-logging.
        • (Predefinição) Para desativar o registo, use --no-enable-logging.

API

  1. Reserve um intervalo interno na rede VPC do administrador de multicast que contém os endereços IP do grupo de multicast que quer usar. Para reservar um intervalo interno, use o método internalRanges.create.

    POST https://networkconnectivity.googleapis.com/v1/projects/ADMIN_PROJECT/locations/global/internalRanges?internalRangeId=INTERNAL_RANGE_NAME
    {
      "network": "projects/ADMIN_PROJECT/global/networks/ADMIN_NETWORK",
      "ipCidrRange": "CIDR_RANGE"
    }
    

    Substitua os seguintes valores:

    • INTERNAL_RANGE_NAME: um nome para o intervalo interno a reservar
    • ADMIN_PROJECT: o ID do projeto do administrador de multicast
    • ADMIN_NETWORK: o nome da rede do administrador de multicast
    • CIDR_RANGE: o intervalo CIDR a reservar

      O intervalo CIDR que especificar tem de ser um endereço de classe D (como 224.0.0.0 a 239.255.255.255) e tem de ter um prefixo igual ou superior a /23. Por exemplo, 224.1.60.0/24 é um intervalo válido. Os intervalos com um comprimento do prefixo de /22 ou menos são inválidos.

    Para mais informações sobre a criação de intervalos internos, consulte o artigo Crie e use intervalos internos.

  2. Crie um intervalo de grupos de multicast usando o intervalo interno que reservou. Para criar um intervalo de grupos de multicast, use o método multicastGroupRanges.create.

    POST https://networkservices.googleapis.com/v1/projects/ADMIN_PROJECT/locations/global/multicastGroupRanges?multicastGroupRangeId=GROUP_RANGE_NAME
    {
      "multicastDomain": "projects/ADMIN_PROJECT/locations/global/multicastDomains/DOMAIN_NAME",
      "reservedInternalRange": "projects/ADMIN_PROJECT/locations/global/internalRanges/INTERNAL_RANGE_NAME",
      "requireExplicitAccept": "REQUIRE_EXPLICIT_ACCEPT",
      "consumerAcceptList": [
          "CONSUMER_ACCEPT_LIST"
      ],
      "distributionScope": "DISTRIBUTION_SCOPE",
      "logConfig": {
          "enabled": "LOGGING_ENABLED"
     }
    }
    

    Substitua os seguintes valores:

    • GROUP_RANGE_NAME: um nome para o intervalo do grupo de multicast
    • ADMIN_PROJECT: o ID do projeto do administrador de multicast
    • DOMAIN_NAME: o nome do domínio multicast que criou anteriormente
    • INTERNAL_RANGE_NAME: o nome do intervalo interno que reservou anteriormente

    Para especificar propriedades para tráfego de multicast, associação a grupos e registo, inclua os seguintes campos no corpo do pedido. Exceto para o âmbito da distribuição de tráfego, pode atualizar cada propriedade conforme necessário mais tarde.

    • REQUIRE_EXPLICIT_ACCEPT: determina que projetos podem usar o intervalo de grupos de multicast se consumerAcceptList estiver vazio. Esta configuração determina se um projeto consumidor de multicast pode ativar uma rede VPC do consumidor de multicast para o intervalo de grupos.
      • Para negar todos os projetos, defina como true. Um projeto só pode usar o intervalo de grupos se o adicionar ao consumerAcceptList.
      • (Predefinição) Para permitir todos os projetos, defina como false. Qualquer projeto que tenha acesso ao domínio de multicast pode usar o intervalo de grupos. Na topologia em estrela do Network Connectivity Center, concede a um projeto acesso ao domínio aceitando-o no hub.
    • CONSUMER_ACCEPT_LIST: se definir requireExplicitAccept como true, pode introduzir uma lista de projetos de consumidor de multicast que podem usar este intervalo de grupos de multicast.

      Se um projeto consumidor de multicast não estiver na lista de aceitação, o projeto não pode criar configurações de consumidor de multicast com este intervalo de grupos.

      Pode especificar até 100 projetos pelo ID ou nome do projeto. Use o seguinte formato: "consumerAcceptList": ["project-1", "project-2"].

    • DISTRIBUTION_SCOPE: determina o âmbito da localização do tráfego multicast. Não pode atualizar esta propriedade mais tarde.

      • Para permitir que este intervalo envie tráfego de multicast apenas numa zona, defina como INTRA_ZONE.
      • (Predefinição) Para permitir que este intervalo envie tráfego de multicast em várias zonas, defina como INTRA_REGION.
    • LOGGING_ENABLED: determina se o registo de eventos de associação a grupos está ativado.

      • Para ativar o registo, defina como true.
      • (Predefinição) Para desativar o registo, defina como false.

Ative o intervalo do grupo

Ative o intervalo de grupos em cada zona onde os produtores ou os consumidores de multicast precisam de usar os endereços IP de grupo associados.

Se não ativar um intervalo de grupo numa determinada zona, os endereços IP do grupo associados não podem ser usados para enviar nem receber tráfego de multicast na zona.

gcloud

Para ativar um intervalo de grupos de multicast, use o comando network-services multicast-group-range-activations create.

  gcloud network-services multicast-group-range-activations create GROUP_RANGE_ACTIVATION_NAME \
     --multicast-domain-activation="projects/ADMIN_PROJECT/locations/ZONE/multicastDomainActivations/DOMAIN_ACTIVATION_NAME" \
     --multicast-group-range="projects/ADMIN_PROJECT/locations/global/multicastGroupRanges/GROUP_RANGE_NAME" \
     --location=ZONE \
     [--enable-logging | --no-enable-logging]

Substitua os seguintes valores:

  • GROUP_RANGE_ACTIVATION_NAME: um nome para a ativação do intervalo do grupo de multicast
  • ADMIN_PROJECT: o ID do projeto do administrador de multicast
  • ZONE: a zona na qual ativar o intervalo do grupo. Tem de ser uma zona na qual ativou anteriormente o domínio.
  • DOMAIN_ACTIVATION_NAME: o nome da ativação do domínio que criou anteriormente nesta zona
  • GROUP_RANGE_NAME: o nome do intervalo de grupos que criou anteriormente
  • --[no-]enable-logging: opcional, determina se o registo de eventos de associação a grupos está ativado. A configuração desta flag numa ativação de intervalo de grupos zonal substitui a definição do intervalo de grupos global.
    • Para ativar o registo, use --enable-logging.
    • (Predefinição) Para desativar o registo, use --no-enable-logging.

API

Para ativar um intervalo de grupos de multicast, use o método multicastGroupRangeActivations.create.

POST https://networkservices.googleapis.com/v1/projects/ADMIN_PROJECT/locations/ZONE/multicastGroupRangeActivations?multicastGroupRangeActivationId=GROUP_RANGE_ACTIVATION_NAME
{
    "multicastDomainActivation": "projects/ADMIN_PROJECT/locations/ZONE/multicastDomainActivations/DOMAIN_ACTIVATION_NAME",
    "multicastGroupRange": "projects/ADMIN_PROJECT/locations/global/multicastGroupRanges/GROUP_RANGE_NAME",
    "logConfig": {
          "enabled": "LOGGING_ENABLED"
    }
}

Substitua os seguintes valores:

  • GROUP_RANGE_ACTIVATION_NAME: um nome para a ativação do intervalo do grupo de multicast
  • ADMIN_PROJECT: o ID do projeto do administrador de multicast
  • ZONE: a zona na qual ativar o intervalo do grupo. Tem de ser uma zona na qual ativou anteriormente o domínio.
  • DOMAIN_ACTIVATION_NAME: o nome da ativação do domínio que criou anteriormente nesta zona
  • GROUP_RANGE_NAME: o nome do intervalo de grupos que criou anteriormente
  • LOGGING_ENABLED: determina se o registo de eventos de associação a grupos está ativado. A configuração do registo numa ativação de intervalo de grupos zonal substitui a definição do intervalo de grupos global.
    • Para ativar o registo, defina como true.
    • (Predefinição) Para desativar o registo, defina como false.

O que se segue?