IPv6 e Direct Access

Ok, todo mundo sabe que o protocolo IPv6 é em muitas coisas superior ao IPv4 que usamos atualmente na Internet: é mais fácil de configurar, permite roteamento mais eficiente, simplifica a comunicação ponto a ponto, é mais seguro, etc. E mesmo que não fosse superior que ele terá que ser eventualmente adotado de qualquer maneira, já que o endereçamento IPv4 (limitado a 32-bits) está acabando na Internet: no ritmo atual em três ou quatro anos não vamos ter mais endereços públicos disponíveis.

No entanto a adoção do IPv6 tem sido mínima – uma empresa estima que somente 0.0026% do tráfego atual na Internet seja de IPv6. Ao que parece é difícil para a maioria das organizações justificar uma migração complexa como essa (mas não tão complexa quanto muita gente pensa – mais sobre isso a frente) sem ter um claro valor de negócio. Ainda não apareceu a killer application para o IPv6.

O Windows Server 2008 R2 e o Windows 7 trazem um novo serviço que pode muito bem ser essa killer application – o DirectAccess. O DirectAccess é um recurso que permite que usuários acessem de forma transparente e segura recursos na sua rede corporativa a partir de onde eles estiverem, sem a necessidade de se “conectar” como em uma VPN.  Não importa onde ele esteja no momento, ou a forma como ele está conectado na Internet, os recursos sempre estão disponíveis e a experiência é sempre a mesma.

Um usuário pode estar conectado em casa ou em via 3G em um aeroporto: ao digitar por exemplo “\\servidor1.minhaempresa.intranet” ou “https://sharepoint.minhaempresa.intranet” a pasta compartilhada ou o site web vão abrir normalmente, como se ele estivesse na rede da sua empresa. Da mesma forma o logon no Active Directory, as políticas de grupo, ferramentas de gerenciamento e mesmo a verificação de conformidade com o NAP vão funcionar normalmente, independente de onde o usuário estiver conectado.

image

A figura acima mostra visualmente como o DirectAccess funciona (clique na imagem para ampliar):

¦ Todo o tráfego direcionado para a rede da empresa é roteado através do servidor DirectAccess, que funciona como um roteador IPv6. Onde quer que ele esteja o cliente recebe um endereço IPv6 que ele utiliza para se comunicar com a rede.

¦ A comunicação é toda protegida por IPsec, que faz também a autenticação do cliente no serviço. O cliente estabelece um túnel IPsec (IPsec tunnel mode) com o servidor DirectAccess, que faz a autenticação tanto por certificado de máquina como também opcionalmente com um smartcard do usuário. Além disso é possível estabelecer oroteção fim-a-fim com IPsec em modo transporte entre o cliente DirectAccess e os servidores internos – neste caso os servidores tem que estar rodando no mínimo Windows Server 2008.

¦ Como a praticamente toda a Internet e as redes das empresas trabalham com IPv4, o tráfego IPv6 pode estar tunelado sobre IPv4 para que exista conectividade com o servidor DirectAccess. Os seguintes protocolos de tunelamento automático são suportados:

Protocolo Cenário de Uso Configuração
ISATAP Usado para comunicação IPv6 em uma intranet IPv4. Tunela o tráfego em IPv4 protocolo 41. Habilitado automaticamente se o sistema consegue resolver o nome “ISATAP”
6to4 Usado para comunicação IPv6 através da Internet IPv4. Tunela o tráfego como IPv4 protocolo 41. Habilitado automaticamente se o sistema tem um endereço IPv4 válido na Internet
Teredo Usado para comunicação IPv6 quando o cliente está atrás de um NAT (Network Address Translation). Tunela o tráfego em UDP porta 3544. Habilitado automaticamente se o cliente tem um endereço IP e está fora da sua rede corporativa (i.e. não consegue contactar o seu domínio)
IP-HTTPS Usado para comunicação IPv6 quando o cliente está atrás de um firewall ou proxy Web. Tunela o tráfego em TCP porta 443. Desabilitado por default. Configurado pelo administrador, somente usado pelo sistema se nenhum outro método prover conectividade IPv6.

O servidor DirectAccess atua como servidor ISATAP, relay 6to4, servidor e relay Teredo e servidor IP-HTTPS. Esta diversidade de protocolos garante que o cliente vai ter conectividade mesmo que esteja por exemplo atrás de um NAT ou um Firewall/Proxy Web. Para o usuário a experiência é totalmente transparente – ao contrário de uma VPN tradicional ele não precisa fazer nenhuma “conexão”, assim o sistema obtiver um endereço IPv6 os recursos da rede da empresa estão disponíveis para ele.

image 

¦ A resolução dos nomes DNS dos domínios da intranet é repassada para os servidores DNS da internos da empresa, sendo roteados através do servidor DirectAccess. Este redirecionamento é através da Name Resolution Policy Table (NRPT), um novo recurso do Windows 7 que associa um domínio a quais servidores DNS devem ser utilizado para ele. O NRPT permite é usado também para a configuração do DNSSEC que impede que os domínios internos sejam spoofados externamente.

Uma preocupação de muitas organizações é quanto as suas aplicações – elas vão funcionar em cima de IPv6? Salvo raras exceções todas as aplicações devem funcionar normalmente. Assim como o Windows Vista, o Windows 7 tem uma dupla implementação de camada IP (dual IP layer), com IPv4 e IPv6 habilitados por default. Isto faz com que a implementação de TCP e UDP nestes sistemas seja comum a ambos os protocolos IP, diferente do modelo dual stack usado no Windows XP onde IPv4 e IPv6 tinham pilhas completamente separadas.

O modelo dual IP layer faz com que as aplicações usem a interface socket e os protocolos TCP e UDP normalmente, sem nem saber se a comunicação está sendo feita sobre IPv4 ou IPv6. Quanto aos serviços do sistema, todos já funcionam hoje sobre IPv6: Active Directory (LDAP, Kerberos, etc.), IIS (Web), DNS, compartilhamento de arquivos e impressoras, RPC, NTP, etc. O único serviço no Vista e Windows Server 2008 que ainda depende de IPv4 é o servidor FTP, o que está sendo corrigido no Windows Server 2008 R2 e Windows 7.

Para dar acesso aos servidores da rede interna, a organização tem que configurar o roteamento IPv6 até eles. Isto pode ser feito facilmente usando ISATAP, que tunela automaticamente o tráfego IPv6 sobre a intranet IPv4, e na verdade servidores Windows irão automaticamente configurar um endereço ISATAP se este nome puder ser encontrado na rede.

Além de configurar o ISATAP, a organização precisa ainda que configurar os endereços IPv6 no servidor DNS (registros AAAA), e de preferência também habilitar o DNSSEC para estas zonas (o que requer upgrade dos servidores DNS para Windows Server 2008 R2). Pronto – sua configuração básica de DirectAccess pode ser testada.

O DirectAccess permite que organizações agora possam ter os seus clientes móveis fora do seu perímetro, acessando os recursos da rede e sendo gerenciados com a mesma praticidade, segurança e facilidade para o usuário que eles tem hoje na rede interna. Para estes clientes o perímetro não existe – a rede da empresa vai com eles para onde eles estiverem.

O DirectAccess requer como servidor o Windows Server 2008 R2 e como cliente o Windows 7. Em poucos dias a versão Beta 1 estará disponível no site da Microsoft, versão esta que contém já as funcionalidades do DirectAcess para a sua avaliação.

Se eu pudesse fazer alguma recomendação para 2009, eu recomendaria a todos estudar e conhecer IPv6 (Richard Bejtlitch faz a mesma recomendação no seu blog). Você vai encontrar muita documentação disponível sobre IPv6 no site da Microsoft (https://www.microsoft.com/ipv6).  A Microsoft Press também colocou disponível gratuitamente o PDF do livro “Understanding IPv6, Second Edition” de Joseph Davies neste link (registro necessário) – uma excelente referência sobre IPv6 em geral e sobre a implementação do Windows em particular.