# Considerações sobre a infraestrutura

## Rede

### Evitar Proxies

A implantação inicial precisa de acesso direto à internet. Nenhum proxy seria o ideal, mas um proxy transparente deve funcionar bem (se for realmente transparente). Se um proxy for inevitável como requisito mínimo, os seguintes serviços/endereços precisam estar diretamente acessíveis:

Para uma lista dos intervalos de IP correspondentes, clique no seguinte link:

[Intervalos de IP e marcas de serviço do Azure – Nuvem Pública](https://www.microsoft.com/en-us/download/details.aspx?id=56519)

Este ficheiro contém os intervalos de endereços IP de computação (incluindo intervalos SQL) usados pelos Datacenters do Microsoft Azure. Um novo ficheiro xml será carregado todas as quartas-feiras (Hora do Pacífico) com os novos intervalos de endereços IP planeados. Os novos intervalos de endereços IP entrarão em vigor na segunda-feira seguinte (Hora do Pacífico).\
Descarregue o novo ficheiro xml e efetue as alterações necessárias no seu site antes de segunda-feira.

[URLs e intervalos de endereços IP do Office 365](https://support.office.com/en-us/article/Office-365-URLs-and-IP-address-ranges-8548a211-3fe7-47cb-abb1-355ea5aa88a2)

Este artigo inclui um link para um ficheiro que contém os intervalos de endereços IP de computação que deve incluir nas suas listas de अनुमति de saída para garantir que os seus computadores podem utilizar o Office 365 com êxito.

{% hint style="info" %}
A filtragem apenas por endereços IP não é uma solução completa devido a dependências de serviços baseados na internet, como Serviços de Nomes de Domínio (DNS), Redes de Distribuição de Conteúdo (CDNs), Listas de Revogação de Certificados e outros serviços de terceiros ou dinâmicos. Estas dependências incluem dependências de outros serviços Microsoft, como a Azure Content Delivery Network, e resultarão em rastreios de rede ou registos de firewall que indicam ligações a endereços IP detidos por terceiros ou pela Microsoft, mas não listados nesta página. Estes endereços IP não listados, sejam de CDN e serviços de DNS de terceiros ou da Microsoft, são atribuídos dinamicamente e podem mudar a qualquer momento.
{% endhint %}

### BranchCache e isolamento de dispositivos

O BranchCache é uma tecnologia do Windows concebida para **reduzir o tráfego WAN** e **acelerar a entrega de conteúdo** dentro de redes corporativas. Faz isso ao permitir que os clientes Windows partilhem dados transferidos entre si, em vez de cada dispositivo obter repetidamente o mesmo conteúdo da cloud.

{% hint style="info" %}
Para o RealmJoin, o BranchCache é **ativado por predefinição** na CDN e do lado do cliente.
{% endhint %}

Porque não usar a Otimização de Entrega? Este mecanismo não suporta origens de pacotes de terceiros. Funciona apenas com endpoints controlados pela Microsoft (por exemplo: Windows Update, Store, M365 Apps ou Intune).

Assim, dentro do RealmJoin, dependemos do BranchCache porque é um **mecanismo de peering integrado do Windows** que funciona para conteúdo de terceiros:

* **lado da CDN**: Está ativado por predefinição. Se solicitado, podemos desativar o BranchCache completamente no lado da CDN (por Tenant), o que torna irrelevante a configuração do lado do cliente.
* Na **lado do cliente**, a funcionalidade também está ativada por predefinição. Ao definir `BranchCache.Mode = "Undefined"` (ver [Definições de Utilizador e Grupo](/pt/ugd-management/user-and-group-settings.md)), este comportamento predefinido pode ser alterado. No entanto, para clientes existentes, a funcionalidade não será desativada ativamente depois de ter sido ativada anteriormente. Para desativar, execute `Disable-BC` nos dispositivos pretendidos.

Para que o BranchCache seja eficaz, os clientes precisam de poder comunicar diretamente entre si. Assim, não devem estar separados por diferentes VLANs, sub-redes ou comunicação bloqueada através de isolamento de dispositivos. Utilizamos o BranchCache em **Modo de Cache Distribuída**, onde cada cliente mantém uma cache local e obtém dados em cache de pares. A opção **Modo de Cache Hospedada**, que requer um Windows Server dedicado e é configurada nos clientes através da política "Configurar Servidores de Cache Hospedada", **não é suportada** pelo RealmJoin.

Quando um dispositivo cliente descarrega pacotes de software pela primeira vez, os ficheiros são divididos em blocos significativamente menores do que o conteúdo original e guardados em cache no dispositivo. Se o mesmo pacote for posteriormente solicitado por um dispositivo cliente diferente na mesma rede, este transfere informações de conteúdo em vez do conteúdo completo do servidor. As informações de conteúdo são usadas para localizar o conteúdo desejado noutros dispositivos na rede. **Descoberta de pares de clientes** em "Modo de Cache Distribuída" funciona da seguinte forma:

* Um cliente envia uma consulta multicast como "Alguém tem o conteúdo ID XYZ?"
* Qualquer par que detenha o segmento solicitado responde diretamente via unicast.

Em vez de descarregar pacotes do servidor, o conteúdo na forma dos blocos divididos é transferido para o dispositivo cliente. Se o software solicitado estiver disponível em vários dispositivos, a carga é distribuída entre eles.

Para mais detalhes, veja Microsoft Learn: [BranchCache](https://learn.microsoft.com/en-us/windows-server/networking/branchcache/branchcache)

### Pontos de Extremidade de Conexão do RealmJoin

O RealmJoin liga-se aos seguintes hosts (usando HTTPS), que podem ser considerados nas suas definições de firewall:

* `cdn.realmjoin.com`
* `x1.c.lencr.org`
* `client-api.realmjoin.com`
* `client-api-staging.realmjoin.com`
* `realmjoin-backend.azurewebsites.net`
* `realmjoin-backend-staging.azurewebsites.net`
* `nuget.realmjoin.com`
* `enterpriseregistration.windows.net`
* `gkrealmjoin.s3.amazonaws.com`
* `login.microsoftonline.com`
* `graph.microsoft.com`
* `realmjoinstaticcdn.azureedge.net` (Notificador)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.realmjoin.com/pt/implementacao-do-realmjoin/infrastructure.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
