176
1 TCP-IP Índice Introdução ao TCP-IP 2 Números Binários e Máscara de Sub-Rede 12 Classes de Endereços 21 Introdução ao Roteamento IP 28 Exemplos de Roteamento 36 Tabelas de Roteamento 41 Sub netting divisão em sub-redes 47 Uma introdução ao DNS 61 Uma introdução ao DHCP 76 Uma introdução ao WINs 86 TCP , UDP e Portas de Comunicação 93 Portas de Comunicação na Prática 100 Protocolos de Roteamento Dinâmico - RIP 107 Protocolos de Roteamento Dinâmico - OSPF 116 ICFInternet Connection Firewall 122 Introdução ao IPSec 142 Certificados Digitais e Segurança 148 NAT Network Address Translation 161 Roteiro para Resolução de Problemas 169

Apostila TCP IP

Embed Size (px)

DESCRIPTION

Apostila TCP IP

Citation preview

Page 1: Apostila TCP IP

1

TCP-IP

Índice

Introdução ao TCP-IP 2

Números Binários e Máscara de Sub-Rede 12

Classes de Endereços 21

Introdução ao Roteamento IP 28

Exemplos de Roteamento 36

Tabelas de Roteamento 41

Sub netting – divisão em sub-redes 47

Uma introdução ao DNS 61

Uma introdução ao DHCP 76

Uma introdução ao WINs 86

TCP , UDP e Portas de Comunicação 93

Portas de Comunicação na Prática 100

Protocolos de Roteamento Dinâmico - RIP 107

Protocolos de Roteamento Dinâmico - OSPF 116

ICF– Internet Connection Firewall 122

Introdução ao IPSec 142

Certificados Digitais e Segurança 148

NAT – Network Address Translation 161

Roteiro para Resolução de Problemas 169

Page 2: Apostila TCP IP

2

Introdução ao TCP-IP

Este curso de Introdução tem o objetivo da Parte 1 é apresentar o protocolo TCP/IP e os

seus aspectos básicos de utilização em redes baseadas no Windows 2000 (Server e

Professional) ou Windows Server 2003 e no Windows XP e Windows Vista. Nesta

primeira parte faremos uma apresentação do protocolo TCP/IP, de tal maneira que o

leitor possa entender exatamente o que é o conjunto de protocolos genericamente

conhecido como TCP/IP e como é configurada uma rede baseada neste protocolo. Nas

demais partes deste tutorial abordaremos uma série de assuntos, tais como:

O Sistema Binário de Numeração

Conversão de Binário para Decimal

Endereços IP e Máscara de sub-rede

Configurações do TCP/IP no Windows 2000 e no Windows XP

Endereçamento no protocolo IP

Roteamento

DNS

DHCP

WINS

RRAS

IPSec

Firewall

NAT

O conceito de sub-redes e exemplos práticos

Comandos disponíveis no Windows 2000

Comandos disponíveis no Windows XP

Uma visão geral do protocolo TCP/IP

Para que os computadores de uma rede possam trocar informações entre si é necessário

que todos os computadores adotem as mesmas regras para o envio e o recebimento de

informações. Este conjunto de regras é conhecido como Protocolo de comunicação.

Falando de outra maneira podemos afirmar: ―Para que os computadores de uma rede

possam trocar informações entre si é necessário que todos estejam utilizando o mesmo

protocolo de comunicação‖. No protocolo de comunicação estão definidas todas as

regras necessárias para que o computador de destino, ―entenda‖ as informações no

formato que foram enviadas pelo computador de origem. Dois computadores com

diferentes protocolos instalados, não serão capazes de estabelecer uma comunicação e

nem serão capazes de trocar informações.

Antes da popularização da Internet existiam diferentes protocolos sendo utilizados nas

redes das empresas. Os mais utilizados eram os seguintes:

TCP/IP

NETBEUI

IPX/SPX

Apple Talk

Se colocarmos dois computadores ligados em rede, um com um protocolo, por exemplo,

o TCP/IP e o outro com um protocolo diferente, por exemplo, NETBEUI, estes dois

Page 3: Apostila TCP IP

3

computadores não serão capazes de estabelecer comunicação e trocar informações entre

si. Por exemplo, o computador com o protocolo NETBEUI instalado, não será capaz de

acessar uma pasta ou uma Impressora compartilhada no computador com o protocolo

TCP/IP instalado.

À medida que a Internet começou, a cada dia, tornar-se mais popular, com o aumento

exponencial do número de usuários, o protocolo TCP/IP passou a tornar-se um padrão

de fato, utilizando não só na Internet, como também nas redes internas das empresas,

redes estas que começavam a ser conectadas à Internet. Como as redes internas

precisavam conectar-se à Internet, tinham que usar o mesmo protocolo da Internet, ou

seja: TCP/IP.

Dos principais Sistemas Operacionais do mercado, o UNIX sempre utilizou o protocolo

TCP/IP como padrão. O Windows dá suporte ao protocolo TCP/IP desde as primeiras

versões, porém, para o Windows, o TCP/IP somente tornou-se o protocolo padrão a

partir do Windows 2000. Ser o protocolo padrão significa que o TCP/IP será instalado,

automaticamente, durante a instalação do Sistema Operacional, se for detectada a

presença de uma placa de rede. Até mesmo o Sistema Operacional Novell, que sempre

foi baseado no protocolo IPX/SPX como protocolo padrão, passou a adotar o TCP/IP

como padrão a partir da versão 5.0.

O que temos hoje, na prática, é a utilização do protocolo TCP/IP na esmagadora maioria

das redes. Sendo a sua adoção cada vez maior. Como não poderia deixar de ser, o

TCP/IP é o protocolo padrão do Windows 2000, Windows Server 2003, Windows XP e

também do Windows Vista (a ser lançado em Fevereiro de 2007) e do Windows

Longhorn Server (com lançamento previsto para o final de 2007). Se durante a

instalação, o Windows detectar a presença de uma placa de rede, automaticamente será

sugerida a instalação do protocolo TCP/IP.

Nota: Para pequenas redes, não conectadas à Internet, é recomendada a adoção do

protocolo NETBEUI, devido a sua simplicidade de configuração. Porém esta é uma

situação muito rara, pois dificilmente teremos uma rede isolada, sem conexão com a

Internet ou com parceiros de negócios, como clientes e fornecedores.

Agora passaremos a estudar algumas características do protocolo TCP/IP. Veremos que

cada equipamento que faz parte de uma rede baseada no TCP/IP tem alguns parâmetros

de configuração que devem ser definidos, para que o equipamento possa comunicar-se

com sucesso na rede e trocar informações com os demais equipamentos da rede.

Configurações do protocolo TCP/IP para um computador em rede

Quando utilizamos o protocolo TCP/IP como protocolo de comunicação em uma rede

de computadores, temos alguns parâmetros que devem ser configurados em todos os

equipamentos que fazem parte da rede (computadores, servidores, hubs, switchs,

impressoras de rede, etc.). Na Figura a seguir temos uma visão geral de uma pequena

rede baseada no protocolo TCP/IP:

Page 4: Apostila TCP IP

4

Figura - Uma rede baseada no protocolo TCP/IP.

No exemplo da Figura 1 temos uma rede local para uma pequena empresa. Esta rede

local não está conectada a outras redes ou à Internet. Neste caso cada computador da

rede precisa de, pelo menos, dois parâmetros configurados:

Número IP

Máscara de sub-rede

O Número IP é um número no seguinte formato:

x.y.z.w

ou seja, são quatro números separados por ponto. Não podem existir duas máquinas,

com o mesmo número IP, dentro da mesma rede. Caso eu configure um novo

equipamento com o mesmo número IP de uma máquina já existente, será gerado um

conflito de Número IP e um dos equipamentos, muito provavelmente o novo

equipamento que está sendo configurado, não conseguirá se comunicar com a rede. O

valor máximo para cada um dos números (x, y, z ou w) é 255.

Uma parte do Número IP (1, 2 ou 3 dos 4 números) é a identificação da rede, a outra

parte é a identificação da máquina dentro da rede. O que define quantos dos quatro

números faz parte da identificação da rede e quantos fazem parte da identificação da

máquina é a máscara de sub-rede (subnet mask). Vamos considerar o exemplo de um

dos computadores da rede da Figura 1:

Número IP: 10.200.150.1

Máscara de Sub-rede: 255.255.255.0

As três primeiras partes da máscara de sub-rede (subnet) iguais a 255 indicam que os

três primeiros números representam a identificação da rede e o último número é a

Page 5: Apostila TCP IP

5

identificação do equipamento dentro da rede. Para o nosso exemplo teríamos a rede:

10.200.150, ou seja, todos os equipamentos do nosso exemplo fazem parte da rede

10.200.150 ou, em outras palavras, o número IP de todos os equipamentos da rede

começam com 10.200.150.

Neste exemplo, onde estamos utilizando os três primeiros números para identificar a

rede e somente o quarto número para identificar o equipamento, temos um limite de 254

equipamentos que podem ser ligados nesta rede. Observe que são 254 e não 256, pois o

primeiro número – 10.200.150.0 e o último número – 10.200.250.255 não podem ser

utilizados como números IP de equipamentos de rede. O primeiro é o próprio número da

rede: 10.200.150.0 e o último é o endereço de Broadcast: 10.200.150.255. Ao enviar

uma mensagem para o endereço de Broadcast, todas as máquinas da rede receberão a

mensagem. Nas próximas partes deste tutorial, falaremos um pouco mais sobre

Broadcast.

Com base no exposto podemos apresentar a seguinte definição:

―Para se comunicar em uma rede baseada no protocolo TCP/IP, todo equipamento

deve ter, pelo menos, um número IP e uma máscara de sub-rede, sendo que todos

os equipamentos da rede devem ter a mesma máscara de sub-rede”.

Nota: Existem configurações mais avançadas onde podemos subdividir uma rede

TCP/IP em sub-redes menores. O conceito de sub-redes será tratado, em detalhes, na

Parte 7 deste tutorial.

No exemplo da figura anterior observe que o computador com o IP 10.200.150.7 está

com uma máscara de sub-rede diferente da máscara de sub-rede dos demais

computadores da rede. Este computador está com a máscara: 255.255.0.0 e os demais

computadores da rede estão com a máscara de sub-rede 255.255.255.0. Neste caso é

como se o computador com o IP 10.200.150.7 pertencesse a outra rede. Na prática o que

irá acontecer é que este computador não conseguirá se comunicar com os demais

computadores da rede, por ter uma máscara de sub-rede diferente dos demais. Este é um

dos erros de configuração mais comuns. Se a máscara de sub-rede estiver incorreta, ou

seja, diferente da máscara dos demais computadores da rede, o computador com a

máscara de sub-rede incorreta não conseguirá comunicar-se na rede.

Na Tabela a seguir temos alguns exemplos de máscaras de sub-rede e do número

máximo de equipamentos em cada uma das respectivas redes.

Tabela: Exemplos de máscara de sub-rede.

Máscara Número de equipamentos na rede

255.255.255.0 254

255.255.0.0 65.534

255.0.0.0 16.777.214

Quando a rede está isolada, ou seja, não está conectada à Internet ou a outras redes

externas, através de links de comunicação de dados, apenas o número IP e a máscara de

sub-rede são suficientes para que os computadores possam se comunicar e trocar

informações.

Page 6: Apostila TCP IP

6

A conexão da rede local com outras redes é feita através de links de comunicação de

dados. Para que essa comunicação seja possível é necessário um equipamento capaz de

enviar informações para outras redes e receber informações destas redes. O

equipamento utilizado para este fim é o Roteador. Todo pacote de informações que deve

ser enviado para outras redes deve, obrigatoriamente, passar pelo Roteador. Todo pacote

de informação que vem de outras redes também deve, obrigatoriamente, passar pelo

Roteador. Como o Roteador é um equipamento de rede, este também terá um número

IP. O número IP do roteador deve ser informado em todos os demais equipamentos que

fazem parte da rede, para que estes equipamentos possam se comunicar com as redes

externas. O número IP do Roteador é informado no parâmetro conhecido como Default

Gateway. Na prática quando configuramos o parâmetro Default Gateway, estamos

informando o número IP do Roteador.

Quando um computador da rede tenta se comunicar com outros

computadores/servidores, o protocolo TCP/IP faz alguns cálculos utilizando o número

IP do computador de origem, a máscara de sub-rede e o número IP do computador de

destino (veremos estes cálculos em detalhes nas próximas lições deste curso). Se, após

feitas as contas, for concluído que os dois computadores fazem parte da mesma rede, os

pacotes de informação são enviados para o barramento da rede local e o computador de

destino captura e processa as informações que lhe foram enviadas. Se, após feitas as

contas, for concluído que o computador de origem e o computador de destino fazem

parte de redes diferentes, os pacotes de informação são enviados para o Roteador

(número IP configurado como Default Gateway) e o Roteador é o responsável por achar

o caminho (a rota) para a rede de destino.

Com isso, para equipamentos que fazem parte de uma rede, baseada no protocolo

TCP/IP e conectada a outras redes ou a Internet, devemos configurar, no mínimo, os

seguintes parâmetros:

Número IP

Máscara de sub-rede

Default Gateway

Em redes empresarias existem outros parâmetros que precisam ser configurados. Um

dos parâmetros que deve ser informado é o número IP de um ou mais servidores DNS –

Domain Name System. O DNS é o serviço responsável pela resolução de nomes. Toda a

comunicação, em redes baseadas no protocolo TCP/IP é feita através do número IP. Por

exemplo, quando vamos acessar o meu site: http://www.juliobattisti.com.br/, tem que

haver uma maneira de encontrar o número IP do servidor onde fica hospedado o site. O

serviço que localiza o número IP associado a um nome é conhecido como Servidor

DNS. Por isso a necessidade de informarmos o número IP de pelo menos um servidor

DNS, pois sem este serviço de resolução de nomes, muitos recursos da rede estarão

indisponíveis, inclusive o acesso à Internet.

Existem aplicativos antigos que são baseados em outro serviço de resolução de nomes

conhecido como WINS – Windows Internet Name System. O Windows NT Server 4.0

utilizava intensamente o serviço WINS para a resolução de nomes. Com o Windows

2000 o serviço utilizado é o DNS, porém podem existir aplicações que ainda dependam

do WINS. Nestes casos você terá que instalar e configurar um servidor WINS na sua

rede e configurar o IP deste servidor em todos os equipamentos da rede.

Page 7: Apostila TCP IP

7

Dica Importante: Em redes baseadas onde ainda existem clientes baseados em versões

antigas do Windows, tais como o Windows 95, Windows 98 ou Windows Me, o WINS

ainda é necessário. Sem o WINS, poderá haver erro no acesso a aos principais recursos

da rede, tais como pastas e impressoras compartilhadas.

As configurações do protocolo TCP/IP podem ser definidas manualmente, isto é,

configurando cada um dos equipamentos necessários com as informações do protocolo,

como por exemplo, o Número IP, Máscara de sub-rede, número IP do Default Gateway,

número IP de um ou mais servidores DNS e assim por diante. Esta é uma solução

razoável para pequenas redes, porém pode ser um problema para redes maiores, com um

grande número de equipamentos conectados. Para redes maiores é recomendado o uso

do serviço DHCP – Dynamic Host Configuration Protocol. O serviço DHCP pode ser

instalado em um servidor com o Windows NT Server 4.0, Windows 2000 Server,

Windows Server 2003 ou Windows Longhorn Server. Uma vez disponível e

configurado, o serviço DHCP fornece, automaticamente, todos os parâmetros de

configuração do protocolo TCP/IP para os equipamentos conectados à rede. Os

parâmetros são fornecidos quando o equipamento é inicializado e podem ser renovados

em períodos definidos pelo Administrador. Com o uso do DHCP uma série de

procedimentos de configuração podem ser automatizados, o que facilita a vida do

Administrador e elimina uma série de erros.

Dica Importante: Serviços tais como um Servidor DNS e um Servidor DHCP, só

podem ser instalados em computadores com uma versão de Servidor do Windows, tais

como o Windows NT Server 4.0, Windows 2000 Server, Windows Server 2003 ou

Windows Longhorn Server. Estes serviços não estão disponíveis em versões Clientes do

Windows, tais como o Windows 95/98/Me, Windows 2000 Professional, Windows XP

Professional ou Windows Vista.

O uso do DHCP também é muito vantajoso quando são necessárias alterações no

número IP dos servidores DNS ou WINS. Vamos imaginar uma rede com 1000

computadores e que não utiliza o DHCP, ou seja, os diversos parâmetros do protocolo

TCP/IP são configurados manualmente em cada computador. Agora vamos imaginar

que o número IP do servidor DNS foi alterado. Neste caso o Administrador e a sua

equipe técnica terão que fazer a alteração do número IP do servidor DNS em todas as

estações de trabalho da rede. Um serviço e tanto. Se esta mesma rede estiver utilizando

o serviço DHCP, bastará alterar o número do servidor DNS, nas configurações do

servidor DHCP. O novo número será fornecido para todas as estações da rede,

automaticamente, na próxima vez que a estação for reinicializada. Muito mais simples e

prático e, principalmente, com menor probabilidade de erros.

Você pode verificar, facilmente, as configurações do protocolo TCP/IP que estão

definidas para o seu computador (Windows 2000, Windows XP ou Windows Vista).

Para isso siga os seguintes passos:

1. Faça o logon com uma conta com permissão de Administrador.

2. Abra o Prompt de comando: Iniciar -> Programas -> Acessórios -> Prompt de

comando.

3. Na janela do Prompt de comando digite o seguinte comando:

Page 8: Apostila TCP IP

8

ipconfig/all

e pressione Enter.

4. Serão exibidas as diversas configurações do protocolo TCP/IP, conforme

indicado a seguir, no exemplo obtido a partir de um dos meus computadores que eu uso

na rede da minha casa:

O comando ipconfig exibe informações para as diversas interfaces de rede instaladas –

placa de rede, modem, etc. No exemplo anterior temos uma única interface de rede

instalada, a qual é relacionada com uma placa de rede Realtek RTL8139 Family PCI

Fast Ethernet NIC. Observe que temos o número IP para dois servidores DNS e para um

servidor WINS. Outra informação importante é o Endereço físico, mais conhecido como

MAC-Address ou endereço da placa. O MAC-Address é um número que identifica a

placa de rede. Os seis primeiros números/letras são uma identificação do fabricante da

placa e os seis últimos uma identificação da placa. Não existem duas placas com o

mesmo MAC-Address, ou seja, este endereço é único para cada placa de rede.

No exemplo da listagem a seguir, temos um computador com duas interfaces de rede.

Uma das interfaces é ligada a placa de rede (Realtek RTL8029(AS) PCI Ethernet

Adapter), a qual conecta o computador a rede local. A outra interface é ligada ao fax-

modem (WAN (PPP/SLIP) Interface), o qual conecta o computador à Internet. Para o

protocolo TCP/IP a conexão via Fax modem aparece como se fosse mais uma interface

de rede, conforme pode ser conferido na listagem a seguir:

Page 9: Apostila TCP IP

9

Bem, estes são os aspectos básicos do protocolo TCP/IP. Nos endereços a seguir, você

encontra tutoriais, em português, onde você poderá aprofundar os seus estudos sobre o

protocolo TCP/IP:

http://www.juliobattisti.com.br/tcpip.asp

http://www.guiadohardware.info/tutoriais/enderecamento_ip/index.asp

http://www.guiadohardware.info/curso/redes_guia_completo/22.asp

http://www.guiadohardware.info/curso/redes_guia_completo/23.asp

http://www.guiadohardware.info/curso/redes_guia_completo/28.asp

http://www.vanquish.com.br/site/020608

http://unsekurity.virtualave.net/texto1/texto_tcpip_basico.txt

http://unsekurity.virtualave.net/texto1/tcpipI.txt

Page 10: Apostila TCP IP

10

http://www.rota67.hpg.ig.com.br/tutorial/protocolos/amfhp_tcpip_basico001.ht

m

http://www.rota67.hpg.ig.com.br/tutorial/protocolos/amfhp_tcpip_av001.htm

http://www.geocities.com/ResearchTriangle/Thinktank/4203/doc/tcpip.zip

Questão de exemplo para os exames de Certificação

A seguir coloco um exemplo de questão, relacionada ao TCP/IP, que pode aparecer nos

exames de Certificação da Microsoft, onde são cobrados conhecimentos básicos do

protocolo TCP/IP. Esta questão faz parte dos simulados gratuitos, disponíveis aqui no

site.

Questão 01

A seguir estão as configurações básicos do TCP/IP de três estações de

trabalho: micro01, micro02 e micro03.

Configurações do micro01:

Número IP: 100.100.100.3

Máscara de sub-rede: 255.255.255.0

Gateway: 100.100.100.1

Configurações do micro02:

Número IP: 100.100.100.4

Máscara de sub-rede: 255.255.240.0

Gateway: 100.100.100.1

Configurações do micro03:

Número IP: 100.100.100.5

Máscara de sub-rede: 255.255.255.0

Gateway: 100.100.100.2

O micro 02 não está conseguindo comunicar com os demais

computadores da rede. Já o micro03 consegue comunicar-se na rede

local, porém não consegue se comunicar com nenhum recurso de outras

redes, como por exemplo, a Internet. Quais alterações você deve fazer

para que todos os computadores possam se comunicar normalmente,

tanto na rede local quanto com as redes externas?

a) Altere a máscara de sub-rede do micro02 para 255.255.255.0

Altere o Gateway do micro03 para 100.100.100.1

b) Altere a máscara de sub-rede do micro01 para 255.255.240.0

Altere a máscara de sub-rede do micro03 para 255.255.240.0

c) Altere o Gateway do micro01 para 100.100.100.2

Altere o Gateway do micro02 para 100.100.100.2

d) Altere o Gateway do micro03 para 100.100.100.1

e) Altere a máscara de sub-rede do micro02 para 255.255.255.0

Resposta certa: a

Page 11: Apostila TCP IP

11

Comentários: Pelo enunciado o computador micro02 não consegue comunicar com

nenhum outro computador da rede. Este é um sintoma típico de

problema na máscara de sub-rede. É exatamente o caso, o micro02 está

com uma máscara de sub-rede 255.255.240.0, diferente da máscara dos

demais computadores. Por isso ele está isolado e não consegue se

comunicar com os demais computadores da rede. Já o micro03 não

consegue comunicar-se com outras redes, mas consegue comunicar-se

na rede local. Este é um sintoma de que a configuração do Gateway está

incorreta. Por isso a necessidade de alterar a configuração do Gateway

do micro03, para que este utilize a mesma configuração dos demais

computadores da rede. Observe como esta questão testa apenas

conhecimentos básicos do TCP/IP, tais como Máscara de sub-rede e

Default Gateway.

Conclusão

Na próxima lição falarei sobre o sistema de numeração binário, sobre como converter de

decimal para binário e vice-versa e como o protocolo TCP/IP usa cálculos binários, com

base na máscara de sub-rede, para definir se dois computadores pertence à mesma rede

ou a redes diferentes.

Aproveite para ir aprimorando os seus conhecimentos sobre TCP/IP, com os links

indicados no endereço: http://www.juliobattisti.com.br/tcpip.asp, pois estes

conhecimentos serão muito importantes para os exames de Certificação do Windows

2000 Server, Windows Server 2003 e Windows Longhorn Server

Page 12: Apostila TCP IP

12

Números Binários e Máscara de Sub-Rede

Na Primeira Parte deste curso eu apresentei o protocolo TCP/IP e qual o seu papel em

uma rede de computadores. Nesta segunda parte apresentarei os princípios básicos do

sistema de numeração binário. Também mostrarei como realizar cálculos simples e

conversões de Binário para Decimal e vice-versa. Feita a apresentação das operações

básicas com números binários, veremos como o TCP/IP através de cálculos binários e,

com base na máscara de sub-rede (subnet mask), determina se dois computadores estão

na mesma rede ou fazem parte de redes diferentes.

Sistema de Numeração Binário

Vou iniciar falando do sistema de numeração decimal, para depois fazer uma analogia

ao apresentar o sistema de numeração binário. Todos nos conhecemos o sistema de

numeração decimal, no qual são baseados os números que usamos no nosso dia-a-dia,

como por exemplo: 100, 259, 1450 e assim por diante. Você já parou para pensar

porque este sistema de numeração é chamado de sistema de numeração decimal? Não?

Bem, a resposta é bastante simples: este sistema é baseado em dez dígitos diferentes,

por isso é chamado de sistema de numeração decimal. Todos os números do sistema de

numeração decimal são escritos usando-se uma combinação dos seguintes dez dígitos:

0 1 2 3 4 5 6 7 8 9

Dez dígitos -> Sistema de numeração decimal.

Vamos analisar como é determinado o valor de um número do sistema de numeração

decimal. Por exemplo, considere o seguinte número:

4538

O valor deste número é formado, multiplicando-se os dígitos do número, de trás para

frente, por potências de 10, começando com 10º. O último dígito (bem à direita) é

multiplicado por 10º, o penúltimo por 101, o próximo por 10

2 e assim por diante. O

valor real do número é a soma dos resultados destas multiplicações. Observe o esquema

a seguir que será bem mais fácil de entender:

4 5 3 8

Multiplica por: 103 10

2 10

1 10º

ou seja: 1000 100 10 1

Resultado: 4x1000 5x100 3x10 8x1

Igual a: 4000 500 30 8

Somando tudo: 4000+500+30+8

É igual a: 4538

Observe que 4538 significa exatamente:

Page 13: Apostila TCP IP

13

4 milhares (103)

+ 5 centenas (102)

+ 3 dezenas (101)

+ 8 unidades (100)

E assim para números maiores, com mais dígitos, teríamos potências de 104, 10

5 e

assim por diante. Observe que multiplicando cada dígito por potências de 10, obtemos o

número original. Este princípio aplicado ao sistema de numeração decimal é válido para

qualquer sistema de numeração. Se for o sistema de numeração Octal (baseado em 8

dígitos), multiplica-se por potências de 8: 8º, 81, 8

2 e assim por diante. Se for o sistema

Hexadecimal (baseado em 10 dígitos e 6 letras) multiplica-se por potências de 16, só

que a letra A equivale a 10, já que não tem sentido multiplicar por uma letra, a letra B

equivale a 11 e assim por diante.

Bem, por analogia, se o sistema decimal é baseado em dez dígitos, então o sistema

binário deve ser baseado em dois dígitos? Exatamente. Os números no sistema binários

são escritos usando-se apenas os dois seguintes dígitos:

0 1

Isso mesmo, números no sistema binário são escritos usando-se apenas zeros e uns,

como nos exemplos a seguir:

01011100

11011110

00011111

Também por analogia, se, no sistema decimal, para obter o valor do número,

multiplicamos os seus dígitos, de trás para frente, por potências de 10, no sistema

binário fizemos esta mesma operação, só que baseada em potências de 2, ou seja: 20,

21, 2

2, 2

3, 2

4 e assim por diante.

Vamos considerar alguns exemplos práticos. Como faço para saber o valor decimal do

seguinte número binário: 11001110

Vamos utilizar a tabelinha a seguir para facilitar os nossos cálculos:

1 1 0 0 1 1 1 0

Multiplica por: 27 2

6 2

5 2

4 2

3 2

2 2

1 2

0

equivale a: 128 64 32 16 8 4 2 1

Multiplicação: 1x128 1x64 0x32 0x16 1x8 1x4 1x2 0x1

Resulta em: 128 64 0 0 8 4 2 0

Somando tudo: 128+64+0+0+8+4+2+0

Resulta em: 206

Ou seja, o número binário 11001110 equivale ao decimal 206. Observe que onde temos

um a respectiva potência de 2 é somada e onde temos o zero a respectiva potência de 2 é

anulada por ser multiplicada por zero. Apenas para fixar um pouco mais este conceito,

Page 14: Apostila TCP IP

14

vamos fazer mais um exemplo de conversão de binário para decimal. Converter o

número 11100010 para decimal:

1 1 1 0 0 0 1 0

Multiplica por: 27 2

6 2

5 2

4 2

3 2

2 2

1 2

0

equivale a: 128 64 32 16 8 4 2 1

Multiplicação: 1x128 1x64 1x32 0x16 0x8 0x4 1x2 0x1

Resulta em: 128 64 32 0 0 0 2 0

Somando tudo: 128+64+32+0+0+0+2+0

Resulta em: 226

Como Converter de Decimal para Binário

Bem, e se tivéssemos que fazer o contrário, converter o número 234 de decimal para

binário, qual seria o binário equivalente?

Nota: Nos exemplos deste tutorial vou trabalhar com valores decimais de, no máximo,

255, que são valores que podem ser representados por 8 dígitos binários, ou na

linguagem do computador 8 bits, o que equivale exatamente a um byte. Por isso que

cada um dos quatro números que fazem parte do número IP, somente podem ter um

valor máximo de 255, que é um valor que cabe em um byte, ou seja, 8 bits.

Existem muitas regras para fazer esta conversão, eu prefiro utilizar uma bem simples,

que descreverei a seguir e que serve perfeitamente para o propósito deste tutorial.

Vamos voltar ao nosso exemplo, como converter 234 para um binário de 8 dígitos?

Eu começo o raciocínio assim. Primeiro vamos lembrar o valor decimal correspondente

a cada um dos oito dígitos binários:

128 64 32 16 8 4 2 1

Lembrando que estes números representam potências de 2, começando, de trás para

frente, com 20, 2

1, 2

2 e assim por diante, conforme indicado logo a seguir:

128 64 32 16 8 4 2 1

27 26 25 24 23 22 21 20

Pergunto: 128 cabe em 234? Sim, então o primeiro dígito é 1. Somando 64 a 128 passa

de 234? Não, dá 192, então o segundo dígito também é 1. Somando 32 a 192 passa de

234? Não, dá 224, então o terceiro dígito também é 1. Somando 16 a 224 passa de 234?

Passa, então o quarto dígito é zero. Somando 8 a 224 passa de 234? Não, da 232, então

o quinto dígito é 1. Somando 4 a 232 passa de 234? Passa, então o sexto dígito é zero.

Somando 2 a 232 passa de 234? Não, dá exatamente 234, então o sétimo dígito é 1. Já

cheguei ao valor desejado, então todos os demais dígitos são zero. Com isso, o valor

234 em binário é igual a:

Page 15: Apostila TCP IP

15

11101010

Para exercitar vamos converter mais um número de decimal para binário. Vamos

converter o número 144 para binário.

Pergunto: 128 cabe em 144? Sim, então o primeiro dígito é 1. Somando 64 a 128 passa

de 144? Sim, dá 192, então o segundo dígito é 0. Somando 32 a 128 passa de 144? Sim,

dá 160, então o terceiro dígito também é 0. Somando 16 a 128 passa de 144? Não, dá

exatamente 144, então o quarto dígito é 1. Já cheguei ao valor desejado, então todos os

demais dígitos são zero. Com isso, o valor 144 em binário é igual a:

10010000

Bem, agora que você já sabe como converter de decimal para binário, está em condições

de aprender sobre o operador ―E‖ e como o TCP/IP usa a máscara de sub-rede (subnet

mask) e uma operação ―E‖, para verificar se duas máquinas estão na mesma rede ou em

redes diferentes.

O Operador E

Existem diversas operações lógicas que podem ser feitas entre dois dígitos binários,

sendo as mais conhecidas as seguintes: ―E‖, ―OU‖, ―XOR‖ e ―NOT‖.

Para o nosso estudo interessa o operador E. Quando realizamos um ―E‖ entre dois bits,

o resultado somente será 1, se os dois bits forem iguais a 1. Se pelo menos um dos bits

for igual a zero, o resultado será zero. Na tabela a seguir temos todos os valores

possíveis da operação E entre dois bits:

bit-1 bit-2 (bit-1) E (bit-2)

1 1 1

1 0 0

0 1 0

0 0 0

Como o TCP/IP usa a máscara de sub-rede:

Considere a figura a seguir, onde temos a representação de uma rede local, ligada a

outras redes da empresa, através de um roteador.

Page 16: Apostila TCP IP

16

Temos uma rede que usa como máscara de sub-rede 255.255.255.0 (uma rede classe C,

mas ainda não abordamos as classes de redes, o que será feito na Parte 3 deste curso). A

rede é a 10.200.150.0, ou seja, todos os equipamentos da rede têm as três primeiras

partes do número IP como sendo: 10.200.150. Veja que existe uma relação direta entre a

máscara de sub-rede a quantas das partes do número IP são fixas, ou seja, que definem a

rede, conforme foi descrito na Parte 1 deste curso.

A rede da figura anterior é uma rede das mais comumente encontradas hoje em dia,

onde existe um roteador ligado à rede e o roteador está conectado a um Modem, através

do qual é feita a conexão da rede local com a rede WAN da empresa, através de uma

linha de dados (também conhecido como link de comunicação). Nas próximas partes

lições vou detalhar a função do roteador e mostrarei como funciona o roteamento entre

redes.

Como o TCP/IP usa a máscara de sub-rede e o roteador

Quando dois computadores tentam trocar informações em uma rede, o TCP/IP precisa

primeiro, determinar se os dois computadores pertencem a mesma rede ou a redes

diferentes. Neste caso podemos ter duas situações distintas:

Page 17: Apostila TCP IP

17

Situação 1: Os dois computadores pertencem a mesma rede: Neste caso o TCP/IP

envia o pacote para o barramento local da rede. Todos os computadores recebem o

pacote, mas somente o computador que é o destinatário do pacote é que o captura e

passa para processamento pelo Windows e pelo programa de destino. Como é que o

computador sabe se ele é ou não o destinatário do pacote? Muito simples, no pacote de

informações está contido o endereço IP do computador destinatário. Em cada

computador, o TCP/IP compara o IP de destinatário do pacote com o IP do computador,

para saber se o pacote é ou não para o respectivo computador.

Situação 2: Os dois computadores não pertencem a mesma rede: Neste caso o

TCP/IP envia o pacote para o Roteador (endereço do Default Gateway configurado nas

propriedades do TCP/IP) e o Roteador se encarrega de fazer o pacote chegar ao seu

destino. Em uma das partes deste tutorial veremos detalhes sobre como o Roteador é

capaz de rotear pacotes de informações até redes distantes.

Agora a pergunta que tem a ver com este tópico:

“Como é que o TCP/IP faz para saber se o computador de origem e o computador

de destino pertencem a mesma rede?”

Vamos usar alguns exemplos práticos para explicar como o TCP/IP faz isso:

Exemplo 1: Com base na figura anterior, suponha que o computador cujo IP é

10.200.150.5 (origem) queira enviar um pacote de informações para o computador cujo

IP é 10.200.150.8 (destino), ambos com máscara de sub-rede igual a 255.255.255.0.

O primeiro passo é converter o número IP das duas máquinas e da máscara de sub-rede

para binário. Com base nas regras que vimos anteriormente, teríamos a seguinte

conversão:

Computador de origem:

10 200 150 5

00001010 11001000 10010110 00000101

Computador de destino:

10 200 150 8

00001010 11001000 10010110 00001000

Máscara de sub-rede:

255 255 255 0

11111111 11111111 11111111 00000000

Feitas as conversões para binário, vamos ver que tipo de cálculos o TCP/IP faz, para

determinar se o computador de origem e o computador de destino estão na mesma rede.

Em primeiro lugar é feita uma operação ―E‖, bit a bit, entre o Número IP e a máscara de

Sub-rede do computador de origem, conforme indicado na tabela a seguir:

Page 18: Apostila TCP IP

18

10.200.150.5 00001010 11001000 10010110 00000101 E 255.255.255.0 11111111 11111111 11111111 00000000

10.200.150.0 00001010 11001000 10010110 00000000 Resultado

Agora é feita uma operação ―E‖, bit a bit, entre o Número IP e a máscara de sub-rede do

computador de destino, conforme indicado na tabela a seguir:

10.200.150.8 00001010 11001000 10010110 00001000 E 255.255.255.0 11111111 11111111 11111111 00000000

10.200.150.0 00001010 11001000 10010110 00000000 Resultado

Agora o TCP/IP compara os resultados das duas operações. Se os dois resultados forem

iguais, aos dois computadores, origem e destino, pertencem a mesma rede local. Neste

caso o TCP/IP envia o pacote para o barramento da rede local. Todos os computadores

recebem o pacote, mas somente o destinatário do pacote é que o captura e passa para

processamento pelo Windows e pelo programa de destino. Como é que o computador

sabe se ele é ou não o destinatário do pacote? Muito simples, no pacote de informações

está contido o endereço IP do destinatário. Em cada computador, o TCP/IP compara o

IP de destinatário do pacote com o IP do computador, para saber se o pacote é ou não

para o respectivo computador.

É o que acontece neste exemplo, pois o resultado das duas operações ―E‖ é igual:

10.200.150.0, ou seja, os dois computadores pertencem a rede: 10.200.150.0

Como você já deve ter adivinhado, agora vamos a um exemplo, onde os dois

computadores não pertencem a mesma rede, pelo menos devido às configurações do

TCP/IP.

Exemplo 2: Suponha que o computador cujo IP é 10.200.150.5 (origem) queira enviar

um pacote de informações para o computador cujo IP é 10.204.150.8 (destino), ambos

com máscara de sub-rede igual a 255.255.255.0.

O primeiro passo é converter o número IP das duas máquinas e da máscara de sub-rede

para binário. Com base nas regras que vimos anteriormente, teríamos a seguinte

conversão:

Computador de origem:

10 200 150 5

00001010 11001000 10010110 00000101

Computador de destino:

10 204 150 8

00001010 11001100 10010110 00001000

Page 19: Apostila TCP IP

19

Máscara de sub-rede:

255 255 255 0

11111111 11111111 11111111 00000000

Feitas as conversões para binário, vamos ver que tipo de cálculos o TCP/IP faz, para

determinar se o computador de origem e o computador de destino estão na mesma rede.

Em primeiro lugar é feita uma operação ―E‖, bit a bit, entre o Número IP e a máscara de

Sub-rede do computador de origem, conforme indicado na tabela a seguir:

10.200.150.5 00001010 11001000 10010110 00000101 E 255.255.255.0 11111111 11111111 11111111 00000000

10.200.150.0 00001010 11001000 10010110 00000000 Resultado

Agora é feita uma operação ―E‖, bit a bit, entre o Número IP e a máscara de sub-rede do

computador de destino, conforme indicado na tabela a seguir:

10.204.150.8 00001010 11001100 10010110 00001000 E 255.255.255.0 11111111 11111111 11111111 00000000

10.204.150.0 00001010 11001100 10010110 00000000 Resultado

Agora o TCP/IP compara os resultados das duas operações. Neste exemplo, os dois

resultados são diferentes: 10.200.150.0 e 10.204.150.0. Nesta situação o TCP/IP envia o

pacote para o Roteador (endereço do Default Gateway configurado nas propriedades do

TCP/IP) e o Roteador se encarrega de fazer o pacote chegar a rede do computador de

destino. Em outras palavras o Roteador sabe entregar o pacote para a rede 10.204.150.0

ou sabe para quem enviar (um outro roteador), para que este próximo roteador possa

encaminhar o pacote. Este processo continua até que o pacote seja entregue na rede de

destino, ou seja, descartado, por não ter sido encontrada uma rota para a rede de destino.

Observe que, na figura anterior, temos dois computadores que, apesar de estarem

fisicamente na mesma rede, não conseguirão se comunicar devido a um erro de

configuração na máscara de sub-rede de um dos computadores. É o caso do computador

10.200.150.4 (com máscara de sub-rede 255.255.250.0). Como este computador está

com uma máscara de sub-rede diferente dos demais computadores da rede

(255.255.255.0), ao fazer os cálculos, o TCP/IP chega a conclusão que este computador

pertence a uma rede diferente, o que faz com que ele não consiga se comunicar com os

demais computadores da rede local.

Page 20: Apostila TCP IP

20

Conclusão

Nesta segunda lição do curso, apresentei aspectos relacionados com números binários e

aritmética binária básica. Também mostrei como o protocolo TCP/IP usa os

correspondentes binários do Número IP e da máscara de sub-rede, juntamente com uma

operação ―E‖, para determinar se dois computadores estão na mesma rede ou não. Com

base nestes cálculos, o TCP/IP encaminha os pacotes de informação de maneiras

diferentes.

Page 21: Apostila TCP IP

21

Classes de Endereços

Na Parte 1 deste curso apresentei o protocolo TCP/IP e qual o seu papel em uma rede de

computadores. Na Parte 2 apresentei os princípios básicos do sistema de numeração

binário. Também mostrei como realizar cálculos simples e conversões de Binário para

Decimal e vice-versa. Feita a apresentação das operações básicas com números binários,

mostrei como o TCP/IP, através de cálculos binários e, com base na máscara de sub-

rede (subnet mask), determina se dois computadores estão na mesma rede ou fazem

parte de redes diferentes. Nesta Parte vou falar sobre o endereçamento IP. Mostrarei

que, inicialmente, foram definidas classes de endereços IP. Porém, devido a uma

possível falta de endereços, por causa do grande crescimento da Internet, novas

alternativas tiveram que ser buscadas.

Endereçamento IP – Classes de Endereços

Nos vimos, na Parte 2, que a máscara de sub-rede é utilizada para determinar qual

―parte‖ do endereço IP representa o número da Rede e qual parte representa o número

da máquina dentro da rede. A máscara de sub-rede também foi utilizada na definição

original das classes de endereço IP. Em cada classe existe um determinado número de

redes possíveis e, em cada rede, um número máximo de máquinas.

Inicialmente foram definidas cinco classes de endereços, identificadas pelas letras: A, B,

C, D e E. Vou iniciar com uma descrição detalhada de cada Classe de Endereços e, em

seguida apresento um quadro resumo.

Redes Classe A

Esta classe foi definida com tendo o primeiro bit do número IP como sendo igual a zero.

Com isso o primeiro número IP somente poderá variar de 1 até 126 (na prática até 127,

mas o número 127 é um número reservado, conforme detalharei mais adiante). Observe,

no esquema a seguir, explicado na Parte 2, que o primeiro bit sendo 0, o valor máximo

(quando todos os demais bits são iguais a 1) a que se chega é de 127:

0 1 1 1 1 1 1 1

Multiplica por: 27 26 25 24 23 22 21 20

equivale a: 128 64 32 16 8 4 2 1

Multiplicação: 0x128 1x64 1x32 1x16 1x8 1x4 1x2 1x1

Resulta em: 0 64 32 16 8 4 2 1

Somando tudo: 0+64+32+16+8+4+2+1

Page 22: Apostila TCP IP

22

Resulta em: 127

O número 127 não é utilizado como rede Classe A, pois é um número especial,

reservado para fazer referência ao próprio computador. O número 127.0.0.1 é um

número especial, conhecido como localhost. Ou seja, sempre que um programa fizer

referência a localhost ou ao número 127.0.0.1, estará fazendo referência ao computador

onde o programa está sendo executado.

Por padrão, para a Classe A, foi definida a seguinte máscara de sub-rede: 255.0.0.0.

Com esta máscara de sub-rede observe que temos 8 bits para o endereço da rede e 24

bits para o endereço da máquina dentro da rede. Com base no número de bits para a rede

e para as máquinas, podemos determinar quantas redes Classe A podem existir e qual o

número máximo de máquinas por rede. Para isso utilizamos a fórmula a seguir:

2n- 2

, onde ―n‖ representa o número de bits utilizado para a rede ou para a identificação da

máquina dentro da rede. Vamos aos cálculos:

Número de redes Classe A

Número de bits para a rede: 7. Como o primeiro bit sempre é zero, este não varia. Por

isso sobram 7 bits (8-1) para formar diferentes redes:

27-2 -> 128-2 -> 126 redes Classe A

Número de máquinas (hosts) em uma rede Classe A

Número de bits para identificar a máquina: 24

224

-2 -> 16777216 - 2 -> 16777214 máquinas em cada rede classe A.

Na Classe A temos apenas um pequeno número de redes disponíveis, porém um grande

número de máquinas em cada rede.

Já podemos concluir que este número de máquinas, na prática, jamais será instalado em

uma única rede. Com isso observe que, com este esquema de endereçamento, teríamos

poucas redes Classe A (apenas 126) e com um número muito grande de máquinas em

cada rede. Isso causaria desperdício de endereços IP, pois se o endereço de uma rede

Classe A fosse disponibilizado para uma empresa, esta utilizaria apenas uma pequena

parcela dos endereços disponíveis e todos os demais endereços ficariam sem uso. Para

resolver esta questão é que se passou a utilizar a divisão em sub-redes, assunto este que

será visto na Parte 5 deste curso.

Redes Classe B

Esta classe foi definida com tendo os dois primeiros bits do número IP como sendo

sempre iguais a 1 e 0. Com isso o primeiro número do endereço IP somente poderá

Page 23: Apostila TCP IP

23

variar de 128 até 191. Como o segundo bit é sempre 0, o valor do segundo bit que é 64

nunca é somado para o primeiro número IP, com isso o valor máximo fica em: 255-64,

que é o 191. Observe, no esquema a seguir, explicado na Parte 2 deste curso, que o

primeiro bit sendo 1 e o segundo sendo 0, o valor máximo (quando todos os demais bits

são iguais a 1) a que se chega é de 191:

1 0 1 1 1 1 1 1

Multiplica por: 27 26 25 24 23 22 21 20

equivale a: 128 64 32 16 8 4 2 1

Multiplicação: 1x128 0x64 1x32 1x16 1x8 1x4 1x2 1x1

Resulta em: 128 0 32 16 8 4 2 1

Somando tudo: 128+0+32+16+8+4+2+1

Resulta em: 191

Por padrão, para a Classe B, foi definida a seguinte máscara de sub-rede: 255.255.0.0.

Com esta máscara de sub-rede observe que temos 16 bits para o endereço da rede e 16

bits para o endereço da máquina dentro da rede. Com base no número de bits para a rede

e para as máquinas, podemos determinar quantas redes Classe B podem existir e qual o

número máximo de máquinas por rede. Para isso utilizamos a fórmula a seguir:

2n- 2

, onde ―n‖ representa o número de bits utilizado para a rede ou para a identificação da

máquina dentro da rede. Vamos aos cálculos:

Número de redes Classe B

Número de bits para a rede: 14. Como o primeiro e o segundo bit são sempre 10, fixos,

não variam, sobram 14 bits (16-2) para formar diferentes redes:

214

-2 -> 16384-2 -> 16382 redes Classe B

Número de máquinas (hosts) em uma rede Classe B

Número de bits para identificar a máquina: 16

216

-2 -> 65536-2 -> 65534 máquinas em cada rede classe B

Page 24: Apostila TCP IP

24

Na Classe B temos um número razoável de redes Classe B, com um bom número de

máquinas em cada rede.

O número máximo de máquinas, por rede Classe B já está mais próximo da realidade

para as redes de algumas grandes empresas tais como Microsoft, IBM, HP, GM, etc.

Mesmo assim, para muitas empresas menores, a utilização de um endereço Classe B,

representa um grande desperdício de números IP. Conforme veremos na Parte 7 deste

tutorial é possível usar um número diferentes de bits para a máscara de sub-rede, ao

invés dos 16 bits definidos por padrão para a Classe B (o que também é possível com

Classe A e Classe C). Com isso posso dividir uma rede classe B em várias sub-redes

menores, com um número menor de máquinas em cada sub-rede. Mas isso é assunto

para a Parte 7 deste tutorial.

Redes Classe C

Esta classe foi definida com tendo os três primeiros bits do número IP como sendo

sempre iguais a 1, 1 e 0. Com isso o primeiro número do endereço IP somente poderá

variar de 192 até 223. Como o terceiro bit é sempre 0, o valor do terceiro bit que é 32

nunca é somado para o primeiro número IP, com isso o valor máximo fica em: 255-32,

que é 223. Observe, no esquema a seguir, explicado na Parte 2 deste tutorial, que o

primeiro bit sendo 1, o segundo bit sendo 1 e o terceiro bit sendo 0, o valor máximo

(quando todos os demais bits são iguais a 1) a que se chega é de 223:

1 1 0 1 1 1 1 1

Multiplica por: 27 26 25 24 23 22 21 20

equivale a: 128 64 32 16 8 4 2 1

Multiplicação: 1x128 1x64 0x32 1x16 1x8 1x4 1x2 1x1

Resulta em: 128 64 0 16 8 4 2 1

Somando tudo: 128+64+0+16+8+4+2+1

Resulta em: 223

Por padrão, para a Classe C, foi definida a seguinte máscara de sub-rede:

255.255.255.0. Com esta máscara de sub-rede observe que temos 24 bits para o

endereço da rede e apenas 8 bits para o endereço da máquina dentro da rede. Com base

no número de bits para a rede e para as máquinas, podemos determinar quantas redes

Classe C podem existir e qual o número máximo de máquinas por rede. Para isso

utilizamos a fórmula a seguir:

2n- 2

Page 25: Apostila TCP IP

25

, onde ―n‖ representa o número de bits utilizado para a rede ou para a identificação da

máquina dentro da rede. Vamos aos cálculos:

Número de redes Classe C

Número de bits para a rede: 21. Como o primeiro, o segundo e o terceiro bit são sempre

110, ou seja: fixos, não variam, sobram 21 bits (24-3) para formar diferentes redes:

221

-2 -> 2.097.152-2 -> 2.097.150 redes Classe C

Número de máquinas (hosts) em uma rede Classe C:

Número de bits para identificar a máquina: 8

28-2 -> 256-2 -> 254 máquinas em cada rede classe C

Observe que na Classe C temos um grande número de redes disponíveis, com, no

máximo, 254 máquinas em cada rede. É o ideal para empresas de pequeno porte.

Mesmo com a Classe C, existe um grande desperdício de endereços. Imagine uma

pequena empresa com apenas 20 máquinas em rede. Usando um endereço Classe C,

estariam sendo desperdiçados 234 endereços. Conforme já descrito anteriormente, esta

questão do desperdício de endereços IP pode ser resolvida através da utilização de sub-

redes.

Redes Classe D

Esta classe foi definida com tendo os quatro primeiros bits do número IP como sendo

sempre iguais a 1, 1, 1 e 0. A classe D é uma classe especial, reservada para os

chamados endereços de Multicast. Falaremos sobre Multicast, Unicast e Broadcast em

uma das próximas partes deste tutorial.

Redes Classe E

Esta classe foi definida com tendo os quatro primeiros bits do número IP como sendo

sempre iguais a 1, 1, 1 e 1. A classe E é uma classe especial e está reservada para uso

futuro.

Quadro resumo das Classes de Endereço IP

A seguir apresento uma tabela com as principais características de cada Classe de

Endereços IP:

Classe Primeiros bits Núm. de redes Número de hosts Máscara padrão

A 0 126 16.777.214 255.0.0.0

B 10 16.382 65.534 255.255.0.0

Page 26: Apostila TCP IP

26

C 110 2.097.150 254 255.255.255.0

D 1110 Utilizado para tráfego Multicast

E 1111 Reservado para uso futuro

Endereços Especiais

Existem alguns endereços IP especiais, reservados para funções específicas e que não

podem ser utilizados como endereços de uma máquina da rede. A seguir descrevo estes

endereços.

Endereços da rede 127.0.0.0: São utilizados como um aliás (apelido), para fazer referência a própria máquina. Normalmente é utilizado o endereço 127.0.0.1, o qual é associado ao nome localhost. Esta associação é feita através do arquivo hosts. No Windows 95/98/Me o arquivo hosts está na pasta onde o Windows foi instalado e no Windows 2000/XP/Vista/2003, o arquivo hosts está no seguinte caminho: system32/drivers/etc., sendo que este caminho fica dentro da pasta onde o Windows foi instalado.

Endereço com todos os bits destinados à identificação da máquina, iguais a 0: Um endereço com zeros em todos os bits de identificação da máquina representa o endereço da rede. Por exemplo, vamos supor que você tenha uma rede Classe C. A máquina a seguir é uma máquina desta rede: 200.220.150.3. Neste caso o endereço da rede é: 200.220.150.0, ou seja, zero na parte destinada a identificação da máquina. Sendo uma rede classe C, a máscara de sub-rede é 255.255.255.0.

Endereço com todos os bits destinados à identificação da máquina, iguais a 1: Um endereço com valor 1 em todos os bits de identificação da máquina representa o endereço de broadcast. Por exemplo, vamos supor que você tenha uma rede Classe C. A máquina a seguir é uma máquina desta rede: 200.220.150.3. Neste caso o endereço de broadcast desta rede é o seguinte: 200.220.150.255, ou seja, todos os bits da parte destinada à identificação da máquina, iguais a 1. Sendo uma rede classe C, a máscara de sub-rede é 255.255.255.0. Ao enviar uma mensagem para o endereço do broadcast, a mensagem é endereçada para todos as máquinas da rede.

Conclusão

Nesta terceira parte do tutorial de TCP/IP, apresentei uma introdução ao conceito de

Endereçamento IP e às classes de endereçamento padrão. Na Parte 4 falarei sobre a

maneira como é feito o roteamento IP entre redes diferentes, através do uso de

roteadores.

Não se esqueça de consultar os endereços a seguir para aprofundar os estudos de

TCP/IP:

http://www.juliobattisti.com.br/tcpip.asp http://www.guiadohardware.info/tutoriais/enderecamento_ip/index.asp http://www.guiadohardware.info/curso/redes_guia_completo/22.asp http://www.guiadohardware.info/curso/redes_guia_completo/23.asp

Page 27: Apostila TCP IP

27

http://www.guiadohardware.info/curso/redes_guia_completo/28.asp http://www.aprendaemcasa.com.br/tcpip1.htm http://www.aprendaemcasa.com.br/tcpip2.htm (estes endereços vão até o

tcpip48.htm, sendo um curso gratuito OnLine sobre TCP/IP no Windows 2000). http://www.vanquish.com.br/site/020608 http://unsekurity.virtualave.net/texto1/texto_tcpip_basico.txt http://unsekurity.virtualave.net/texto1/tcpipI.txt http://www.rota67.hpg.ig.com.br/tutorial/protocolos/amfhp_tcpip_basico001.htm http://www.rota67.hpg.ig.com.br/tutorial/protocolos/amfhp_tcpip_av001.htm http://www.geocities.com/ResearchTriangle/Thinktank/4203/doc/tcpip.zip

Page 28: Apostila TCP IP

28

Introdução ao Roteamento IP

Na Parte 1 apresentei o protocolo TCP/IP e qual o seu papel em uma rede de

computadores. Na Parte 2 apresentei os princípios básicos do sistema de numeração

binário. Também mostrei como realizar cálculos simples e conversões de Binário para

Decimal e vice-versa. Feita a apresentação das operações básicas com números binários,

vimos como o protocolo TCP/IP, através de cálculos binários e, com base na máscara de

sub-rede (subnet mask), determina se dois computadores estão na mesma rede ou fazem

parte de redes diferentes. Na Parte 3 falei sobre o endereçamento IP. Mostrei que,

inicialmente, foram definidas classes de endereços IP. Porém, devido a uma possível

falta de endereços, por causa do grande crescimento da Internet, novas alternativas

tiveram que ser buscadas. Nesta parte vou iniciar a abordagem sobre Roteamento.

Falarei sobre o papel dos roteadores na ligação entre redes locais (LANs) para formar

uma WAN. Mostrarei alguns exemplos básicos de roteamento. Na Parte 5 vou

aprofundar um pouco mais a discussão sobre Roteamento.

O papel do Roteador em uma rede de computadores

Nos vimos, na Parte 2, que a máscara de sub-rede é utilizada para determinar qual

―parte‖ do endereço IP representa o número da Rede e qual parte representa o número

da máquina dentro da rede. A máscara de sub-rede também foi utilizada na definição

original das classes de endereço IP. Em cada classe existe um determinado número de

redes possíveis e, em cada rede, um número máximo de máquinas (veja Parte 3). Com

base na máscara de sub-rede o protocolo TCP/IP determina se o computador de origem

e o de destino está na mesma rede local. Com base em cálculos binários, o TCP/IP pode

chegar a dois resultados distintos:

O computador de origem e o computador de destino estão na mesma rede

local: Neste caso os dados são enviados para o barramento da rede local. Todos

os computadores da rede recebem os dados. Ao receber os dados cada

computador analisa o campo Número IP do destinatário. Se o IP do destinatário

for igual ao IP do computador, os dados são capturados e processados pelo

sistema, caso contrário são simplesmente descartados. Observe que com este

procedimento, apenas o computador de destino é que efetivamente processa os

dados para ele enviados, os demais computadores simplesmente descartam os

dados.

O computador de origem e de destino não estão na mesma rede local: Neste

caso os dados são enviados o equipamento com o número IP configurado no

parâmetro Default Gateway (Gateway Padrão). Ou seja, se após os cálculos

baseados na máscara de sub-rede, o TCP/IP chegar a conclusão que o

computador de destino e o computador de origem não fazem parte da mesma

rede local, os dados são enviados para o Default Gateway, o qual será

encarregado de encontrar um caminho para enviar os dados até o computador de

destino. Esse ―encontrar o caminho― é tecnicamente conhecido como Rotear os

dados até o destino (ou melhor, rotear os dados até a rede do computador de

destino). O responsável por ―Rotear‖ os dados é o equipamento que atua como

Default Gateway o qual é conhecido como Roteador. Com isso fica fácil

entender o papel do Roteador:

Page 29: Apostila TCP IP

29

“O Roteador é o responsável por encontrar um caminho entre a rede onde está o

computador que enviou os dados (computador de origem) e a rede onde está o

computador que irá receber os dados (computador de destino).”

Quando ocorre um problema com o Roteador, tornando-o indisponível, você consegue

se comunicar normalmente com os demais computadores da sua rede local, porém não

conseguirá comunicação com outras redes de computadores, como por exemplo, a

Internet.

Como Verificar o Default Gateway no Windows 2000/Windows XP ou Windows

Server 2003?

Você pode verificar as configurações do TCP/IP de um computador com o Windows

2000, Windows Server 2003 ou Windows XP de duas maneiras distintas: Acessando as

propriedades da interface de rede ou com o comando ipconfig. A seguir descrevo estas

duas maneiras:

Verificando as configurações do TCP/IP usando a interface gráfica:

1. Clique com o botão direito do mouse no ícone Meus locais de rede, na Área de

trabalho.

2. No menu que é exibido clique na opção Propriedades.

3. Será exibida a janela Conexões dial-up e de rede. Nessa janela é exibido um ícone

para cada conexão disponível. Por exemplo, se o seu computador estiver conectado a

uma rede local e também tiver uma conexão via Modem, será exibido um ícone para

cada conexão. Nesta janela também está disponível o ícone ―Fazer nova conexão‖. Com

esse ícone você pode criar novas conexões. Na figura a seguir temos um exemplo onde

está disponível apenas uma conexão de rede local:

4. Clique com o botão direito do mouse no ícone ―Conexão de rede local‖. No menu

de opções que é exibido clique em Propriedades.

Page 30: Apostila TCP IP

30

5. Será exibida a janela de Propriedades da conexão de rede local, conforme

indicado na figura a seguir:

6. Clique na opção Protocolo Internet (TCP/IP) e depois clique no botão

Propriedades.

7. A janela de propriedades do TCP/IP será exibida, conforme indicado na próxima

figura. Nesta janela são exibidas informações sobre o número IP do computador, a

máscara de sub-rede, o Gateway padrão e o número IP dos servidores DNS primário e

secundário. Se a opção obter um endereço IP automaticamente estiver marcada, o

computador tentará obter todas estas configurações a partir de um servidor DHCP,

durante a inicialização do Windows. Neste caso as informações sobre as configurações

TCP/IP, inclusive o número IP do Roteador (Gateway Padrão), somente poderão ser

obtidas através do comando ipconfig, conforme descrevo logo a seguir.

8. Clique em OK para fechar a janela de Propriedades do protocolo TCP/IP.

9. Você estará de volta a janela de Propriedades da conexão de rede local. Clique em

OK para fechá-la.

10. Você estará de volta à janela Conexões dial-up e de rede. Feche-a.

Page 31: Apostila TCP IP

31

Verificando as configurações do TCP/IP usando o comando ipconfig

Para verificar as configurações do TCP/IP, utilizando o comando ipconfig, siga os

seguintes passos:

1. Abra o Prompt de comando: Iniciar -> Programas -> Acessórios -> Prompt de

comando.

2. Digite o comando ipconfig/all

3. Serão listadas as configurações do TCP/IP, conforme exemplo da listagem a

seguir, onde uma das informações exibidas é o número IP do Gateway Padrão (Default

Gateway):

Configuração de IP do Windows 2000

Nome do host. . . . . . . . . . . : MICRO080

Sufixo DNS primário. . . . . . . . : abc.com.br

Tipo de nó . . . . . . . . . . . . : Híbrida

Roteamento de IP ativado. . . . . : Não

Proxy WINS ativado. . . . . . . . : Não

Lista de pesquisa de sufixo DNS. . : abc.com.br

vendas.abc.com.br

finan.abc.com.br

Page 32: Apostila TCP IP

32

Ethernet adaptador Conexão de rede local:

Sufixo DNS específico de conexão . : abc.com.br

Descrição. . . . . . . . . . . . . : 3COM - AX 25

Endereço físico. . . . . . . . . . : 04-02-B3-92-82-CA

DHCP ativado . . . . . . . . . . . : Sim

Configuração automática ativada. . : Sim

Endereço IP. . . . . . . . . . . . : 10.10.10.222

Máscara de sub-rede. . . . . . . . : 255.255.0.0

Gateway padrão . . . . . . . . . . : 10.10.10.1

Servidor DHCP. . . . . . . . . . . : 10.10.10.2

Servidores DNS . . . . . . . . . . : 10.10.10.2

Servidor WINS primário . . . . . . : 10.10.10.2

Explicando Roteamento – um exemplo prático

Vou iniciar a explicação sobre como o roteamento funciona, através da análise de um

exemplos simples. Vamos imaginar a situação de uma empresa que tem a matriz em SP

e uma filial no RJ. O objetivo é conectar a rede local da matriz em SP com a rede local

da filial no RJ, para permitir a troca de mensagens e documentos entre os dois

escritórios. Nesta situação o primeiro passo é contratar um link de comunicação entre os

dois escritórios. Em cada escritório deve ser instalado um Roteador. E finalmente os

roteadores devem ser configurados para que seja possível a troca de informações entre

as duas redes. Na figura a seguir temos a ilustração desta pequena rede de longa

distância (WAN). Em seguida vamos explicar como funciona o roteamento entre as

duas redes:

Page 33: Apostila TCP IP

33

Nesta pequena rede temos um exemplo simples de roteamento, mas muito a explicar.

Então vamos ao trabalho.

Como está configurado o endereçamento das redes locais e dos roteadores?

Rede de SP: Esta rede utiliza um esquema de endereçamento 10.10.10.0, com

máscara de sub-rede 255.255.255.0. Observe que embora, teoricamente, seria

uma rede Classe A, estamos utilizando uma máscara de sub-rede classe C. Na

prática, é uma rede Classe C, pois, na prática, consideramos a Máscara de Sub-

rede como critério para definir a classe de rede e não as faixas teóricas,

apresentadas na Parte 3. Veja a parte 3 para detalhes sobre Classes de Endereços

IP.

Rede de RJ: Esta rede utiliza um esquema de endereçamento 10.10.20.0, com

máscara de sub-rede 255.255.255.0. Observe que embora, teoricamente, seria

uma rede Classe A, estamos utilizando uma máscara de sub-rede classe C. Veja

a Parte 3 para detalhes sobre Classes de Endereços IP.

Roteadores: Cada roteador possui duas interfaces. Uma é a chamada interface

de LAN (rede local), a qual conecta o roteador com a rede local. A outra é a

interface de WAN (rede de longa distância), a qual conecta o roteador com o

link de dados. Na interface de rede local, o roteador deve ter um endereço IP da

rede interna. No roteador de SP, o endereço é 10.10.10.1. Não é obrigatório, mas

é um padrão normalmente adotado, utilizar o primeiro endereço da rede para o

Roteador. No roteador do RJ, o endereço é 10.10.20.1

Rede dos roteadores: Para que as interfaces externas dos roteadores possam se

comunicar, eles devem fazer parte de uma mesma rede, isto é, devem

compartilhar um esquema de endereçamento comum. As interfaces externas dos

roteadores (interfaces WAN) fazem parte da rede 10.10.30.0, com máscara de

sub-rede 255.255.255.0.

Na verdade - 3 redes: Com isso temos, na prática três redes, conforme

resumido a seguir:

o SP: 10.10.10.0/255.255.255.0

o RJ: 10.10.20.0/255.255.255.0

o Interfaces WAN dos Roteadores: 10.10.30.0/255.255.255.0

Na prática é como se a rede 10.10.30.0 fosse uma ―ponte‖ entre as duas outras

redes.

Como é feita a interligação entre as duas redes?

Vou utilizar um exemplo prático, para mostrar como é feito o roteamento entre as duas

redes.

Exemplo: Vamos analisar como é feito o roteamento, quando um computador da rede

em SP, precisa acessar informações de um computador da rede no RJ. O computador

SP-01 (10.10.10.5), precisa acessar um arquivo que está em uma pasta compartilhada do

Page 34: Apostila TCP IP

34

computador RJ-02 (10.10.20.12). Como é feito o roteamento, de tal maneira que estes

dois computadores possam trocar informações? Acompanhe os passos descritos a

seguir:

1. O computador SP-01 é o computador de origem e o computador RJ-02 é o

computador de destino. A primeira ação do TCP/IP é fazer os cálculos para verificar se

os dois computadores estão na mesma rede (veja como são feitos estes cálculos na Parte

2). Os seguintes dados são utilizados para realização destes cálculos:

SP-01: 10.10.10.5/255.255.255.0

RJ-02: 10.10.20.12/255.255.255.0

2. Feitos os cálculos, o TCP/IP chega a conclusão de que os dois computadores

pertencem a redes diferentes: SP-01 pertence a rede 10.10.10.0 e RJ-02 pertence a rede

10.10.20.0.

3. Como os computadores pertencem a redes diferentes, os dados devem ser

enviados para o Roteador.

4. No roteador de SP chega o pacote de informações com o IP de destino:

10.10.20.12. O roteador precisa consultar a sua tabela de roteamento (assunto da Parte

5) e verificar se ele conhece um caminho para a rede 10.10.20.0.

5. O roteador de SP tem, em sua tabela de roteamento, a informação de que pacotes

para a rede 10.10.20.0 devem ser encaminhados pela interface 10.10.30.1. É isso que ele

faz, ou seja, encaminha os pacotes através da interface de WAN: 10.10.30.1.

6. Os pacotes de dados chegam na interface 10.10.30.1 e são enviados, através do

link de comunicação, para a interface 10.10.30.2, do roteador do RJ.

7. No roteador do RJ chega o pacote de informações com o IP de destino:

10.10.20.12. O roteador precisa consultar a sua tabela de roteamento (assunto da Parte

5) e verificar se ele conhece um caminho para a rede 10.10.20.0.

8. O roteador do RJ tem, em sua tabela de roteamento, a informação de que pacotes

para a rede 10.10.20.0 devem ser encaminhados pela interface de LAN 10.10.20.1, que

é a interface que conecta o roteador a rede local 10.10.20.1. O pacote é enviado, através

da interface 10.10.20.1, para o barramento da rede local. Todos os computadores

recebem os pacotes de dados e os descartam, com exceção do computador 10.10.20.12

que é o computador de destino.

9. Para que a resposta possa ir do computador RJ-02 de volta para o computador SP-

01, um caminho precisa ser encontrado, para que os pacotes de dados possam ser

roteados do RJ para SP. Para tal todo o processo é executado novamente, até que a

resposta chegue ao computador SP-01.

10. A chave toda para o processo de roteamento é o software presente nos roteadores,

o qual atua com base em tabelas de roteamento, as quais serão descritas na Parte 5.

Conclusão

Page 35: Apostila TCP IP

35

Nesta quarta parte do tutorial de TCP/IP, apresentei uma introdução sobre como

funciona o Roteamento IP entre redes locais conectadas remotamente, através de links

de WAN. Na Parte 5 vou aprofundar um pouco mais essa discussão, onde falarei sobre

as tabelas de roteamento. Não se esqueça de consultar os endereços a seguir para

aprofundar os estudos de TCP/IP:

http://www.juliobattisti.com.br/tcpip.asp

http://www.guiadohardware.info/tutoriais/enderecamento_ip/index.asp

http://www.guiadohardware.info/curso/redes_guia_completo/22.asp

http://www.guiadohardware.info/curso/redes_guia_completo/23.asp

http://www.guiadohardware.info/curso/redes_guia_completo/28.asp

http://www.aprendaemcasa.com.br/tcpip1.htm

http://www.aprendaemcasa.com.br/tcpip2.htm (estes endereços vão até o

tcpip48.htm, sendo um curso gratuito OnLine sobre TCP/IP no Windows 2000).

http://www.vanquish.com.br/site/020608

http://unsekurity.virtualave.net/texto1/texto_tcpip_basico.txt

http://unsekurity.virtualave.net/texto1/tcpipI.txt

http://www.rota67.hpg.ig.com.br/tutorial/protocolos/amfhp_tcpip_basico001.ht

m

http://www.rota67.hpg.ig.com.br/tutorial/protocolos/amfhp_tcpip_av001.htm

http://www.geocities.com/ResearchTriangle/Thinktank/4203/doc/tcpip.zip

Page 36: Apostila TCP IP

36

Exemplos de Roteamento

Esta é a quinta parte do Tutorial de TCP/IP. Na Parte 1 tratei dos aspectos básicos do

protocolo TCP/IP. Na Parte 2 falei sobre cálculos binários, um importante tópico para

entender sobre redes, máscara de sub-rede e roteamento. Na Parte 3 falei sobre Classes

de endereços e na Parte 4 fiz uma introdução ao roteamento. Agora falarei mais um

pouco sobre roteamento.

Mais um exemplo de roteamento

Neste item vou analisar mais alguns exemplos de roteamento e falar sobre tabela de

roteamento.

Exemplo 01: Considere a rede indicada no diagrama da Figura a seguir:

Primeiro alguns comentários sobre a WAN apresentada na Figura:

1. A WAN é formada pela conexão de quatro redes locais, com as seguintes

características:

Rede Número da rede Máscara de sub-rede

01 10.10.10.0 255.255.255.0

02 10.10.20.0 255.255.255.0

03 10.10.30.0 255.255.255.0

04 10.10.40.0 255.255.255.0

2. Existe uma quinta rede que é a rede formada pelas interfaces de WAN dos roteadores.

Este rede apresenta as seguintes características:

Page 37: Apostila TCP IP

37

Rede Número da rede Máscara de sub-rede

Roteadores 10.10.5.0 255.255.255.0

3. Existem três roteadores fazendo a conexão das quatro redes existentes. Com as

configurações apresentadas, qualquer rede é capaz de se comunicar com qualquer outra

rede da WAN.

4. Existem pontos únicos de falha. Por exemplo, se o Roteador 03 apresentar problemas,

a Rede 03 ficará completamente isolada das demais redes. Se o Roteador 02 apresentar

problemas, as Redes 02 e 04 ficarão isoladas das demais redes e também isoladas entre

si.

5. As redes 02 e 04 estão diretamente conectadas ao Roteador 02. Cada rede em uma

interface do roteador. Este pode ser um exemplo de um prédio com duas redes locais, as

quais são conectadas através do roteador. Neste caso, o papel do Roteador 02 é conectar

as redes 02 e 04 entre si e estas redes com o restante da WAN.

6. A interface de conexão do roteador com a rede local utiliza sempre o primeiro

número IP da faixa disponível (10.10.10.1, 10.10.20.1 e assim por diante). Não é

obrigatório reservar o primeiro IP para a interface de LAN do roteador (número este que

será configurado como Default Gateway nas estações de trabalho da respectiva rede,

conforme descrito anteriormente). Embora não seja obrigatório é uma convenção

comumente utilizada.

Agora que apresentei alguns comentários sobre a rede da figura anterior, vamos analisar

como será feito o roteamento entre as diferentes redes.

Primeira análise: Analisar como é feito o roteamento, quando um computador da Rede

01, precisa acessar informações de um computador da Rede 03. Por exemplo, o

computador 10.10.10.25 da Rede 01, precisa acessar um arquivo que está em uma pasta

compartilhada do computador 10.10.30.144 da Rede 03. Neste caso a rede de origem é a

rede 10.10.10.0 e a rede de destino é 10.10.30.0. Como é feito o roteamento, de tal

maneira que estes dois computadores possam trocar informações?

Acompanhe os passos descritos a seguir:

1. O computador 10.10.10.25 é o computador de origem e o computador 10.10.30.144 é

o computador de destino. A primeira ação do TCP/IP é fazer os cálculos para verificar

se os dois computadores estão na mesma rede, conforme explicado no Capítulo 2. Os

seguintes dados são utilizados para realização destes cálculos:

Computador na Rede 01: 10.10.10.25/255.255.255.0

Computador na Rede 03: 10.10.30.144/255.255.255.0

2. Feitos os cálculos, o protocolo TCP/IP "chega a conclusão" de que os dois

computadores pertencem a redes diferentes: O computador 10.10.10.25 pertence a rede

10.10.10.0 e o computador 10.10.30.144 pertence a rede 10.10.30.0.

Nota: Para detalhes sobre estes cálculos consulte a Parte 2 deste tutorial.

Page 38: Apostila TCP IP

38

3. Como os computadores pertencem a redes diferentes, os dados devem ser enviados

para o Roteador da rede 10.10.10.0, que é a rede do computador de origem.

4. O pacote é enviado para o roteador da rede 10.10.10.0, que está conectado através da

interface 10.10.10.1. Neste roteador, pela interface 10.10.10.1, chega o pacote de

informações com o IP de destino: 10.10.30.144. O roteador precisa consultar a sua

tabela de roteamento e verificar se ele conhece um caminho para a rede 10.10.30.0, ou

seja, se ele sabe para quem enviar um pacote de informações, destinado a rede

10.10.30.0.

5. O Roteador 01 tem, em sua tabela de roteamento, a informação de que pacotes para a

rede 10.10.30.0 devem ser encaminhados pela interface de WAN 10.10.5.1. É isso que

ele faz, ou seja, encaminha os pacotes através da interface de WAN: 10.10.5.1.

6. Os pacotes de dados chegam na interface de WAN 10.10.5.1 e são enviados, através

do link de comunicação, para a interface de WAN 10.10.5.2, do roteador da Rede 03.

7. No Roteador 03 chega o pacote de informações com o IP de destino: 10.10.30.144. O

roteador precisa consultar a sua tabela de roteamento e verificar se ele conhece um

caminho para a rede 10.10.30.0.

8. O Roteador 03 tem, em sua tabela de roteamento, a informação de que pacotes para a

rede 10.10.30.0 devem ser encaminhados pela interface de LAN 10.10.30.1, que é a

interface que conecta o Roteador 03 à rede local 10.10.30.0. O pacote é enviado, através

da interface 10.10.30.1, para o barramento da rede local. Todos os computadores

recebem os pacotes de dados e os descartam, com exceção do computador 10.10.30.144

que é o computador de destino.

9. Para que a resposta possa retornar do computador 10.10.30.144 para o computador

10.10.10.25, um caminho precisa ser encontrado, para que os pacotes de dados possam

ser roteados da Rede 03 para a Rede 01 (o caminho de volta no nosso exemplo). Para tal

todo o processo é executado novamente, até que a resposta chegue ao computador

10.10.10.25.

10. A chave toda para o processo de roteamento é o software presente nos roteadores, o

qual atua com base em tabelas de roteamento.

Segunda análise: Analisar como é feito o roteamento, quando um computador da Rede

03, precisa acessar informações de um computador da Rede 02. Por exemplo, o

computador 10.10.30.25 da Rede 03, precisa acessar uma impressora que está

compartilhada do computador 10.10.20.144 da Rede 02. Neste caso a rede de origem é a

rede 10.10.30.0 e a rede de destino é 10.10.20.0. Como é feito o roteamento, de tal

maneira que estes dois computadores possam trocar informações?

Acompanhe os passos descritos a seguir:

1. O computador 10.10.30.25 é o computador de origem e o computador 10.10.20.144 é

o computador de destino. A primeira ação do TCP/IP é fazer os cálculos para verificar

se os dois computadores estão na mesma rede, conforme explicado no Capítulo 2. Os

seguintes dados são utilizados para realização destes cálculos:

Page 39: Apostila TCP IP

39

Computador na Rede 03: 10.10.30.25/255.255.255.0

Computador na Rede 02: 10.10.20.144/255.255.255.0

2. Feitos os cálculos, o protocolo TCP/IP "chega a conclusão" de que os dois

computadores pertencem a redes diferentes: O computador 10.10.30.25 pertence a rede

10.10.30.0 e o computador 10.10.20.144 pertence a rede 10.10.20.0.

Nota: Para detalhes sobre estes cálculos consulte a Parte 2 deste tutorial.

3. Como os computadores pertencem a redes diferentes, os dados devem ser enviados

para o Roteador da rede 10.10.30.0, que é a rede do computador de origem.

4. O pacote é enviado para o roteador da rede 10.10.30.0, que está conectado através da

interface de LAN 10.10.30.1. Neste roteador, pela interface 10.10.30.1, chega o pacote

de informações com o IP de destino: 10.10.20.144. O roteador precisa consultar a sua

tabela de roteamento e verificar se ele conhece um caminho direto para a rede

10.10.20.0, ou seja, se ele sabe para quem enviar um pacote de informações, destinado a

rede 10.10.20.0.

5. Não existe um caminho direto para a rede 10.10.20.0. Tudo o que o roteador pode

fazer é saber para quem enviar o pacote, quando o destino for a rede 10.10.20.0. Neste

caso ele enviará o pacote para outro roteador e não diretamente para a rede 10.10.20.0.

O Roteador 03 tem, em sua tabela de roteamento, a informação de que pacotes

destinados à rede 10.10.20.0 devem ser encaminhados pela interface de WAN 10.10.5.2.

É isso que ele faz, ou seja, encaminha os pacotes através da interface de WAN:

10.10.5.2.

6. Os pacotes de dados chegam na interface de WAN 10.10.5.2 e são enviados, através

do link de comunicação, para a interface de WAN 10.10.5.1, do Roteador 01.

7. No Roteador 01 chega o pacote de informações com o IP de destino: 10.10.20.144. O

roteador precisa consultar a sua tabela de roteamento e verificar se ele conhece um

caminho para a rede 10.10.20.0.

8. Na tabela de roteamento do Roteador 01, consta a informação que pacotes para a rede

10.10.20.0, devem ser enviados para a interface de WAN 10.10.5.3, do Roteador 02. É

isso que ele faz, ou seja, roteia (encaminha) o pacote para a interface de WAN

10.10.5.3.

9. O pacote chega à interface de WAN do Roteador 02. O Roteador 02 tem, em sua

tabela de roteamento, a informação de que pacotes para a rede 10.10.20.0 devem ser

encaminhados pela interface de LAN 10.10.20.1, que é a interface que conecta o

Roteador 02 à rede local 10.10.20.0. O pacote é enviado, através da interface

10.10.20.1, para o barramento da rede local. Todos os computadores recebem os pacotes

de dados e os descartam, com exceção do computador 10.10.20.144 que é o computador

de destino.

10. Para que a resposta possa retornar do computador 10.10.20.144 para o computador

10.10.30.25, um caminho precisa ser encontrado, para que os pacotes de dados possam

ser roteados da Rede 02 para a Rede 03 (o caminho de volta no nosso exemplo). Para tal

Page 40: Apostila TCP IP

40

todo o processo é executado novamente, até que a resposta chegue ao computador

10.10.30.25.

Algumas considerações sobre roteamento

A chave toda para o processo de roteamento é o software presente nos roteadores, o qual

atua com base em tabelas de roteamento (assunto da Parte 6). Ou o roteador sabe

entregar o pacote diretamente para a rede de destino ou sabe para qual roteador enviar.

Esse processo continua, até que seja possível alcançar a rede de destino. Claro que em

redes mais complexas pode haver mais de um caminho entre origem e destino. Por

exemplo, na Internet, pode haver dois ou mais caminhos possíveis entre o computador

de origem e o computador de destino. Quando um arquivo é transmitido entre os

computadores de origem e destino, pode acontecer de alguns pacotes de informação

serem enviados por um caminho e outros pacotes por caminhos diferentes. Os pacotes

podem, inclusive, chegar fora de ordem no destino. O protocolo TCP/IP é o responsável

por identificar cada pacote e colocá-los na seqüência correta.

Existem também um número máximo de roteadores pelos quais um pacote pode passar,

antes de ser descartado. Normalmente este número é de 16 roteadores. No exemplo da

segunda análise, cada pacote passa por dois roteadores, até sair de um computador na

Rede 03 e chegar ao computador de destino, na Rede 02. Este passar por dois roteadores

é tecnicamente conhecido como "ter um caminho de 2 hopes". Um hope significa que

passou por um roteador. Diz-se, com isso, que o caminho máximo de um pacote é de 16

hopes. Isso é feito para evitar que pacotes fiquem circulando indefinidamente na rede e

congestionem os links de WAN, podendo até chegar a paralisar a rede.

Uma situação que poderia acontecer, por erro nas tabelas de roteamento, é um roteador

x mandar um pacote para o y, o roteador y mandar de volta para o x, o roteador x de

volta para y e assim indefinidamente. Esta situação ocorreria por erros nas tabelas de

roteamento. Para evitar que estes pacotes ficassem circulando indefinidamente na rede,

é que foi definido o limite de 16 hopes.

Outro conceito que pode ser encontrado, em relação a roteamento, é o de entrega direta

ou entrega indireta. Vamos ainda utilizar o exemplo da rede da Figura 16.2. Quando

dois computadores da mesma rede (por exemplo a rede 10.10.10.0) trocam informações

entre si, as informações são enviadas para o barramento da rede local e o computador de

destino captura e processa os dados. Dizemos que este é um caso de entrega direta.

Quando computadores de redes diferentes tentam se comunicar (por exemplo, um

computador da rede 10.10.10.0 e um da rede 10.10.20.0), os pacotes de informação são

enviados através dos roteadores da rede, até chegar ao destino. Depois a resposta

percorre o caminho inverso. Este processo é conhecido como entrega indireta.

Conclusão

Na próxima parte você irá aprender mais alguns detalhes sobre tabelas de roteamento e

analisar uma pequena tabela de roteamento que existe em cada computadores com o NT

4.0, Windows 2000, Windows XP ou Windows Server 2003 e com o protocolo TCP/IP

instalado.

Page 41: Apostila TCP IP

41

Tabelas de Roteamento

Esta é a sexta parte do Tutorial de TCP/IP. Na Parte 1 tratei dos aspectos básicos do

protocolo TCP/IP. Na Parte 2 falei sobre cálculos binários, um importante tópico para

entender sobre redes, máscara de sub-rede e roteamento. Na Parte 3 falei sobre Classes

de endereços IP, na Parte 4 fiz uma introdução ao roteamento e na Parte 5 apresentei

mais alguns exemplos e análises de como funciona o roteamento. Agora falarei mais um

pouco sobre roteamento.

Tabelas de roteamento

Falei na Parte 5 que toda a funcionalidade do Roteador é baseada em tabelas de

roteamento. Quando um pacote chega em uma das interfaces do roteador, ele analisa a

sua tabela de roteamento, para verificar se na tabela de roteamento, existe uma rota para

a rede de destino. Pode ser uma rota direta ou então para qual roteador o pacote deve ser

enviado. Este processo continua até que o pacote seja entregue na rede de destino, ou

até que o limite de 16 hopes (para simplificar imagine um hope como sendo um

roteador da rede) tenha sido atingido.

Na Figura a seguir apresento um exemplo de uma "mini-tabela" de roteamento:

Cada linha é uma entrada da tabela. Por exemplo, a linha a seguir é que define o Default

Gateway da ser utilizado:

0.0.0.0 0.0.0.0 200.175.106.54 200.175.106.54 1

Neste tópico você aprenderá sobre os campos que compõem uma entrada da tabela de

roteamento e o significado de cada campo. Também aprenderá a interpretar a tabela de

roteamento que existe em um computador com o Windows 2000, Windows XP ou

Windows Server 2003.

Page 42: Apostila TCP IP

42

Campos de uma tabela de roteamento

Uma entrada da tabela de roteamento possui os campos indicados no esquema a seguir e

explicados logo em seguida:

Network ID: Este é o endereço de destino. Pode ser o endereço de uma rede

(por exemplo: 10.10.10.0), o endereço de um equipamento da rede, o endereço

de uma sub-rede (veja detalhes sobre sub-redes na Parte 7) ou o endereço da rota

padrão (0.0.0.0). A rota padrão significa: "a rota que será utilizada, caso não

tenha sido encontrada uma rota específica para o destino". Por exemplo, se for

definida que a rota padrão deve ser envida pela interface com IP 10.10.5.2 de um

determinado roteador, sempre que chegar um pacote, para o qual não existe uma

rota específica para o destino do pacote, este será enviado pela rota padrão, que

no exemplo seria a interface 10.10.5.2. Falando de um jeito mais simples: Se não

souber para onde mandar, manda para a rota padrão.

Network Mask: A máscara de sub-rede utilizada para a rede de destino.

Next Hop: Endereço IP da interface para a qual o pacote deve ser enviado.

Considere o exemplo a seguir, como sendo uma entrada de um roteador, com

uma interface de WAN configurada com o IP número 10.200.200.4:

Esta entrada indica que pacotes enviados para a rede definida pelos parâmetros

10.100.100.0/255.255.255.0, deve ser enviada para o gateway 10.200.200.1 e para

chegar a este gateway, os pacotes de informação devem ser enviados pela interface

10.200.200.120. Neste exemplo, esta entrada está contida na tabela interna de

roteamento de um computador com o Windows Server 2003, cujo número IP é

10.200.200.120 e o default gateway configurado é 10.200.200.1. Neste caso, quando

este computador quiser se comunicar com um computador da rede 10.100.100.0, será

usada a entrada de roteamento descrita neste item. Nesta entrada está especificado que

pacotes para a rede 10.100.100.0, com máscara 255.255.255.0, devem ser enviados para

o default gateway 10.200.200.1 e que este envio deve ser feito através da interface de

rede 10.200.200.120, que no nosso exemplo é a placa de rede do computador. Uma vez

que o pacote chegou no default gateway (na interface de LAN do roteador), o processo

de roteamento, até a rede de destino (rede 10.100.100.0) é o processo descrito nas

análises anteriores.

Interface: É a interface através da qual o pacote deve ser enviado. Por exemplo,

se você estiver analisando a tabela de roteamento interna, de um computador

com o Windows Server 2003, o número IP do campo interface, será sempre o

Page 43: Apostila TCP IP

43

número IP da placa de rede, a não ser que você tenha mais de uma placa de rede

instalada.

Metric: A métrica é um indicativo da ―distância‖ da rota, entre destino e

origem, em termos de hopes. Conforme descrito anteriormente, pode haver mais

de um roteador entre origem e destino. Também pode haver mais de um

caminho entre origem e destino. Se for encontrada duas rotas para um mesmo

destino, o roteamento será feito pela rota de menor valor no campo Metric. Um

valor menor indica, normalmente, um número menor de hopes (roteadores) entre

origem e destino.

Analise da tabela de Roteamento

Agora que você já conhece os conceitos de tabelas de roteamento e também conhece os

campos que formam uma entrada em uma tabela de roteamento, é hora de analisar as

entradas de uma tabela de roteamento em um computador com o Windows Server 2003

instalado. No Windows Server 2003, o protocolo TCP/IP é instalado automaticamente e

não pode ser desinstalado (esta é uma das novidades do Windows Server 2003). Ao

instalar e configurar o protocolo TCP/IP, o Windows Server 2003 cria, na memória do

servidor, uma tabela de roteamento. Esta tabela é criada, dinamicamente, toda vez que o

servidor é inicializado. Ao desligar o servidor o conteúdo desta tabela será descartado,

para ser novamente recriado durante a próxima inicialização. A tabela de roteamento é

criada com base nas configurações do protocolo TCP/IP. Existem também a

possibilidade de adicionar entradas estáticas. Uma entrada estática fica gravada no HD

do computador e será adicionada à tabela de roteamento durante a inicialização do

sistema. Ou seja, além das entradas criadas automaticamente, com base nas

configurações do TCP/IP, também podem ser acrescentadas rotas estáticas, criadas com

o comando route, o qual descreverei mais adiante.

Para exibir a tabela de roteamento de um computador com o Windows Server 2003 (ou

com o Windows 2000, ou Windows XP), abra um Prompt de comando (Iniciar ->

Programas -> Acessórios -> Prompt de comando), digite o comando indicado a seguir e

pressione Enter:

route print

Será exibida uma tabela de roteamento, semelhante a indicada na Figura a seguir, onde é

exibida a tabela de roteamento para u

Page 44: Apostila TCP IP

44

m servidor com o número

IP: 10.204.200.50:

Vamos analisar cada uma destas entradas e explicar a função de cada entrada, para que

você possa entender melhor os conceitos de roteamento.

Rota padrão

Esta rota é indicada por uma identificação de rede 0.0.0.0 com uma máscara de sub-rede

0.0.0.0. Quando o TCP/IP tenta encontrar uma rota para um determinado destino, ele

percorre todas as entradas da tabela de roteamento em busca de uma rota específica para

a rede de destino. Caso não seja encontrada uma rota para a rede de destino, será

utilizada a rota padrão. Em outras palavras, se não houver uma rota específica, mande

através da rota padrão. Observe que a rota padrão é justamente o default gateway da

rede (10.204.200.1), ou seja, a interface de LAN do roteador da rede. O parâmetro

Interface (10.204.200.50) é o número IP da placa de rede do próprio servidor. Em outras

palavras: Se não houver uma rota específica manda para a rota padrão, onde o próximo

hope da rede é o 10.204.200.1 e o envio para este hope é feito através da interface

10.204.200.50 (ou seja, a próprio placa de rede do servidor).

Endereço da rede local

Esta rota é conhecida como Rota da Rede Local. Ele basicamente diz o seguinte:

"Quando o endereço IP de destino for um endereço da minha rede local, envie as

informações através da minha placa de rede (observe que tanto o parâmetro Gateway

como o parâmetro Interface estão configurados com o número IP do próprio servidor).

Ou seja, se for para uma das máquinas da minha rede local, manda através da placa de

rede, não precisa enviar para o roteador.

Page 45: Apostila TCP IP

45

Local host (endereço local)

Este endereço faz referência ao próprio computador. Observe que 10.204.200.50 é o

número IP do servidor que está sendo analisado (no qual executei o comando route

print). Esta rota diz que os programas do próprio computador, que enviarem pacotes

para o destino 10.204.200.50 (ou seja, enviarem pacotes para si mesmo, como no

exemplo de dois serviços trocando informações entre si), devem usar como Gateway o

endereço de loopback 127.0.0.1, através da interface de loopback 127.0.0.1. Esta rota é

utilizada para agilizar as comunicações que ocorrem entre os componentes do próprio

Windows Server 2003, dentro do mesmo servidor. Ao usar a interface de loopback, toda

a comunicação ocorre no nível de software, ou seja, não é necessário enviar o pacote

através das diversas camadas do protocolo TCP/IP, até que o pacote chegue na camada

de enlace (ou seja, a placa de rede), para depois voltar. Ao invés disso é utilizada a

interface de loopback para direcionar os pacotes corretamente. Observe que esta entrada

tem como máscara de sub-rede o número 255.255.255.255. Esta máscara indica que a

entrada é uma rota para um endereço IP específico (no caso o próprio IP do servidor) e

não uma rota para um endereço de rede.

Network broadcast (Broadcast de rede)

Esta rota define o endereço de broadcast da rede. Broadcast significa enviar para todos

os computadores da rede. Quando é utilizado o endereço de broadcast, todos os

computadores da rede recebem o pacote e processam o pacote. O broadcast é utilizado

por uma série de serviços, como por exemplo o WINS, para fazer verificações

periódicas de nomes, para enviar uma mensagem para todos os computadores da rede,

para obter informações de todos os computadores e assim por diante. Observe que o

gateway é o número IP da placa de rede do servidor e a Interface é este mesmo número,

ou seja, para enviar um broadcast para a rede, envie através da placa de rede do

servidor, não há necessidade de utilizar o roteador. Um detalhe interessante é que, por

padrão, a maioria dos roteadores bloqueia o tráfego de broadcast, para evitar

congestionamentos nos links de WAN.

Rede/endereço de loopback

Comentei anteriormente que os endereços da rede 127.0.0.0 são endereços especiais,

reservados para fazer referência a si mesmo. Ou seja, quando faço uma referência a

127.0.0.1 estou me referindo ao servidor no qual estou trabalhando. Esta roda indica,

em palavras simples, que para se comunicar com a rede de loopback

(127.0.0.0/255.0.0.0), utilize "eu mesmo" (127.0.0.1).

Multicast address (endereço de Multicast):

Page 46: Apostila TCP IP

46

O tráfego IP, de uma maneira simples, pode ser de três tipos: Unicast é o tráfego

direcionado para um número IP definido, ou seja, para um destinatário, definido por um

número IP. Broadcast é o tráfego dirigido para todos os computadores de uma ou mais

redes. E tráfego Multicast é um tráfego direcionado para um grupo de computadores, os

quais estão configurados e "inscritos" para receber o tráfego multicast. Um exemplo

prático de utilização do multicast é para uma transmissão de vídeo através da rede.

Vamos supor que de uma rede de 1000 computadores, apenas 30 devam receber um

determinado arquivo de vídeo com um treinamento específico. Se for usado tráfego

unicast, serão transmitidas 30 cópias do arquivo de vídeo (o qual já é um arquivo

grande), uma cópia para cada destinatário. Com o uso do Multicast, uma única cópia é

transmitida através do link de WAN e o tráfego multicast (com base no protocolo

IGMP), entrega uma cópia do arquivo apenas para os 30 computadores devidamente

configurados para receber o tráfego multicast. Esta rota define que o tráfego multicast

deve ser enviado através da interface de rede, que é o número IP da placa de rede do

servidor. Lembrando da Parte 3, quando falei sobre classes de endereços, a classe D é

reservada para tráfego multicast, com IPs iniciando (o primeiro número) a partir de 224.

Limited Broadcast (Broadcast Limitado)

Esta é a rota utilizada para o envio de broadcast limitado. O endereço de broadcast

limitado é formato por todos os 32 bits do endereço IP sendo iguais a 1

(255.255.255.255). Este endereço é utilizado quando o computador tem que fazer o

envio de um broadcast na rede local (envio do tipo um para todos na rede), porém o

computador não conhece a número da rede local (network ID). Você pode perguntar:

Mas em que situação o computador não conhecerá a identificação da rede local? Por

exemplo, quando você inicializa um computador, configurado para obter as

configurações do TCP/IP a partir de um servidor DHCP, a primeira coisa que este

computador precisa fazer é localizar um servidor DHCP na rede e requisitar as

configurações do TCP/IP. Ou seja, antes de receber as configurações do DHCP, o

computador ainda não tem endereço IP e nem máscara de sub-rede, mas tem que se

comunicar com um servidor DHCP. Esta comunicação é feita via broadcast limitado,

onde o computador envia um pacote de formato específico (chamado de DHCP

Discovery), para tentar descobrir um servidor DHCP na rede. Este pacote é enviado

para todos os computadores. Aquele que for um servidor DHCP irá responder a

requisição do cliente. Aí o processo de configuração do DHCP continua, até que o

computador esteja com as configurações do TCP/IP definidas, configurações estas

obtidas a partir do servidor DHCP.

Conclusão

Na próxima parte deste tutorial, você irá aprender sobre a divisão de uma rede em sub-

redes, assunto conhecido como subnetting.

Page 47: Apostila TCP IP

47

Sub netting – divisão em sub-redes

Até agora, nas demais partes deste tutorial, sempre utilizei as máscaras de sub-rede

padrão para cada classe de endereços, onde são utilizados oito, dezesseis ou vinte e

quatro bits para a máscara de rede, conforme descrito a seguir:

Número de bits Máscara de sub-rede

8 255.0.0.0

16 255.255.0.0

24 255.255.255.0

Por isso que existe uma outra notação, onde a máscara de sub-rede é indicada

simplesmente pelo número de bits utilizados na máscara de sub-rede, conforme

exemplos a seguir:

Definição da rede Máscara de sub-rede

10.10.10.0/16 255.255.0.0

10.10.10.0/24 255.255.255.0

10.200.100.0/8 255.0.0.0

Porém com este esquema de endereçamento, baseado apenas nas máscaras de sub-rede

padrão para cada classe (oito, dezesseis ou vinte e quatro bits), haveria um grande

desperdício de números IP. Por exemplo, que empresa no mundo precisaria da faixa

completa de uma rede classe A, na qual estão disponíveis mais de 16 milhões de

endereços IP?

Vamos, agora, analisar o outro extremo desta questão. Imagine, por exemplo, uma

empresa de porte médio, que tem a matriz em São Paulo e mais cinco filiais em outras

cidades do Brasil. Agora imagine que em nenhuma das localidades, a rede tem mais do

que 30 computadores. Se for usado as máscaras de sub-rede padrão, teria que ser

definida uma rede Classe C (até 254 computadores, conforme descrito na Parte 4 deste

tutorial), para cada localidade. Observe que estamos reservando 254 números IP para

cada localidade (uma rede classe C com máscara 255.255.255.0), quando na verdade, no

máximo, 30 números serão utilizados em cada localidade. Na prática, um belo

desperdício de endereços IP, mesmo em um empresa de porte médio ou pequeno.

Observe que neste exemplo, uma única rede Classe C seria suficiente. Já que são seis

localidades (a matriz mais seis filiais), com um máximo de 30 endereços por localidade,

Page 48: Apostila TCP IP

48

um total de 254 endereços de uma rede Classe C seria mais do que suficiente. Ainda

haveria desperdício, mas agora bem menor.

A boa notícia é que é possível ―dividir‖ uma rede (qualquer rede) em sub-redes, onde

cada sub-rede fica apenas com uma faixa de números IP de toda a faixa original. Por

exemplo, a rede Classe C 200.100.100.0/255.255.255.0, com 256 números IPs

disponíveis (na prática são 254 números que podem ser utilizados, descontando o

primeiro que é o número da própria rede e o último que o endereço de broadcast,

conforme descrito na Parte 4 deste tutorial), poderia ser dividida em 8 sub-redes, com

32 números IP em cada sub-rede. O esquema a seguir ilustra este conceito:

Rede original: 256 endereços IP disponíveis: 200.100.100.0 -> 200.100.100.255

Divisão da rede em 8 sub-redes, onde cada sub-rede fica com 32 endereços IP:

Sub-rede 01: 200.100.100.0 -> 200.100.100.31

Sub-rede 02: 200.100.100.32 -> 200.100.100.63

Sub-rede 03: 200.100.100.64 -> 200.100.100.95

Sub-rede 04: 200.100.100.96 -> 200.100.100.127

Sub-rede 05: 200.100.100.128 -> 200.100.100.159

Sub-rede 06: 200.100.100.160 -> 200.100.100.191

Sub-rede 07: 200.100.100.192 -> 200.100.100.223

Sub-rede 08: 200.100.100.224 -> 200.100.100.255

Para o exemplo da empresa com seis localidades (matriz mais cinco filiais), onde, no

máximo, são necessários trinta endereços IP por localidade, a utilização de uma única

rede classe C, dividida em 8 sub-redes seria a solução ideal. Na prática a primeira e a

última sub-rede são descartadas, pois o primeiro IP da primeira sub-rede representa o

endereço de rede e o último IP da última sub-rede representa o endereço de broadcast.

Com isso restariam, ainda, seis sub-redes. Exatamente a quantia necessária para o

exemplo proposto. Observe que ao invés de seis redes classe C, bastou uma única rede

Classe C, subdividida em seis sub-redes. Uma bela economia de endereços. Claro que

se um dos escritórios, ou a matriz, precisasse de mais de 32 endereços IP, um esquema

diferente de divisão teria que ser criado.

Entendido o conceito teórico de divisão em sub-redes, resta o trabalho prático, ou seja:

O que tem que ser alterado para fazer a divisão em sub-redes (sub netting)? Como calcular o número de sub-redes e o número de números IP dentro de cada sub-

rede? Como listar as faixas de endereços dentro de cada sub-rede? Exemplos práticos

Você aprenderá estas etapas através de exemplos práticos. Vou inicialmente mostrar o

que tem que ser alterado para fazer a divisão de uma rede padrão (com máscara de 8, 16

ou 24 bits) em uma ou mais sub-redes. Em seguida, apresento alguns exemplos de

divisão de uma rede em sub-redes. Mãos a obra.

Alterando o número de bits da máscara de sub-rede

Page 49: Apostila TCP IP

49

Por padrão são utilizadas máscaras de sub-rede de 8, 16 ou 24 bits, conforme indicado

no esquema a seguir:

Número de bits Máscara de sub-rede

08 255.0.0.0

16 255.255.0.0

24 255.255.255.0

Uma máscara de 8 bits significa que todos os bits do primeiro octeto são iguais a 1; uma

máscara de 16 bits significa que todos os bits do primeiro e do segundo octeto são

iguais a 1 e uma máscara de 24 bits significa que todos os bits dos três primeiros octetos

são iguais a 1. Este conceito está ilustrado na tabela a seguir:

Máscaras de rede com 8, 16 e 24 bits

No exemplo da rede com matriz em São Paulo e mais cinco escritórios, vamos utilizar

uma rede classe C, que será subdividida em seis sub-redes (na prática 8, mas a primeira

e a última não são utilizadas). Para fazer esta subdivisão, você deve alterar o número de

bits iguais a 1 na máscara de sub-rede. Por exemplo, ao invés de 24 bits, você terá que

utilizar 25, 26, 27 ou um número a ser definido. Bem, já avançamos mais um pouco:

“Para fazer a divisão de uma rede em sub-redes, é preciso aumentar o número de bits iguais

a 1, alterando com isso a máscara de sub-rede.”

Quantos bits devem ser utilizados para a máscara de sub-rede?

Agora, naturalmente, surge uma nova questão: ―Quantos bits?‖. Ou de outra

maneira (já procurando induzir o seu raciocínio): ―O que define o número de bits a ser

utilizados a mais?‖

Bem, esta é uma questão bem mais simples do que pode parecer. Vamos a ela. No

exemplo proposto, precisamos dividir a rede em seis sub-redes. Ou seja, o número de

sub-redes deve ser, pelo menos, seis. Sempre lembrando que a primeira e a última sub-

rede não são utilizadas. O número de sub-redes é proporcional ao número de bits que

vamos adicionar à máscara de sub-rede já existente. O número de rede é dado pela

fórmula a seguir, onde ‗n‘ é o número de bits a mais a serem utilizados para a máscara

de sub-rede:

Page 50: Apostila TCP IP

50

Núm. de sub-redes = 2n-2

No nosso exemplo estão disponíveis até 8 bits do último octeto para serem também

utilizados na máscara de sub-rede. Claro que na prática não podemos usar os 8 bits,

senão ficaríamos com o endereço de broadcast: 255.255.255.255, como máscara de sub-

rede. Além disso, quanto mais bits eu pegar para a máscara de sub-rede, menos sobrarão

para os números IP da rede. Por exemplo, se eu adicionar mais um bit a máscara já

existente, ficarei com 25 bits para a máscara e 7 para números IP, se eu adicionar mais

dois bits à máscara original de 24 bits, ficarei com 26 bits para a máscara e somente 6

para números IP e assim por diante. O número de bits que restam para os números IP,

definem quantos números IP podem haver em cada sub-rede. A fórmula para determinar

o número de endereços IP dentro de cada sub-rede, é indicado a seguir, onde ‗n‘ é o

número de bits destinados a parte de host do endereço (32 – bits usados para a máscara):

Núm. de end. IP dentro de cada sub-rede = 2n-2

Na tabela a seguir, apresento cálculos para a divisão de sub-redes que será feita no

nosso exemplo. Observe que quanto mais bits eu adiciono à máscara de sub-rede, mais

sub-redes é possível obter, porém com um menor número de máquinas em cada sub-

rede. Lembrando que o nosso exemplo estamos subdividindo uma rede classe C -

200.100.100.0/255.255.255.0, ou seja, uma rede com 24 bits para a máscara de sub-rede

original.

Número de redes e número de hosts em cada rede

Claro que algumas situações não se aplicam na prática. Por exemplo, usando apenas um

bit a mais para a máscara de sub-rede, isto é, 25 bits ao invés de 24. Neste caso teremos

0 sub-redes disponíveis. Pois com 1 bit é possível criar apenas duas sub-redes, como a

primeira e a última são descartadas, conforme descrito anteriormente, na prática as duas

sub-redes geradas não poderão ser utilizadas. A mesma situação ocorre com o uso de 7

bits a mais para a máscara de sub-rede, ou seja, 31 ao invés de 24. Nesta situação sobra

apenas um bit para os endereços IP. Com 1 bit posso ter apenas dois endereços IP,

descontando o primeiro e o último que não são utilizados, não sobra nenhum endereço

IP. As situações intermediárias é que são mais realistas. No nosso exemplo, precisamos

dividir a rede Classe C - 200.100.100.0/255.255.255.0, em seis sub-redes. De acordo

Page 51: Apostila TCP IP

51

com a tabela da Figura anterior, precisamos utilizar 3 bits a mais para obter as seis sub-

redes desejadas.

Observe que utilizando três bits a mais, ao invés de 24 bits (máscara original), vamos

utilizar 27 bits para a máscara de sub-rede. Com isso sobra cinco bits para os números

IPs dentro de cada sub-rede, o que dá um total de 30 números IP por sub-rede.

Exatamente o que precisamos.

A próxima questão que pode surgir é como é que fica a máscara de sub-rede, agora que

ao invés de 24 bits, estou utilizando 27 bits, conforme ilustrado na tabela a seguir:

Figura - Máscara de sub-rede com 27 bits.

Para determinar a nova máscara temos que revisar o valor de cada bit, o que foi visto na

Parte 2. Da esquerda para a direita, cada bit representa o seguinte valor,

respectivamente:

128 64 32 16 8 4 2 1

Como os três primeiros bits do último octeto foram também utilizados para a máscara,

estes três bits somam para o valor do último octeto. No nosso exemplo, o último octeto

da máscara terá o seguinte valor: 128+64+32 = 224. Com isso a nova máscara de sub-

rede, máscara esta que será utilizada pelas seis sub-redes, é a seguinte:

255.255.255.224. Observe que ao adicionarmos bits à máscara de sub-rede, fazemos

isso a partir do bit de maior valor, ou seja, o bit mais da esquerda, com o valor de 128,

depois usamos o próximo bit com valor 64 e assim por diante. Na tabela a seguir,

apresento a ilustração de como fica a nova máscara de sub-rede:

Figura - Como fica a nova máscara de sub-rede.

Com o uso de três bits adicionais para a máscara de rede, teremos seis sub-redes

disponíveis (uma para cada escritório) com um número máximo de 30 números IP por

sub-rede. Exatamente o que precisamos para o exemplo proposto. A idéia básica de

subnetting é bastante simples. Utiliza-se bits adicionais para a máscara de sub-rede.

Com isso tenho uma divisão da rede original (classe A, classe B ou classe C) em várias

sub-redes, sendo que o número de endereços IP em cada sub-rede é reduzido (por

termos utilizados bits adicionais para a máscara de sub-rede, bits estes que

originalmente eram destinados aos endereços IP). Esta divisão pode ser feita em redes

de qualquer uma das classes padrão A, B ou C. Por exemplo, por padrão, na Classe A

são utilizados 8 bits para a máscara de sub-rede e 24 bits para hosts. Você pode utilizar,

por exemplo, 12 bits para a máscara de sub-rede, restando com isso 20 bits para

endereços de host.

Na tabela a seguir, apresento os cálculos para o número de sub-redes e o número de

hosts dentro de cada sub-rede, apenas para os casos que podem ser utilizados na prática,

Page 52: Apostila TCP IP

52

ou seja, duas ou mais sub-redes e dois ou mais endereços válidos em cada sub-rede,

quando for feita a subdivisão de uma rede Classe C, com máscara original igual a

255.255.255.0..

Número de redes e número de hosts em cada rede – divisão de uma rede Classe C.

Lembrando que a fórmula para calcular o número de sub-redes é:

Núm. de sub-redes = 2n-2

onde n é o número de bits a mais utilizados para a máscara de sub-rede

E a fórmula para calcular o número de endereços IP dentro de cada sub-rede é:

2n-2

onde n é o número de bits restantes, isto é, não utilizados pela máscara de sub-rede.

Até aqui trabalhei com um exemplo de uma rede Classe C, que está sendo subdividida

em várias sub-redes. Porém é também possível subdividir redes Classe A e redes Classe

B. Lembrando que redes classe A utilizam, por padrão, apenas 8 bits para o endereço de

rede, já redes classe B, utilizam, por padrão, 16 bits. Na tabela a seguir, apresento um

resumo do número de bits utilizados para a máscara de sub-rede, por padrão, nas classes

A, B e C:

Figura - Máscara padrão para as classes A, B e C

Para subdividir uma rede classe A em sub-redes, basta usar bits adicionais para a

máscara de sub-rede. Por padrão são utilizados 8 bits. Se você utilizar 10, 12 ou mais

bits, estará criando sub-redes. O mesmo raciocínio é válido para as redes classe B, as

quais utilizam, por padrão, 16 bits para a máscara de sub-rede. Se você utilizar 18, 20 ou

mais bits para a máscara de sub-rede, estará subdividindo a rede classe B em várias sub-

redes.

As fórmulas para cálculo do número de sub-redes e do número de hosts em cada sub-

rede são as mesmas apresentadas anteriormente, independentemente da classe da rede

que está sendo dividida em sub-redes.

Page 53: Apostila TCP IP

53

A seguir apresento uma tabela com o número de sub-redes e o número de hosts em cada

sub-rede, dependendo do número de bits adicionais (além do padrão definido para a

classe) utilizados para a máscara de sub-rede, para a divisão de uma rede Classe B:

Tabela - Número de redes e número de hosts em cada rede – Classe B.

Observe como o entendimento dos cálculos binários realizados pelo TCP/IP facilita o

entendimento de vários assuntos relacionados ao TCP/IP, inclusive o conceito de

subnetting (Veja Parte 2 para detalhes sobre Cálculos Binários). Por padrão a classe B

utiliza 16 bits para a máscara de sub-rede, ou seja, uma máscara padrão: 255.255..0.0.

Agora se utilizarmos oito bits adicionais (todo o terceiro octeto) para a máscara, teremos

todos os bits do terceiro octeto como sendo iguais a 1, com isso a máscara passa a ser:

255.255.255.0. Este resultado está coerente com a tabela da Figura 16.11. Agora vamos

avançar um pouco mais. Ao invés de 8 bits adicionais, vamos utilizar 9. Ou seja, todo o

terceiro octeto (8 bits) mais o primeiro bit do quarto octeto. O primeiro bit, o bit bem à

esquerda é o bit de valor mais alto, ou seja, o que vale 128. Ao usar este bit também

para a máscara de sub-rede, obtemos a seguinte máscara: 255.255.255.128. Também

fecha com a tabela anterior. Com isso você pode concluir que o entendimento da

aritmética e da representação binária, facilita muito o estudo do protocolo TCP/IP e de

assuntos relacionados, tais como subnetting e roteamento.

A seguir apresento uma tabela com o número de sub-redes e o número de hosts em cada

sub-rede, dependendo do número de bits adicionais (além do padrão definido para a

classe) utilizados para a máscara de sub-rede, para a divisão de uma rede Classe A:

Page 54: Apostila TCP IP

54

Tabela - Número de redes e número de hosts em cada rede – Classe A.

Um fato importante, que eu gostaria de destacar novamente é que todas as sub-redes

(resultantes da divisão de uma rede), utilizam o mesmo número para a máscara de sub-

rede. Por exemplo, na quarta linha da tabela indicada na Figura 16.12, estou utilizando 5

bits adicionais para a máscara de sub-rede, o que resulta em 30 sub-redes diferentes,

porém todas utilizando como máscara de sub-rede o seguinte número: 255.248.0.0.

Muito bem, entendido o conceito de divisão em sub-redes e de determinação do número

de sub-redes, do número de hosts em cada sub-rede e de como é formada a nova

máscara de sub-rede, a próxima questão que pode surgir é a seguinte:

Como listar as faixas de endereços para cada sub-rede? Este é exatamente o assunto que

vem a seguir.

Como listar as faixas de endereços dentro de cada sub-rede

Vamos entender esta questão através de exemplos práticos.

Exemplo 01: Dividir a seguinte rede classe C: 229.45.32.0/255.255.255.0. São

necessárias, pelo menos, 10 sub-redes. Determinar o seguinte:

a) Quantos bits serão necessários para fazer a divisão e obter pelo menos 10 sub-redes?

b) Quantos números IP (hosts) estarão disponíveis em cada sub-rede?

c) Qual a nova máscara de sub-rede?

d) Listar a faixa de endereços de cada sub-rede.

Vamos ao trabalho. Para responder a questão da letra a, você deve lembrar da fórmula:

Page 55: Apostila TCP IP

55

Núm. de sub-redes = 2n-2

Você pode ir substituindo n por valores sucessivos, até atingir ou superar o valor de 10.

Por exemplo, para n=2, a fórmula resulta em 2, para n=3, a fórmula resulta em 6, para

n=4 a fórmula resulta em 14. Bem, está respondida a questão da letra a, temos que

utilizar quatro bits do quarto octeto para fazer parte da máscara de sub-rede.

a) Quantos bits serão necessários para fazer a divisão e obter pelo menos 10 sub-

redes?

R: 4 bits.

Como utilizei quatro bits do último octeto (além dos 24 bits dos três primeiros octetos,

os quais já faziam parte da máscara original), sobraram apenas 4 bits para os endereços

IP, ou seja, para os endereços de hosts em cada sub-rede. Tenho que lembrar da seguinte

fórmula:

Núm. de end. IP dentro de cada sub-rede = 2n-2

substituindo n por 4, vou obter um valor de 14. Com isso já estou em condições de

responder a alternativa b.

b) Quantos números IP (hosts) estarão disponíveis em cada sub-rede?

R: 14.

Como utilizei quatro bits do quarto octeto para fazer a divisão em sub-redes, os quatro

primeiros bits foram definidos iguais a 1. Basta somar os respectivos valores, ou seja:

128+64+32+16 = 240. Ou seja, com os quatro primeiros bits do quarto octeto sendo

iguais a 1, o valor do quarto octeto passa para 240, com isso já temos condições de

responder a alternativa c.

c) Qual a nova máscara de sub-rede?

R: 255.255.255.240

É importante lembrar, mais uma vez, que esta será a máscara de sub-rede utilizada por

todas as 14 sub-redes.

d) Listar a faixa de endereços de cada sub-rede.

Esta é a novidade deste item. Como saber de que número até que número vai cada

endereço IP. Esta também é fácil, embora seja novidade. Observe o último bit definido

para a máscara. No nosso exemplo é o quarto bit do quarto octeto. Qual o valor decimal

do quarto bit? 16 (o primeiro é 128, o segundo 64, o terceiro 32 e assim por diante,

conforme explicado na Parte 2). O valor do último bit é um indicativo das faixas de

variação para este exemplo. Ou seja, na prática temos 16 hosts em cada sub-rede,

embora o primeiro e o último não devam ser utilizados, pois o primeiro é o endereço da

própria sub-rede e o último é o endereço de broadcast da sub-rede. Por isso que ficam

14 hosts por sub-rede, devido ao ‗-2‘ na fórmula, o ‗-2‘ significa: - o primeiro – o

Page 56: Apostila TCP IP

56

último. Ao listar as faixas, consideramos os 16 hosts, apenas é importante salientar que

o primeiro e o último não são utilizados. Com isso a primeira sub-rede vai do host 0 até

o 15, a segunda sub-rede do 16 até o 31, a terceira do 32 até o 47 e assim por diante,

conforme indicado no esquema a seguir:

Divisão da rede em 14 sub-redes, onde cada sub-rede fica com 16 endereços IP, sendo

que a primeira e a última sub-rede não são utilizadas e o primeiro e o último número IP,

dentro de cada sub-rede, também não são utilizados:

Sub-rede 01 229.45.32.0 -> 229.45.32.15

Sub-rede 02 229.45.32.16 -> 229.45.32.31

Sub-rede 03 229.45.32.32 -> 229.45.32.47

Sub-rede 04 229.45.32.48 -> 229.45.32.63

Sub-rede 05 229.45.32.64 -> 229.45.32.79

Sub-rede 06 229.45.32.80 -> 229.45.32.95

Sub-rede 07 229.45.32.96 -> 229.45.32.111

Sub-rede 08 229.45.32.112 -> 229.45.32.127

Sub-rede 09 229.45.32.128 -> 229.45.32.143

Sub-rede 10 229.45.32.144 -> 229.45.32.159

Sub-rede 11 229.45.32.160 -> 229.45.32.175

Sub-rede 12 229.45.32.176 -> 229.45.32.191

Sub-rede 13 229.45.32.192 -> 229.45.32.207

Sub-rede 14 229.45.32.208 -> 229.45.32.223

Sub-rede 15 229.45.32.224 -> 229.45.32.239

Sub-rede 16 229.45.32.240 -> 229.45.32.255

Vamos a mais um exemplo prático, agora usando uma rede classe B, que tem

inicialmente, uma máscara de sub-rede: 255.255.0.0

Exemplo 02: Dividir a seguinte rede classe B: 150.100.0.0/255.255.0.0. São

necessárias, pelo menos, 20 sub-redes. Determinar o seguinte:

a) Quantos bits serão necessários para fazer a divisão e obter pelo menos 10 sub-redes?

b) Quantos números IP (hosts) estarão disponíveis em cada sub-rede?

c) Qual a nova máscara de sub-rede?

d) Listar a faixa de endereços de cada sub-rede.

Vamos ao trabalho. Para responder a questão da letra a, você deve lembrar da fórmula:

Núm. de sub-redes = 2n-2

Você pode ir substituindo n por valores sucessivos, até atingir ou superar o valor de 10.

Por exemplo, para n=2, a fórmula resulta em 2, para n=3, a fórmula resulta em 6, para

n=4 a fórmula resulta em 14 e para n=5 a fórmula resulta em 30. Bem, está respondida a

questão da letra a, temos que utilizar cinco bits do terceiro octeto para fazer parte da

máscara de sub-rede. Pois se utilizarmos apenas 4 bits, obteremos somente 14 sub-redes

e usando mais de 5 bits, obteremos um número de sub-redes bem maior do que o

necessário.

a) Quantos bits serão necessários para fazer a divisão e obter pelo menos 20 sub-redes?

Page 57: Apostila TCP IP

57

R: 5 bits.

Como utilizei cinco bits do terceiro octeto (além dos 16 bits dos dois primeiros octetos,

os quais já faziam parte da máscara original)., sobraram apenas 11 bits (os três restantes

do terceiro octeto mais os 8 bits do quarto octeto) para os endereços IP, ou seja, para os

endereços de hosts em cada sub-rede. Tenho que lembrar da seguinte fórmula:

Núm. de endereços IP dentro de cada sub-rede = 2n-2

substituindo n por 11 (número de bits que restaram para a parte de host), vou obter um

valor de 2046, já descontando o primeiro e o último número, os quais não podem ser

utilizados, conforme já descrito anteriormente. Com isso já estou em condições de

responder a alternativa b.

b) Quantos números IP (hosts) estarão disponíveis em cada sub-rede?

R: 2046.

Como utilizei cinco bits do terceiro octeto para fazer a divisão em sub-redes, os cinco

primeiros bits foram definidos iguais a 1. Basta somar os respectivos valores, ou seja:

128+64+32+16+8 = 248. Ou seja, com os quatro primeiros bits do quarto octeto sendo

iguais a 1, o valor do quarto octeto passa para 248, com isso já temos condições de

responder a alternativa c.

c) Qual a nova máscara de sub-rede?

R: 255.255.248.0

É importante lembrar, mais uma vez, que esta será a máscara de sub-rede utilizada por

todas as 30 sub-redes.

d) Listar a faixa de endereços de cada sub-rede.

Como saber de que número até que número vai cada endereço IP. Esta também é fácil e

o raciocínio é o mesmo utilizado para o exemplo anterior, onde foi feita uma divisão de

uma rede classe C. Observe o último bit definido para a máscara. No nosso exemplo é o

quinto bit do terceiro octeto. Qual o valor decimal do quinto bit (de qualquer octeto)? 8

(o primeiro é 128, o segundo 64, o terceiro 32, o quarto é 16 e o quinto é 8, conforme

explicado na Parte 2). O valor do último bit é um indicativo das faixas de variação para

este exemplo. Ou seja, na prática temos 2048 hosts em cada sub-rede, embora o

primeiro e o último não devam ser utilizados, pois o primeiro é o endereço da própria

sub-rede e o último é o endereço de broadcast da sub-rede. Por isso que ficam 2046

hosts por sub-rede, devido ao ‗-2‘ na fórmula, o ‗-2‘ significa: - o primeiro – o último.

Ao listar as faixas, consideramos o valor do último bit da máscara. No nosso exemplo é

o 8. A primeira faixa vai do zero até um número anterior ao valor do último bit, no caso

do 0 ao 7. A seguir indico a faixa de endereços da primeira sub-rede (sub-rede que não

será utilizada na prática, pois descarta-se a primeira e a última):

Sub-rede 01 150.100.0.1 -> 150.100.7.254

Page 58: Apostila TCP IP

58

Com isso todo endereço IP que tiver o terceiro número na faixa entre 0 e 7, será um

número IP da primeira sub-rede, conforme os exemplos a seguir:

150.100.0.25

150.100.3.20

150.100.5.0

150.100.6.244

Importante: Observe que os valores de 0 a 7 são definidos no terceiro octeto, que é

onde estamos utilizando cinco bits a mais para fazer a divisão em sub-redes.

Qual seria a faixa de endereços IP da próxima sub-rede. Aqui vale o mesmo raciocínio.

O último bit da máscara equivale ao valor 8. Esta é a variação da terceira parte do

número IP, que é onde esta sendo feita a divisão em sub-redes. Então, se a primeira foi

de 0 até 7, a segunda sub-rede terá valores de 8 a 15 no terceiro octeto, a terceira sub-

rede terá valores de 16 a 23 e assim por diante.

Divisão da rede em 32 sub-redes, onde cada sub-rede fica com 2048 endereços IP,

sendo que a primeira e a última sub-rede não são utilizadas e o primeiro e o último

número IP, dentro de cada sub-rede, também não são utilizados:

Sub-rede Primeiro IP Último IP End. de

broadcast Número

150.100.0.0 150.100.0.1 150.100.7.254 150.100.7.255

01

150.100.8.0 150.100.8.1 150.100.15.254 150.100.15.255

02

150.100.16.0 150.100.16.1 150.100.23.254 150.100.23.255

03

150.100.24.0 150.100.24.1 150.100.31.254 150.100.31.255

04

150.100.32.0 150.100.32.1 150.100.39.254 150.100.39.255

05

150.100.40.0 150.100.40.1 150.100.47.254 150.100.47.255

06

150.100.48.0 150.100.48.1 150.100.55.254 150.100.55.255

07

150.100.56.0 150.100.56.1 150.100.63.254 150.100.63.255

08

150.100.64.0 150.100.64.1 150.100.71.254 150.100.71.255

09

150.100.72.0 150.100.72.1 150.100.79.254 150.100.79.255

10

150.100.80.0 150.100.80.1 150.100.87.254 150.100.87.255

11

150.100.88.0 150.100.88.1 150.100.95.254 150.100.95.255

12

150.100.96.0 150.100.96.1 150.100.103.254 150.100.103.255

13

Page 59: Apostila TCP IP

59

150.100.104.0 150.100.104.1 150.100.111.254 150.100.111.255

14

150.100.112.0 150.100.112.1 150.100.119.254 150.100.119.255

15

150.100.120.0 150.100.120.1 150.100.127.254 150.100.127.255

16

150.100.128.0 150.100.128.1 150.100.135.254 150.100.135.255

17

150.100.136.0 150.100.136.1 150.100.143.254 150.100.143.255

18

150.100.144.0 150.100.144.1 150.100.151.254 150.100.151.255

19

150.100.152.0 150.100.152.1 150.100.159.254 150.100.159.255

20

150.100.160.0 150.100.160.1 150.100.167.254 150.100.167.255

21

150.100.168.0 150.100.168.1 150.100.175.254 150.100.175.255

22

150.100.176.0 150.100.176.1 150.100.183.254 150.100.183.255

23

150.100.184.0 150.100.184.1 150.100.191.254 150.100.191.255

24

150.100.192.0 150.100.192.1 150.100.199.254 150.100.199.255

25

150.100.200.0 150.100.200.1 150.100.207.254 150.100.207.255

26

150.100.208.0 150.100.208.1 150.100.215.254 150.100.215.255

27

150.100.216.0 150.100.216.1 150.100.223.254 150.100.223.255

28

150.100.224.0 150.100.224.1 150.100.231.254 150.100.231.255

29

150.100.232.0 150.100.232.1 150.100.239.254 150.100.239.255

30

150.100.240.0 150.100.240.1 150.100.247.254 150.100.247.255

31

150.100.248.0 150.100.248.1 150.100.255.254

150.100.255.255 32

Com base na tabela apresentada, fica fácil responder em que sub-rede está contido um

determinado número IP. Por exemplo, considere o número IP 1500.100.130.222.

Primeiro você observa o terceiro octeto do número IP (o terceiro, porque é neste octeto

que estão os últimos bits que foram utilizados para a máscara de sub-rede). Consultando

a tabela anterior, você observa o valor de 130 para o terceiro octeto corresponde a sub-

rede 17, na qual o terceiro octeto varia entre 128 e 135, conforme indicado a seguir:

150.100.128.0 150.100.128.1 150.100.135.254 150.100.135.255 17

Bem, com isso concluo o nosso estudo sobre dois princípios fundamentais do protocolo

TCP/IP:

Page 60: Apostila TCP IP

60

Roteamento Subnetting (divisão de uma rede em sub-redes).

Conclusão

Nesta parte do tutorial, abordei um dos assuntos que mais geram dúvidas: a divisão de

uma rede em sub-redes. Nas próximas partes deste tutorial, falarei sobre serviços do

Windows 2000 Server e do Windows Server 2003, diretamente ligados ao TCP/IP, tais

como o DNS, DHCP, WINS e RRAS.

Page 61: Apostila TCP IP

61

Uma introdução ao DNS

Esta é a oitava parte do Tutorial de TCP/IP. Na Parte 1 tratei dos aspectos básicos do

protocolo TCP/IP. Na Parte 2 falei sobre cálculos binários, um importante tópico para

entender sobre redes, máscara de sub-rede e roteamento. Na Parte 3 falei sobre Classes

de endereços, na Parte 4 fiz uma introdução ao roteamento e na Parte 5 apresentei mais

alguns exemplos e análises de como funciona o roteamento e na Parte 6 falei sobre a

Tabela de Roteamento. Na Parte 7 tratei sobre a divisão de uma rede em sub-redes,

conceito conhecido como subnetting. Nesta parte farei uma apresentação de um dos

serviços mais utilizados pelo TCP/IP, que é o Domain Name System (DNS). O DNS é o

serviço de resolução de nomes usado em todas as redes TCP/IP, inclusive pela Internet

que, sem dúvidas, é a maior rede TCP/IP existente.

Definindo DNS

DNS é a abreviatura de Domain Name System. O DNS é um serviço de resolução de

nomes. Toda comunicação entre os computadores e demais equipamentos de uma rede

baseada no protocolo TCP/IP (e qual rede não é baseada no protocolo TCP/IP?) é feita

através do número IP. Número IP do computador de origem e número IP do computador

de destino. Porém não seria nada produtivo se os usuários tivessem que decorar, ou

mais realisticamente, consultar uma tabela de números IP toda vez que tivessem que

acessar um recurso da rede. Por exemplo, você digita http://www.microsoft.com/brasil,

para acessar o site da Microsoft no Brasil, sem ter que se preocupar e nem saber qual o

número IP do servidor onde está hospedado o site da Microsoft Brasil. Mas alguém tem

que fazer este serviço, pois quando você digita http://www.microsoft.com/brasil, o

protocolo TCP/IP precisa ―descobrir‖ (o termo técnico é resolver o nome) qual o

número IP está associado com o endereço digitado. Se não for possível ―descobrir‖ o

número IP associado ao nome, não será possível acessar o recurso desejado.

O papel do DNS é exatamente este, ―descobrir‖, ou usando o termo técnico, ―resolver‖

um determinado nome, como por exemplo http://www.microsoft.com Resolver um

nome significa, descobrir e retornar o número IP associado com o nome. Em palavras

mais simples, o DNS é um serviço de resolução de nomes, ou seja, quando o usuário

tenta acessar um determinado recurso da rede usando o nome de um determinado

servidor, é o DNS o responsável por localizar e retornar o número IP associado com o

nome utilizado. O DNS é, na verdade, um grande banco de dados distribuído em

milhares de servidores DNS no mundo inteiro. Ele possui várias características, as quais

descreverei nesta parte do tutorial de TCP/IP.

O DNS passou a ser o serviço de resolução de nomes padrão a partir do Windows 2000

Server. Anteriormente, com o NT Server 4.0 e versões anteriores do Windows, o

serviço padrão para resolução de nomes era o WINS – Windows Internet Name Service

(WINS é o assunto da Parte 9 deste tutorial). Versões mais antigas dos clientes

Windows, tais como Windows 95, Windows 98 e Windows Me ainda são dependentes

do WINS, para a realização de determinadas tarefas. O fato de existir dois serviços de

resolução de nomes, pode deixar o administrador da rede e os usuários confusos.

Cada computador com o Windows instalado (qualquer versão), tem dois nomes: um

host name (que é ligado ao DNS) e um NetBios name (que é ligado ao WINS). Por

Page 62: Apostila TCP IP

62

padrão estes nomes devem ser iguais, ou seja, é aconselhável que você utilize o mesmo

nome para o host name e para o NetBios name do computador.

O DNS é um sistema para nomeação de computadores e equipamentos de rede em geral

(tais como roteadores,hubs, switchs). Os nomes DNS são organizados de uma maneira

hierárquica através da divisão da rede em domínios DNS.

O DNS é, na verdade, um grande banco de dados distribuído em vários servidores DNS

e um conjunto de serviços e funcionalidades, que permitem a pesquisa neste banco de

dados. Por exemplo, quando o usuário digita www.abc.com.br na barra de endereços do

seu navegador, o DNS tem que fazer o trabalho de localizar e retornar para o navegador

do usuário, o número IP associado com o endereço www.abc.com.br Quando você tenta

acessar uma pasta compartilhada chamada docs., em um servidor chamado srv-

files01.abc.com.br, usando o caminho \\srv-files01.abc.com.br\docs, o DNS precisa

encontrar o número IP associado com o nome srv-files01.abc.com.br. Se esta etapa

falhar, a comunicação não será estabelecida e você não poderá acessar a pasta

compartilhada docs.

Ao tentar acessar um determinado recurso, usando o nome de um servidor, é como se o

programa que você está utilizando perguntasse ao DNS:

“DNS, você sabe qual o endereço IP associado com o nome tal?”

O DNS pesquisa na sua base de dados ou envia a pesquisa para outros servidores DNS

(dependendo de como foram feitas as configurações do servidor DNS, conforme

descreverei mais adiante). Uma vez encontrado o número IP, o DNS retorna o número

IP para o cliente:

“Este é o número IP associado com o nome tal.”

Nota: O DNS implementado no Windows 2000 Server e também no Windows Server

2003 é baseado em padrões definidos por entidades de padronização da Internet, tais

como o IETF. Estes documentos são conhecidos como RFCs – Request for Comments.

Você encontra, na Internet, facilmente a lista de RFCs disponíveis e o assunto

relacionada com cada uma. São milhares de RFCs (literalmente milhares).

Entendendo os elementos que compõem o DNS

O DNS é baseado em conceitos tais como espaço de nomes e árvore de domínios. Por

exemplo, o espaço de nomes da Internet é um espaço de nomes hierárquico, baseado no

DNS. Para entender melhor estes conceitos, observe o diagrama da Figura a seguir:

Page 63: Apostila TCP IP

63

Figura - Estrutura hierárquica do DNS

Nesta Figura é apresentada uma visão abreviada da estrutura do DNS definida para a

Internet. O principal domínio, o domínio root, o domínio de mais alto nível foi nomeado

como sendo um ponto (.). No segundo nível foram definidos os chamados ―Top-level-

domains‖. Estes domínios são bastante conhecidos, sendo os principais descritos na

Tabela a seguir:

Top-level-domains:

Top-level-domain Descrição

com Organizações comerciais

gov Organizações governamentais

edu Instituições educacionais

org Organizações não comerciais

net Diversos

mil Instituições militares

Page 64: Apostila TCP IP

64

Em seguida, a estrutura hierárquica continua aumentando. Por exemplo, dentro do

domínio .com, são criadas subdomínios para cada país. Por exemplo: br para o Brasil

(.com.br), .fr para a frança (.com.fr), uk para a Inglaterra (.com.uk) e assim por diante.

Observe que o nome completo de um domínio é o nome do próprio domínio e mais os

nomes dos domínios acima dele, no caminho até chegar ao domínio root que é o ponto.

Nos normalmente não escrevemos o ponto, mas não está errado utilizá-lo. Por exemplo,

você pode utilizar www.microsoft.com ou www.microsoft.com. (com ponto no final

mesmo).

No diagrama da Figura anterior, representei até o domínio de uma empresa chamada abc

(abc...), que foi registrada no subdomínio (.com.br), ou seja: abc.com.br. Este é o

domínio DNS desta nossa empresa de exemplo.

Nota: Para registrar um domínio .br, utilize o seguinte endereço: www.registro.br

Todos os equipamentos da rede da empresa abc.com.br, farão parte deste domínio. Por

exemplo, considere o servidor configurado com o nome de host www. O nome

completo deste servidor será www.abc.com.br, ou seja, é com este nome que ele poderá

ser localizado na Internet. O nome completo do servidor com nome de host ftp será:

ftp.abc.com.br, ou seja, é com este nome que ele poderá ser acessado através da

Internet. No banco de dados do DNS é que ficará gravada a informação de qual o

endereço IP está associado com www.abc.com.br, qual o endereço IP está associado

com ftp.abc.com.br e assim por diante. Mais adiante você verá, passo-a-passo, como é

feita a resolução de nomes através do DNS.

O nome completo de um computador da rede é conhecido como FQDN – Full

Qualifided Domain Name. Por exemplo ftp.abc.com.br é um FQDN. ftp (a primeira

parte do nome) é o nome de host e o restante representa o domínio DNS no qual está o

computador. A união do nome de host com o nome de domínio é que forma o FQDN.

Internamente, a empresa abc.com.br poderia criar subdomínios, como por exemplo:

vendas.abc.com.br, suporte.abc.com.br, pesquisa.abc.com.br e assim por diante. Dentro

de cada um destes subdomínios poderia haver servidores e computadores, como por

exemplo: srv01.vendas.abc.com.br, srv-pr01.suporte.abc.com.br. Observe que sempre,

um nome de domínio mais baixo, contém o nome completo dos objetos de nível mais

alto. Por exemplo, todos os subdomínios de abc.com.br, obrigatoriamente, contém

abc.com.br: vendas.abc.com.br, suporte.abc.com.br, pesquisa.abc.com.br. Isso é o que

define um espaço de nomes continuo.

Dentro de um mesmo nível, os nomes DNS devem ser únicos. Por exemplo, não é

possível registrar dois domínios abc.com.br. Porém é possível registrar um domínio

abc.com.br e outro abc.net.br. Dentro do domínio abc.com.br pode haver um servidor

chamado srv01. Também pode haver um servidor srv01 dentro do domínio abc.net.br. O

que distingue um do outro é o nome completo (FQDN), neste caso: srv01.abc.com.br e

o outro é srv01.abc.net.br.

Nota: Um método antigo, utilizado inicialmente para resolução de nomes era o arquivo

hosts. Este arquivo é um arquivo de texto e contém entradas como as dos exemplos a

seguir, uma em cada linha:

Page 65: Apostila TCP IP

65

10.200.200.3 www.abc.com.br

10.200.200.4 ftp.abc.com.br

10.200.200.18 srv01.abc.com.br srv-files

O arquivo hosts é individual para cada computador da rede e fica gravado (no Windows

NT, Windows 2000, Windows Server 2003 ou Windows XP), na pasta

system32\drivers\etc., dentro da pasta onde o Windows está instalado. Este arquivo é

um arquivo de texto e pode ser alterado com o bloco de Notas.

O DNS é formado por uma série de componentes e serviços, os quais atuando em

conjunto, tornam possível a tarefa de fazer a resolução de nomes em toda a Internet ou

na rede interna da empresa. Os componentes do DNS são os seguintes:

O espaço de nomes DNS: Um espaço de nomes hierárquico e contínuo. Pode

ser o espaço de nomes da Internet ou o espaço de nomes DNS interno, da sua

empresa. Pode ser utilizado um espaço de nomes DNS interno, diferente do

nome DNS de Internet da empresa ou pode ser utilizado o mesmo espaço de

nomes. Cada uma das abordagens tem vantagens e desvantagens.

Servidores DNS: Os servidores DNS contém o banco de dados do DNS com o

mapeamento entre os nomes DNS e o respectivo número IP. Os servidores DNS

também são responsáveis por responder às consultas de nomes envidas por um

ou mais clientes da rede. Você aprenderá mais adiante que existem diferentes

tipos de servidores DNS e diferentes métodos de resolução de nomes.

Registros do DNS (Resource Records): Os registros são as entradas do banco

de dados do DNS. Em cada entrada existe um mapeamento entre um

determinado nome e uma informação associada ao nome. Pode ser desde um

simples mapeamento entre um nome e o respectivo endereço IP, até registros

mais sofisticados para a localização de DCs (controladores de domínio do

Windows 2000 ou Windows Server 2003) e servidores de email do domínio.

Clientes DNS: São também conhecidos como resolvers. Por exemplo, uma

estação de trabalho da rede, com o Windows 2000 Professional, com o Windows

XP professional ou com o Windows Vista tem um ―resolver‖ instalado. Este

componente de software é responsável por detectar sempre que um programa

precisa de resolução de um nome e repassar esta consulta para um servidor DNS.

O servidor DNS retorna o resultado da consulta, o resultado é retornado para o

resolver, o qual repassa o resultado da consulta para o programa que originou a

consulta.

Entendendo como funcionam as pesquisas do DNS

Imagine um usuário, na sua estação de trabalho, navegando na Internet. Ele tenta

acessar o site www.juliobattisti.com.br O usuário digita este endereço e tecla Enter. O

resolver (cliente do DNS instalado na estação de trabalho do usuário) detecta que existe

a necessidade da resolução do nome www.juliobattisti.com.br, para descobrir o número

IP associado com este nome. O resolver envia a pesquisa para o servidor DNS

configurado como DNS primário, nas propriedades do TCP/IP da estação de trabalho

(ou para o DNS informado pelo DHCP, caso a estação de trabalho esteja obtendo as

configurações do TCP/IP, automaticamente, a partir de um servidor DHCP – assunto da

Page 66: Apostila TCP IP

66

Parte 10 deste tutorial). A mensagem envida pelo resolver, para o servidor DNS, contém

três partes de informação, conforme descrito a seguir:

O nome a ser resolvido. No nosso exemplo: www.juliobattisti.com.br

O tipo de pesquisa a ser realizado. Normalmente é uma pesquisa do tipo

―resource record‖, ou seja, um registro associado a um nome, para retornar o

respectivo endereço IP. No nosso exemplo, a pesquisa seria por um registro do

tipo A, na qual o resultado da consulta é o número IP associado com o nome que

está sendo pesquisado. É como se o cliente perguntasse para o servidor DNS:

―Você conhece o número IP associado com o nome www.juliobattisti.com.br?‖

E o servidor responde: ―Sim, conheço. O número IP associado com o nome

www.juliobattisti.com.br é o seguinte... Também podem ser consultas

especializadas, como por exemplo, para localizar um DC (controlador de

domínio) no domínio ou um servidor de autenticação baseado no protocolo

Kerberos.

Uma classe associada com o nome DNS. Para os servidores DNS baseados no

Windows 2000 Server e Windows Server 2003, a classe será sempre uma classe

de Internet (IN), mesmo que o nome seja referente a um servidor da Intranet da

empresa.

Existem diferentes maneiras como uma consulta pode ser resolvida. Por exemplo, a

primeira vez que um nome é resolvido, o nome e o respectivos número IP são

armazenados em memória, no que é conhecido como Cache do cliente DNS, na estação

de trabalho que fez a consulta. Na próxima vez que o nome for utilizado, primeiro o

Windows procura no Cache DNS do próprio computador, para ver se não existe uma

resolução anterior para o nome em questão. Somente se não houver uma resolução no

Cache local do DNS, é que será envida uma consulta para o servidor DNS.

Chegando a consulta ao servidor, primeiro o servidor DNS consulta o cache do servidor

DNS. No cache do servidor DNS ficam, por um determinado período de tempo, as

consultas que foram resolvidas anteriormente pelo servidor DNS. Esse processo agiliza

a resolução de nomes, evitando repetidas resoluções do mesmo nome. Se não for

encontrada uma resposta no cache do servidor DNS, o servidor pode tentar resolver a

consulta usando as informações da sua base de dados ou pode enviar a consulta para

outros servidores DNS, até que uma resposta seja obtida. A seguir descreverei detalhes

deste processo de enviar uma consulta para outros servidores, processo este chamado de

recursão.

Em resumo, o processo de resolução de um nome DNS é composto de duas etapas:

1. A consulta inicia no cliente e é passada para o resolver na estação de trabalho do

cliente. Primeiro o resolver tenta responder a consulta localmente, usando recursos tais

como o cache local do DNS e o arquivo hosts.

2. Se a consulta não puder ser resolvida localmente, o resolver envia a consulta para

o servidor DNS, o qual pode utilizar diferentes métodos (descritos mais adiante), para a

resolução da consulta.

Page 67: Apostila TCP IP

67

A seguir vou descrever as etapas envolvidas nas diferentes maneiras que o DNS utiliza

para ―responder‖ a uma consulta enviada por um cliente.

Nota: Vou utilizar algumas figuras da ajuda do Windows 2000 Server para explicar a

maneira como o DNS resolve consultas localmente (resolver) e os diferentes métodos de

resolução utilizados pelo servidor DNS.

Inicialmente considere o diagrama da figura a seguir, contido na Ajuda do DNS, no

Windows 2000 Server, diagrama este que apresenta uma visão geral do processo de

resolução de nomes do DNS.

Figura - O processo de resolução de nomes do DNS.

No exemplo desta figura, o cliente está em sua estação de trabalho e tenta acessar o site

da Microsoft: www.microsoft.com. Ao digitar este endereço no seu navegador e

pressionar Enter, o processo de resolução do nome www.microsoft.com é iniciado. Uma

série de etapas são executadas, até que a resolução aconteça com sucesso ou falhe em

definitivo, ou seja, o DNS não consegue resolver o nome, isto é, não consegue encontrar

o número IP associado ao endereço www.microsoft.com

Primeira etapa: O DNS tenta resolver o nome, usando o resolver local:

Ao digitar o endereço www.microsoft.com e pressionar Enter, o processo de resolução é

iniciado. Inicialmente o endereço é passado para o cliente DNS, na estação de trabalho

do usuário. O cliente DNS é conhecido como resolver, conforme já descrito

anteriormente, nome este que utilizarei a partir de agora. O cliente tenta resolver o nome

utilizando um dos seguintes recursos:

O cache DNS local: Sempre que um nome é resolvido com sucesso, o nome e a

informação associada ao nome (normalmente o endereço IP), são mantidos na

memória, o que é conhecido como cache local do DNS da estação de trabalho do

cliente. Quando um nome precisa ser resolvido, a primeira coisa que o resolver

faz é procurar no cache local. Encontrando no cache local, as informações do

cache são utilizadas e a resolução está completa. O cache local torna a resolução

mais rápida, uma vez que nomes já resolvidos podem ser consultados

diretamente no cache, ao invés de terem que passar por todo o processo de

resolução via servidor DNS novamente, processo este que você aprenderá logo a

Page 68: Apostila TCP IP

68

seguir. Pode acontecer situações onde informações incorretas foram gravadas no

Cache Local e o Resolver está utilizando estas informações. Você pode limpar o

Cache local, usando o comando ipconfig /flushdns Abra um prompt de

Comando, digite o comando ipconfig /flushdns e pressione Enter. Isso irá limpar

o Cache local.

O arquivo hosts: Se não for encontrada a resposta no cache local do DNS, o

resolver consulta as entradas do arquivos hosts, o qual é um arquivo de texto e

fica na pasta onde o Windows Server foi instalado, dentro do seguinte caminho:

\system32\drivers\etc. (para o Windows NT 4, Windows 2000, Windows Server

2003 e Windows XP). O hosts é um arquivo de texto e pode ser editado com o

bloco de notas. Este arquivo possui entradas no formato indicado a seguir, com

um número IP por linha, podendo haver um ou mais nomes associados com o

mesmo número IP:

10.200.200.3 www.abc.com.br intranet.abc.com.br

10.200.200.4 ftp.abc.com.br arquivos.abc.com.br

10.200.200.18 srv01.abc.com.br pastas.abc.com.br pastas

Se mesmo assim a consulta não for respondida, o resolver envia a consulta para o

servidor DNS configurado nas propriedades do TCP/IP como servidor DNS primário ou

configurado via DHCP, como servidor DNS primário.

Segunda etapa: Pesquisa no servidor DNS.

Uma vez que a consulta não pode ser resolvida localmente pelo resolver, esta é enviada

para o servidor DNS. Quando a consulta chega no servidor DNS, a primeira coisa que o

servidor DNS faz é consultar as zonas para as quais ele é uma autoridade (para uma

descrição completa sobre zonas e domínios e a criação de zonas e domínios no DNS

consulte o Capítulo 3 do meu livro Manual de Estudos para o Exame 70-216, 712

páginas, o qual está esgotado em formato impresso, mas está a venda em formato de E-

book, em PDF. Todos os detalhes em:

http://www.juliobattisti.com.br/cursos/70216/default.asp).

Por exemplo, vamos supor que o servidor DNS seja o servidor DNS primário para a

zona vendas.abc.com.br (diz-se que ele é a autoridade para esta zona) e o nome a ser

pesquisado é srv01.vendas.abc.com.br. Neste caso o servidor DNS irá pesquisar nas

informações da zona vendas.abc.com.br (para a qual ele é a autoridade) e responder a

consulta para o cliente. Diz-se que o servidor DNS respondeu com autoridade

(authoritatively).

No nosso exemplo (Figura anterior) não é este o caso, uma vez que o nome pesquisado

é www.microsoft.com e o servidor DNS não é a autoridade, ou seja, não é o servidor

DNS primário para o domínio microsoft.com. Neste caso, o servidor DNS irá pesquisar

o cache do servidor DNS (não confundir com o cache local do DNS no cliente).

À medida que o servidor DNS vai resolvendo nomes, ele vai mantendo estas

informações em um cache no servidor DNS. As entradas são mantidas em cache por um

tempo que pode ser configurado pelo administrador do DNS. O cache do servidor DNS

tem a mesma função do cache local do resolver, ou seja, agilizar a consulta a nomes que

Page 69: Apostila TCP IP

69

já foram resolvidos previamente. Se for encontrada uma entrada no cache do servidor

DNS, esta entrada será utilizada pelo servidor DNS para responder a consulta enviada

pelo cliente. e o processo de consulta está completo.

Caso o servidor DNS não possa responder usando informações de uma zona local do

DNS e nem informações contidas no cache do servidor DNS, o processo de pesquisa

continua, usando um processo conhecido como recursão (recursion), para resolver o

nome. Agora o servidor DNS fará consultas a outros servidores para tentar responder a

consulta enviada pelo cliente. O processo de recursão é ilustrado na Figura a seguir, da

ajuda do DNS. Em seguida comentarei os passos envolvidos no processo de recursão.

Figura - Resolução de nomes usando recursão

O servidor DNS irá iniciar o processo de recursão com o auxílio de servidores DNS da

Internet. Para localizar estes servidores, o servidor DNS utiliza as configurações

conhecidas como ―root hints‖. Root hints nada mais é do que uma lista de servidores

DNS e os respectivos endereços IP, dos servidores para o domínio root (representado

pelo ponto .) e para os domínios top-level (.com, .net, gov e assim por diante). Esta lista

é criada automaticamente quando o DNS é instalado e pode ser acessada através das

propriedades do servidor DNS. Na Figura a seguir é exibida uma lista de root hints

configuradas por padrão, em um servidor DNS, baseado no Windows 2000 Server:

Page 70: Apostila TCP IP

70

Figura - Lista de root hints do servidor DNS.

Com o uso da lista de servidores root hints, o servidor DNS consegue localizar

(teoricamente), os servidores DNS responsáveis por quaisquer domínio registrado.

Vamos novamente considerar um exemplo, para entender como o processo de recursão

funciona. Imagine que a consulta enviada pelo cliente é para descobrir o endereço IP

associado ao nome srv01.vendas.abc.com. O cliente que fez esta consulta está usando

um computador da rede xyz.com, o qual está configurado para usar, como DNS

primário, o DNS da empresa xyz.com.

Primeiro vamos assumir que o nome não pode ser resolvido localmente no cliente

(usando o cache DNS local e o arquivo hosts) e foi enviado para o servidor DNS

primário da empresa xyz.com. Este DNS é dono, é autoridade apenas para o domínio

xyz.com e não para vendas.abc.com (lembrando sempre que a primeira parte do nome é

o nome da máquina, conhecido como nome de host). Com isso o servidor DNS primário

da empresa xyz.com.br irá pesquisar no cache do servidor DNS. Não encontrando a

resposta no cache, é iniciado o processo de recursão, com os passos descritos a seguir:

1. O servidor DNS retira apenas a parte correspondente ao domínio (o nome todo,

menos a primeira parte. No nosso exemplo seria vendas.abc.com, srv01 é o nome de

host). Usando a lista de servidores DNS configurados como root hints, o servidor DNS

localiza um servidor que seja o dono, a autoridade para o domínio root da Internet,

representado pelo ponto (o processo é assim mesmo, de trás para frente).

Page 71: Apostila TCP IP

71

2. Localizado o servidor responsável pelo domínio root, o servidor DNS da empresa

xyz.com envia uma consulta interativa para o servidor DNS responsável pelo domínio

root, perguntando: “Você sabe quem é o servidor DNS responsável pelo domínio

.com?”. O servidor DNS root responde com o endereço IP de um dos servidores DNS

responsáveis pelo domínio .com. Ou seja, o servidor DNS root não sabe responder

diretamente o nome que está sendo resolvido, mas sabe para quem enviar, sabe a quem

recorrer. Talvez daí venha o nome do processo recursão.

3. O servidor DNS do domínio xyz.com recebe a resposta informando qual o

servidor DNS responsável pelo domínio .com.

4. O servidor DNS do domínio xyz.com envia uma consulta para o servidor DNS

responsável pelo .com (informado no passo 3), perguntando: “Você é a autoridade

para abc.com ou saberia informar quem é a autoridade para abc.com?”

5. O servidor DNS responsável pelo domínio .com não é a autoridade para abc.com,

mas sabe informar quem é a autoridade deste domínio. O servidor DNS responsável

pelo .com retorna para o servidor DNS do domínio xyz.com, o número IP do servidor

DNS responsável pelo domínio abc.com.

6. O servidor DNS do domínio xyz.com recebe a resposta informando o número IP

do servidor responsável pelo domínio abc.com.

7. O servidor DNS do domínio xyz.com envia uma consulta para o servidor DNS

responsável pelo abc.com (informado no passo 6), perguntando: “Você é a autoridade

para vendas.abc.com ou saberia informar quem é a autoridade para

vendas.abc.com?”

8. O servidor DNS responsável pelo abc.com não é a autoridade para

vendas.abc.com, mas sabe informar quem é a autoridade deste domínio. O servidor

DNS responsável pelo abc.com retorna para o servidor DNS do domínio xyz.com, o

número IP do servidor DNS responsável pelo domínio vendas.abc.com.

9. O servidor DNS do domínio xyz.com recebe a resposta informando o número IP

do servidor responsável pelo domínio vendas.abc.com.

10. O servidor DNS do domínio xyz.com envia uma consulta para o servidor DNS

responsável pelo vendas.abc.com (informado no passo 9), perguntando: “Você é a

autoridade para vendas.abc.com ou saberia informar quem é a autoridade para

vendas.abc.com?”

11. O servidor DNS para vendas.abc.com recebe a consulta para resolver o nome

srv01.vendas.abc.com. Como este servidor é a autoridade para o domínio, ele pesquisa a

zona vendas.abc.com, encontra o registro para o endereço serv01.vendas.abc.com e

retornar esta informação para o servidor DNS do domínio xyz.com.

12. O servidor DNS do domínio xyz.com recebe a resposta da consulta, faz uma

cópia desta resposta no cache do servidor DNS e retornar o resultado para o cliente que

originou a consulta.

Page 72: Apostila TCP IP

72

13, No cliente o resolver recebe o resultado da consulta, repassa este resultado para o

programa que gerou a consulta e grava uma cópia dos dados no cache local do DNS.

Evidentemente que a descrição do processo demora muito mais tempo do que o DNS

realmente leva para resolver um nome usando este método. Claro que a resolução é

rápida, senão ficaria praticamente impossível usar a Internet. Além disso, este método

traz algumas vantagens. Durante esta espécie de ―pingue-pongue‖ entre o servidor DNS

e os servidores DNS da Internet, o servidor DNS da empresa vai obtendo informações

sobre os servidores DNS da Internet e grava estas informações no cache local do

servidor DNS. Isso agiliza futuras consultas e reduz, significativamente, o tempo para a

resolução de nomes usando o processo de recursão. Estas informações são mantidas na

memória do servidor e com o passar do tempo podem ocupar um espaço considerável da

memória. Toda vez que o serviço DNS for parado e iniciado novamente, estas

informações serão excluídas da memória e o processo de cache inicia novamente.

Considerações e tipos especiais de resoluções

O processo descrito anteriormente, termina com o servidor DNS (após ter consultado

vários outros servidores) retornando uma resposta positiva para o cliente, isto é,

conseguindo resolver o nome e retornando a informação associada (normalmente o

número IP associado ao nome) para o cliente. Mas nem sempre a resposta é positiva,

muitos outros tipos de resultados podem ocorrer em resposta a uma consulta, tais como:

An authoritative answer (resposta com autoridade): Este tipo de resposta é

obtido quando o nome é resolvido diretamente pelo servidor DNS que é a

autoridade para o domínio pesquisado. Por exemplo, um usuário da Intranet da

sua empresa (abc.com.br), tenta acessar uma página da intranet da empresa, por

exemplo: rh.abc.com.br. Neste caso a consulta será enviada para o servidor DNS

da empresa, o qual é a autoridade para a zona abc.com.br, com isso o servidor

DNS da empresa, responde diretamente à consulta, informando o número IP do

servidor rh.abc.com.br. É também uma resposta positiva só que com autoridade,

ou seja, respondida diretamente pelo servidor DNS que é a autoridade para o

domínio pesquisado, sem a necessidade de usar recursão.

A positive answer (resposta positiva): É uma resposta com o resultado para o

nome pesquisado, isto é, o nome pôde ser resolvido e uma ou mais informações

associadas ao nome são retornadas para o cliente.

A referral answer (uma referência): Este tipo de resposta não contém a

resolução do nome pesquisado, mas sim informações e referência a recursos ou

outros servidores DNS que podem ser utilizados para a resolução do nome. Este

tipo de resposta será retornado para o cliente, se o servidor DNS não suportar o

método de recursão, descrito anteriormente. As informações retornadas por uma

resposta deste tipo são utilizadas pelo cliente para continuar a pesquisa, usando

um processo conhecido como interação (o qual será descrito mais adiante). O

cliente faz a pesquisa em um servidor DNS e recebe, como resposta, uma

referência a outro recurso ou servidor DNS. Agora o cliente irá interagir com o

novo recurso ou servidor DNS, tentando resolver o nome. Este processo pode

continuar até que o nome seja resolvido ou até que uma resposta negativa seja

Page 73: Apostila TCP IP

73

retornada, indicando que o nome não pode ser resolvido. O processo de

interação será descrito mais adiante.

A negative answer (uma resposta negativa): Esta resposta pode indicar que

um dos seguintes resultados foi obtido em resposta à consulta: Um servidor

DNS que é autoridade para o domínio pesquisado, informou que o nome

pesquisado não existe neste domínio ou um servidor DNS que é autoridade para

o domínio pesquisado, informou que o nome pesquisado existe, mas o tipo de

registro não confere.

Uma vez retornada a resposta, o resolver interpreta o resultado da resposta (seja ela

positiva ou negativa) e repassa a resposta para o programa que fez a solicitação para

resolução de nome. O resolver armazena o resultado da consulta no cache local do DNS.

Dica Importante: O administrador do DNS pode desabilitar o recurso de recursão em

um servidor DNS em situações onde os usuários devem estar limitados a utilizar apenas

o servidor DNS da Intranet da empresa.

O servidor DNS também define tempos máximos para determinadas operações. Uma

vez atingido o tempo máximo, sem obter uma resposta à consulta, o servidor DNS irá

retornar uma resposta negativa:

Intervalo de reenvio de uma consulta recursiva – 3 segundos: Este é o tempo

que o DNS espera antes de enviar novamente uma consulta (caso não tenha

recebido uma resposta) feita a um servidor DNS externo, durante um processo

recursivo.

Intervalo de time-out para um consulta recursiva – 15 segundos: Este é o

tempo que o DNS espera antes de determinar que uma consulta recursiva, que

foi reenviada falhou.

Estes parâmetros podem ser alterados pelo Administrador do DNS.

Como funciona o processo de interação

O processo de interação é utilizado entre o cliente DNS (resolver) e um ou mais

servidores DNS, quando ocorrerem as condições indicadas a seguir:

O cliente tenta utilizar o processo de recursão, discutido anteriormente, mas a

recursão está desabilitada no servidor DNS.

O cliente não solicita o uso de recursão, ao pesquisar o servidor DNS.

O cliente faz uma consulta ao servidor DNS, informando que é esperada a

melhor resposta que o servidor DNS puder fornecer imediatamente, sem

consultar outros servidores DNS.

Quando o processo de interação é utilizado, o servidor DNS responde à consulta do

cliente com base nas informações que o servidor DNS tem sobre o domínio pesquisado.

Por exemplo, o servidor DNS da sua rede interna pode receber uma consulta de um

Page 74: Apostila TCP IP

74

cliente tentando resolver o nome www.abc.com. Se este nome estiver no cache do

servidor DNS ele responde positivamente para o cliente. Se o nome não estiver no cache

do servidor DNS, o servidor DNS responde com uma lista de servidores de referência,

que é uma lista de registros do tipo NS e A (você aprenderá sobre os tipos de registro na

parte prática), registros estes que apontam para outros servidores DNS, capazes de

resolver o nome pesquisado. Ou seja, o cliente recebe uma lista de servidores DNS para

os quais ele deve enviar a consulta. Observem a diferença básica entre o processo de

recursão e o processo de interação. Na recursão, o servidor DNS é que entra em contato

com outros servidores (root hints), até conseguir resolver o nome pesquisado. Uma vez

resolvido o nome, ele retorna a resposta para o cliente. Já no processo de interação, se o

servidor DNS não consegue resolver o nome, ele retorna uma lista de outros servidores

DNS que talvez possam resolver o nome pesquisado. O cliente recebe esta lista e envia

a consulta para os servidores DNS informados. Este processo (esta interação) continua

até que o nome seja resolvido ou que uma resposta negativa seja recebida pelo cliente,

informando que o nome não pode ser resolvido. Ou seja, no processo de interação, a

cada etapa do processo, o servidor DNS retorna para o cliente, uma lista de servidores

DNS a serem pesquisados, até que um dos servidores responde positivamente (ou

negativamente) à consulta feita pelo cliente.

Como funciona o cache nos servidores DNS

O trabalho básico do servidor DNS é responder às consultas enviadas pelos clientes,

quer seja utilizando recursão ou interação. A medida que os nomes vão sendo

resolvidos, esta informação fica armazenada no cache do servidor DNS. Com o uso do

cache, futuras consultas à nomes já resolvidos, podem ser respondidas diretamente a

partir do cache do servidor DNS, sem ter que utilizar recursão ou interação. O uso do

cache agiliza o processo de resolução de nomes e também reduz o tráfego de rede

gerado pelo DNS.

Quando as informações são gravadas no cache do servidor DNS, um parâmetro

chamado Time-To-Live (TTL) é associado com cada informação. Este parâmetro

determina quanto tempo a informação será mantida no cache até ser descartada. O

parâmetro TTL é utilizado para que as informações do cache não se tornem

desatualizadas e para minimizar a possibilidade de envio de informações desatualizadas

em resposta às consultas dos clientes. O valor padrão do parâmetro TTL é 3600

segundos (uma hora). Este parâmetro pode ser configurado pelo administrador do DNS,

conforme será mostrado na parte prática, nas partes de 21 a 50, as quais constituem o

Módulo 2 deste curso.

Aviso Importante: Por padrão o Servidor DNS utiliza um arquivo chamado Cache.dns,

o qual fica gravado na pasta systemroot\System32\Dns, onde systemroot representa a

pasta onde o Windows 2000 Server ou Windows Server 2003 está instalado. Este

arquivo não tem a ver com o Cache de nomes do servidor DNS. Neste arquivo está

contida a lista de servidores root hints (descritos anteriormente). O conteúdo deste

arquivo é carregado na memória do servidor, durante a inicialização do serviço do DNS

e é utilizado para localizar os servidores root hints da Internet, servidores estes

utilizados durante o processo de recursão, descrito anteriormente.

Conclusão

Page 75: Apostila TCP IP

75

Nesta parte do tutorial fiz a apresentação do serviço mais utilizado pelo TCP/IP: DNS.

Nas próximas partes deste tutorial, falareis sobre os demais serviços do Windows 2000

Server e do Windows Server 2003, diretamente ligados ao TCP/IP, tais como o DHCP,

WINS e RRAS, IPSEC, RIP, etc.

Page 76: Apostila TCP IP

76

Uma introdução ao DHCP

Esta é a nona parte do Tutorial de TCP/IP. Na Parte 1 tratei dos aspectos básicos do

protocolo TCP/IP. Na Parte 2 falei sobre cálculos binários, um importante tópico para

entender sobre redes, máscara de sub-rede e roteamento. Na Parte 3 falei sobre Classes

de endereços, na Parte 4 fiz uma introdução ao roteamento e na Parte 5 apresentei mais

alguns exemplos e análises de como funciona o roteamento. Na Parte 6 falei sobre a

Tabela de Roteamento. Na Parte 7 tratei sobre a divisão de uma rede em sub-redes,

conceito conhecido como subnetting. Na Parte 8 fiz uma apresentação de um dos

serviços mais utilizados pelo TCP/IP, que é o Domain Name System: DNS. O DNS é o

serviço de resolução de nomes usado em todas as redes TCP/IP, inclusive pela Internet

que, sem dúvidas, é a maior rede TCP/IP existente. Nesta nona parte farei uma

introdução ao serviço Dynamic Host Configuration Protocol – DHCP.

Definindo DHCP

O DHCP é a abreviatura de Dynamic Host Configuration Protocol. O DHCP é um

serviço utilizado para automatizar as configurações do protocolo TCP/IP nos

dispositivos de rede (computadores, impressoras, hubs, switchs, ou seja, qualquer

dispositivo conectado à rede e que esteja utilizando o protocolo TCP/IP).

Sem o uso do DHCP, o administrador da rede e a sua equipe teriam que configurar,

manualmente, as propriedades do protocolo TCP/IP em cada dispositivo de rede

(genericamente denominados hosts). Com o uso do DHCP esta tarefa pode ser

completamente automatizada. O uso do DHCP traz diversos benefícios, dentro os quais

podemos destacar os seguintes:

Automação do processo de configuração do protocolo TCP/IP nos dispositivos

da rede.

Facilidade de alteração de parâmetros tais como Default Gateway, Servidor

DNS e assim por diante, em todos os dispositivos da rede, através de uma

simples alteração no servidor DHCP.

Eliminação de erros de configuração, tais como digitação incorreta de uma

máscara de sub-rede ou utilização do mesmo número IP em dois dispositivos

diferentes, gerando um conflito de endereço IP.

Introdução ao DHCP

Neste tópico apresentarei uma série de conceitos teóricos sobre o funcionamento do

DHCP. Você aprenderá como funciona o processo de concessão de endereços IP

(também conhecido como lease), aprenderá sobre os conceitos de escopo, super escopo,

reserva de endereço, ativação do servidor DHCP no Active Directory e demais

conceitos relacionados ao DHCP.

O que é o DHCP - Dynamic Host Configuration Protocol?

Você aprendeu, nas primeiras partes deste tutorial, sobre os fundamentos do protocolo

TCP/IP, que um equipamento de rede, que utiliza o protocolo TCP/IP precisa que sejam

Page 77: Apostila TCP IP

77

configurados uma série de parâmetros. Os principais parâmetros que devem ser

configurados para que o protocolo TCP/IP funcione corretamente são os seguintes:

Número IP

Máscara de sub-rede

Default Gateway (Gateway Padrão)

Número IP de um ou mais servidores DNS

Número IP de um ou mais servidores WINS

Sufixos de pesquisa do DNS

Em uma rede com centenas ou até mesmo milhares de estações de trabalho, configurar o

TCP/IP manualmente, em cada estação de trabalho é uma tarefa bastante trabalhosa, que

envolve tempo e exige uma equipe técnica para executar este trabalho. Além disso,

sempre que houver mudanças em algum dos parâmetros de configuração (como por

exemplo uma mudança no número IP do servidor DNS), a reconfiguração terá que ser

feita manualmente em todas as estações de trabalho da rede. Por exemplo, imagine que

o número IP do Default Gateway teve que ser alterado devido a uma reestruturação da

rede. Neste caso a equipe de suporte teria que ir de computador em computador,

alterando as propriedades do protocolo TCP/IP, para informar o novo número IP do

Default Gateway, isto é, alterando o número IP antigo do Default Gateway para o novo

número. Um trabalho e tanto.

Além disso, com a configuração manual, sempre podem haver erros de configuração.

Por exemplo, basta que o técnico que está configurando uma estação de trabalho, digite

um valor incorreto para a máscara de sub-rede, para que a estação de trabalho não

consiga mais se comunicar com a rede. E problemas como este podem ser difíceis de

detectar. Muitas vezes o técnico pode achar que o problema é com a placa de rede, com

o driver da placa ou com outras configurações. Até descobrir que o problema é um

simples erro na máscara de sub-rede pode ter sido consumido um bom tempo: do

técnico e do funcionário que utiliza o computador, o qual ficou sem poder acessar a

rede. E hoje em dia sem acesso á rede significa, na prática, sem poder trabalhar.

Bem, descrevo estas situações apenas para ilustrar o quanto é difícil e oneroso manter a

configuração do protocolo TCP/IP manualmente, quando temos um grande número de

estações de trabalho em rede. Pode até nem ser ―tão grande‖ este número, com redes a

partir da 30 ou 50 estações de trabalho já começa a ficar difícil a configuração manual

do protocolo TCP/IP.

Para resolver esta questão e facilitar a configuração e administração do protocolo

TCP/IP é que foi criado o DHCP. DHPC é a abreviatura de: Dynamic Host

Configuration Protocol (Protocolo de configuração dinâmica de hosts). Você pode

instalar um ou mais servidores DHCP em sua rede e fazer com que os computadores e

demais dispositivos que precisem de configurações do TCP/IP, obtenham estas

configurações, automaticamente, a partir do servidor DHCP.

Por exemplo, considere uma estação de trabalho configurada para utilizar o DHCP.

Durante a inicialização, esta estação de trabalho entra em um processo de ―descobrir‖

um servidor DHCP na rede (mais adiante detalharei como é este processo de

―descoberta‖ do servidor DHCP). Uma vez que a estação de trabalho consegue se

comunicar com o servidor DHCP, ela recebe todas as configurações do protocolo

Page 78: Apostila TCP IP

78

TCP/IP, diretamente do servidor DHCP. Ou seja, com o uso do DHCP, o administrador

pode automatizar as configurações do protocolo TCP/IP em todas os computadores da

rede.

Com o uso do DHCP, a distribuição de endereços IP e demais configurações do

protocolo TCP/IP (máscara de sub-rede, default gateway, número IP do servidor DNS e

assim por diante) é automatizada e centralizadamente gerenciada. O administrador cria

faixas de endereços IP que serão distribuídas pelo servidor DHCP (faixas estas

chamadas de escopos) e associa outras configurações com cada faixa de endereços, tais

como um número IP do Default Gateway, a máscara de sub-rede, o número IP de um ou

mais servidores DNS, o número IP de um ou mais servidores WINS e assim por diante.

Todo o trabalho de configuração do protocolo TCP/IP que teria que ser feito

manualmente, agora pode ser automatizado com o uso do DHCP. Imagine somente uma

simples situação, mas que serve para ilustrar o quanto o DHCP é útil. Vamos supor que

você é o administrador de uma rede com 3000 estações de trabalho. Todas as estações

de trabalho estão configuradas com o protocolo TCP/IP. As configurações são feitas

manualmente, não é utilizado um servidor DHCP na rede. Você utiliza um único

servidor externo, do seu provedor de Internet, com servidor DNS. O número IP deste

servidor DNS está configurado em todas as estações de trabalho da rede. O seu

Provedor de Internet sofreu uma reestruturação e teve que alterar o número IP do

servidor DNS (veja que é uma situação que está fora do controle do administrador da

rede, já que a alteração foi no servidor DNS do provedor). Como você configura o

TCP/IP manualmente nos computadores da rede, só resta uma solução: pôr a sua equipe

em ação para visitar as 3000 estações de trabalho da rede, alterando o número IP do

servidor DNS em cada uma delas. Em cada estação de trabalho o técnico terá que

acessar as propriedades do protocolo TCP/IP e alterar o endereço IP do servidor DNS

para o novo endereço. Um trabalho e tanto, sem contar que podem haver erros durante

este processo.

Agora imagine esta mesma situação, só que ao invés de configurar o TCP/IP

manualmente você está utilizando o DHCP para fazer as configurações do TCP/IP

automaticamente. Nesta situação, quando houve a alteração do número IP do servidor

DNS, bastaria alterar esta opção nas propriedades do escopo de endereços IP no

servidor DHCP e pronto. Na próxima reinicialização, os computadores da rede já

receberiam o novo número IP do servidor DNS, sem que você ou um único membro da

sua equipe tivesse que reconfigurar uma única estação de trabalho. Bem mais simples,

mais produtivo e menos propenso a erros.

Isso é o DHCP, um serviço para configuração automática do protocolo TCP/IP nos

computadores e demais dispositivos da rede que utilizam o protocolo TCP/IP. Configuração feita de maneira automática e centralizada. Em redes baseadas em

TCP/IP, o DHCP reduz a complexidade e a quantidade de trabalho administrativo

envolvido na configuração e reconfiguração do protocolo TCP/IP.

Nota: A implementação do DHCP no Windows 2000 Server e no Windows Server

2003 é baseada em padrões definidos pelo IETF. Estes padrões são definidos em

documentos conhecidos como RFCs (Request for Comments). As RFCs que definem os

padrões do DHCP são as seguintes:

Page 79: Apostila TCP IP

79

RFC 2131: Dynamic Host Configuration Protocol (substitui a RFC 1541)

RFC 2132: DHCP Options and BOOTP Vendor Extensions

As RFCs a seguir também podem ser úteis para compreender como o DHCP é usado

com outros serviços na rede:

RFC 0951: The Bootstrap Protocol (BOOTP)

RFC 1534: Interoperation Between DHCP and BOOTP

RFC 1542: Clarifications and Extensions for the Bootstrap Protocol

RFC 2136: Dynamic Updates in the Domain Name System (DNS UPDATE)

RFC 2241: DHCP Options for Novell Directory Services

RFC 2242: Netware/IP Domain Name and Information

O site oficial, a partir da qual você pode copiar o conteúdo integral das RFCs

disponíveis é o seguinte:

http://www.rfc-editor.org/

Termos utilizados no DHCP

O DHCP é composto de diversos elementos. O servidor DHCP e os clientes DHCP. No

servidor DHCP são criados escopos e definidas as configurações que os clientes DHCP

irão receber. A seguir apresento uma série de termos relacionados ao DHCP. Estes

termos serão explicados em detalhes até o final desta lição.

Termos utilizados no DHCP:

Servidor DHCP: É um servidor com o Windows 2000 Server ou com o

Windows Server 2003, onde foi instalado e configurado o serviço DHCP. Após

a instalação de um servidor DHCP ele tem que ser autorizado no Active

Directory, antes que ele possa, efetivamente, atender a requisições de clientes. O

procedimento de autorização no Active Directory é uma medida de segurança,

para evitar que servidores DHCP sejam introduzidos na rede sem o

conhecimento do administrador. O servidor DHCP não pode ser instalado em

um computador com o Windows 2000 Professional, Windows XP Professional

ou Windows Vista.

Cliente DHCP: É qualquer dispositivo de rede capaz de obter as configurações

do TCP/IP a partir de um servidor DHCP. Por exemplo, uma estação de trabalho

com o Windows 95/98/Me, Windows NT Workstation 4.0, Windows 2000

Professional, Windows XP, Windows Vista, uma impressora com placa de rede

habilitada ao DHCP e assim por diante.

o Escopo: Um escopo é o intervalo consecutivo completo de endereços IP

possíveis para uma rede (por exemplo, a faixa de 10.10.10.100 a

10.10.10.150, na rede 10.10.10.0/255.255.255.0). Em geral, os escopos

definem uma única sub-rede física, na rede na qual serão oferecidos

serviços DHCP. Os escopos também fornecem o método principal para

que o servidor gerencie a distribuição e atribuição de endereços IP e

Page 80: Apostila TCP IP

80

outros parâmetros de configuração para clientes na rede, tais como o

Default Gateway, Servidor DNS e assim por diante.

o Super escopo: Um super escopo é um agrupamento administrativo de

escopos que pode ser usado para oferecer suporte a várias sub-redes IP

lógicas na mesma sub-rede física. Os super escopos contêm somente uma

lista de escopos associados ou escopos filho que podem ser ativados em

conjunto. Os super escopos não são usados para configurar outros

detalhes sobre o uso de escopo. Para configurar a maioria das

propriedades usadas em um super escopo, você precisa configurar

propriedades de cada escopo associado, individualmente. Por exemplo,

se todos os computadores devem receber o mesmo número IP de Default

Gateway, este número tem que ser configurado em cada escopo,

individualmente. Não tem como fazer esta configuração no Super escopo

e todos os escopos (que compõem o Super escopo), herdarem estas

configurações.

o

o Intervalo de exclusão: Um intervalo de exclusão é uma seqüência

limitada de endereços IP dentro de um escopo, excluído dos endereços

que são fornecidos pelo DHCP. Os intervalos de exclusão asseguram que

quaisquer endereços nesses intervalos não são oferecidos pelo servidor

para clientes DHCP na sua rede. Por exemplo, dentro da faixa

10.10.10.100 a 10.10.10.150, na rede 10.10.10.0/255.255.255.0 de um

determinado escopo, você pode criar uma faixa de exclusão de

10.10.10.120 a 10.10.10.130. Os endereços da faixa de exclusão não

serão utilizados pelo servidor DHCP para configurar os clientes DHCP.

o Pool de endereços: Após definir um escopo DHCP e aplicar intervalos

de exclusão, os endereços remanescentes formam o pool de endereços

disponíveis dentro do escopo. Endereços em pool são qualificados para

atribuição dinâmica pelo servidor para clientes DHCP na sua rede. No

nosso exemplo, onde temos o escopo com a faixa 10.10.10.100 a

10.10.10.150, com uma faixa de exclusão de 10.10.10.120 a

10.10.10.130, o nosso pool de endereços é formado pelos endereços de

10.10.10.100 a 10.10.10.119, mais os endereços de 10.10.10.131 a

10.10.10.150.

o Concessão: Uma concessão é um período de tempo especificado por um

servidor DHCP durante o qual um computador cliente pode usar um

endereço IP que ele recebeu do servidor DHCP (diz-se atribuído pelo

servidor DHCP). Uma concessão está ativa quando ela está sendo

utilizada pelo cliente. Geralmente, o cliente precisa renovar sua

atribuição de concessão de endereço com o servidor antes que ela expire.

Uma concessão torna-se inativa quando ela expira ou é excluída no

servidor. A duração de uma concessão determina quando ela irá expirar e

com que freqüência o cliente precisa renová-la no servidor.

o Reserva: Você usa uma reserva para criar uma concessão de endereço

permanente pelo servidor DHCP. As reservas asseguram que um

dispositivo de hardware especificado na sub-rede sempre pode usar o

Page 81: Apostila TCP IP

81

mesmo endereço IP. A reserva é criada associada ao endereço de

Hardware da placa de rede, conhecido como MAC-Address. No servidor

DHCP você cria uma reserva, associando um endereço IP com um

endereço MAC. Quando o computador (com o endereço MAC para o

qual existe uma reserva) é inicializado, ele entre em contato com o

servidor DHCP. O servidor DHCP verifica que existe uma reserva para

aquele MAC-Address e configura o computador com o endereço IP

associado ao Mac-address. Caso haja algum problema na placa de rede

do computador e a placa tenha que ser substituída, mudará o MAC-

Address e a reserva anterior terá que ser excluída e uma nova reserva terá

que ser criada, utilizando, agora, o novo Mac-Address.

o Tipos de opção: Tipos de opção são outros parâmetros de configuração

do cliente que um servidor DHCP pode atribuir aos clientes. Por

exemplo, algumas opções usadas com freqüência incluem endereços IP

para gateways padrão (roteadores), servidores WINS (Windows Internet

Name System) e servidores DNS (Domain Name System). Geralmente,

esses tipos de opção são ativados e configurados para cada escopo. O

console de Administração do serviço DHCP também permite a você

configurar tipos de opção padrão que são usados por todos os escopos

adicionados e configurados no servidor. A maioria das opção é

predefinida através da RFC 2132, mas você pode usar o console DHCP

para definir e adicionar tipos de opção personalizados, se necessário.

Como o DHCP funciona

O DHCP utiliza um modelo cliente/servidor. O administrador da rede instala e

configura um ou mais servidores DHCP. As informações de configuração – escopos de

endereços IP, reservas e outras opções de configuração – são mantidas no banco de

dados dos servidores DHCP. O banco de dados do servidor inclui os seguintes itens:

Parâmetros de configuração válidos para todos os cliente na rede (número IP do

Default Gateway, número IP de um ou mais servidores DNS e assim por diante).

Estas configurações podem ser diferentes para cada escopo.

Endereços IP válidos mantidos em um pool para serem atribuídos aos clientes

além de reservas de endereços IP.

Duração das concessões oferecidas pelo servidor. A concessão define o período

de tempo durante o qual o endereço IP atribuído pode ser utilizado pelo cliente.

Conforme mostrarei mais adiante, o cliente tenta renovar esta concessão em

períodos definidos, antes que a concessão expire.

Com um servidor DHCP instalado e configurado na rede, os clientes com DHCP podem

obter os endereços IP e os parâmetros de configuração relacionados, dinamicamente,

sempre que forem inicializados. Os servidores DHCP fornecem essa configuração na

forma de uma oferta de concessão de endereço para os clientes solicitantes.

Clientes suportados pelo DHCP

Page 82: Apostila TCP IP

82

O termo Cliente é utilizado para descrever um computador ligado à rede e que obtém as

configurações do protocolo TCP/IP a partir de um servidor DHCP. Qualquer

computador com o Windows (qualquer versão) instalado ou outros dispositivos, capazes

de se comunicar com o servidor DHCP e obter as configurações do TCP/IP a partir do

servidor DHCP, é considerado um cliente DHCP.

Os clientes DHCP podem ser quaisquer clientes baseados no Microsoft Windows ou

outros clientes que oferecem suporte e são compatíveis com o comportamento do cliente

descrito no documento padrão de DHCP, que é a RFC 2132, publicado pela Internet

Engineering Task Force - IETF.

Exemplo prático: Configurando um cliente baseado no Windows para que seja um

cliente do DHCP: Para configurar um computador com o Windows 2000 para ser um

cliente DHCP, siga os passos indicados a seguir:

1. Faça o logon com a conta de Administrador ou com uma conta com permissão de

administrador.

2. Abra o Painel de controle: Iniciar -> Configurações -> Painel de controle.

3. Abra a opção Conexões dial-up e de rede.

4. Clique com o botão direito do mouse na conexão de rede local a ser configurada.

No menu de opções que é exibido clique em Propriedades.

5. Será exibida a janela de propriedades da conexão de rede local.

6. Clique na opção Protocolo Internet (TCP/IP) para selecioná-la. Clique no botão

Propriedades, para abrir a janela de propriedades do protocolo TCP/IP.

7. Nesta janela você pode configurar o endereço IP, a máscara de sub-rede e o

Gateway padrão, manualmente. Para isso basta marcar a opção Utilizar o seguinte

endereço IP e informar os endereços desejados.

8. Para configurar o computador para utilizar um servidor DHCP, para obter as

configurações do TCP/IP automaticamente, marque a opção Obter um endereço IP

automaticamente, conforme indicado na Figura a seguir. Marque também a opção

Obter o endereço dos servidores DNS automaticamente, para obter o endereço IP do

servidor DNS a partir das configurações fornecidas pelo DHCP.

Page 83: Apostila TCP IP

83

Figura - Configurando o cliente para usar o DHCP.

9. Clique em OK para fechar a janela de propriedades do TCP/IP.

10. Você estará de volta à janela de propriedades da conexão de rede local.

11. Clique em OK para fechá-la e aplicar as alterações efetuadas. Ao clicar em OK, o

cliente DHCP já tentará se conectar com um servidor DHCP e obter as configurações do

protocolo TCP/IP, a partir do servidor DHCP.

O servidor DHCP dá suporte as seguintes versões do Windows (e do MS- DOS) com

clientes DHCP:

Windows Longhorn Server

Windows Vista

Windows Server 2003 (todas as edições)

Windows 2000 Server (todas as edições)

Windows XP Home e Professional

Windows NT (todas as versões lançadas)

Windows Me

Windows 98

Windows 95

Windows for Workgroups versão 3.11 (com o Microsoft 32 bit TCP/IP VxD

instalado)

Microsoft-Network Client versão 3.0 para MS-DOS (com o driver TCP/IP de

modo real instalado)

LAN Manager versão 2.2c

Page 84: Apostila TCP IP

84

Um recurso de nome esquisito APIPA

APIPA é a abreviatura de Automatic Private IP Addressing. Esta é uma nova

funcionalidade que foi introduzida no Windows 98, está presente no Windows 2000,

Windows XP, Windows Vista, Longhorn Server e no Windows Server 2003. Imagine

um cliente com o protocolo TCP/IP instalado e configurado para obter as configurações

do protocolo TCP/IP a partir de um servidor DHCP. O cliente é inicializado, porém não

consegue se comunicar com um servidor DHCP. Neste situação, o Windows, usa o

recurso APIPA, e automaticamente atribui um endereço IP da rede

169.254.0.0/255.255.0.0. Este é um dos endereços especiais, reservados para uso em

redes internas, ou seja, este não seria um endereço de rede, válido na Internet. A seguir

descrevo mais detalhes sobre a funcionalidade APIPA.

Não esqueça: O número de rede usado pelo recurso APIPA é o seguinte:

169.254.0.0/255.255.0.0

Nota: O recurso APIPA é especialmente útil para o caso de uma pequena rede, com 4

ou 5 computadores, onde não existe um servidor disponível. Neste caso você pode

configurar todos os computadores para usarem o DHCP. Ao inicializar, os clientes não

conseguirão localizar um servidor DHCP (já que não existe nenhum servidor DHCP

nesta rede do nosso exemplo). Neste caso o recurso APIPA atribuirá endereços da rede

169.254.0.0/255.255.0.0 para todos os computadores da rede. O resultado final é que

todos ficam configurados com endereços IP da mesma rede e poderão se comunicar,

compartilhando recursos entre si. É uma boa solução para um rede doméstica ou de um

pequeno escritório.

Configuração automática do cliente

Se os clientes estiverem configurados para usar um servidor DHCP (em vez de serem

configurados manualmente com um endereço IP e outros parâmetros), o serviço do

cliente DHCP entrará em funcionamento a cada vez que o computador for inicializado.

O serviço do cliente DHCP usa um processo de três etapas para configurar o cliente

com um endereço IP e outras informações de configuração.

O cliente DHCP tenta localizar um servidor DHCP e obter as configurações do

protocolo TCP/IP, a partir desse servidor.

Se um servidor DHCP não puder ser encontrado, o cliente DHCP configura

automaticamente seu endereço IP e máscara de sub-rede usando um endereço

selecionado da rede classe B reservada, 169.254.0.0, com a máscara de sub-rede,

255.255.0.0 (recurso APIPA). O cliente DHCP irá fazer uma verificação na rede,

para ver se o endereço que ele está se auto-atribuindo (usando o recurso APIPA)

já não está em uso na rede. Se o endereço já estiver em uso será caracterizado

um conflito de endereços. Se um conflito for encontrado, o cliente selecionará

outro endereço IP. A cada conflito de endereço, o cliente irá tentar novamente a

configuração automática após 10 tentativas ou até que seja utilizado um

endereço que não gere conflito.

Depois de selecionar um endereço no intervalo de rede 169.254.0.0 que não está

em uso, o cliente DHCP irá configurar a interface com esse endereço. O cliente

Page 85: Apostila TCP IP

85

continua a verificar se um servidor DHCP não está disponível. Esta verificação é

feita a cada cinco minutos. Se um servidor DHCP for encontrado, o cliente

abandonará as informações configuradas automaticamente (endereço da rede

169.254.0.0/255.255.0.0). Em seguida, o cliente DHCP usará um endereço

oferecido pelo servidor DHCP (e quaisquer outras informações de opções de

DHCP fornecidas) para atualizar as definições de configuração IP.

Caso o cliente DHCP já tenha obtido previamente uma concessão de um servidor DHCP

(durante uma inicialização anterior) e esta concessão ainda não tenha expirado, ocorrerá

a seguinte seqüência modificada de eventos, em relação a situação anterior:

Se a concessão de cliente ainda estiver válida (não expirada) no momento da

inicialização, o cliente irá tentar renovar a concessão com o servidor DHCP.

Se durante a tentativa de renovação o cliente não conseguir localizar qualquer

servidor DHCP, ele irá tentar efetuar o ping no gateway padrão que ele recebeu

do servidor DHCP anteriormente. Dependendo do sucesso ou falha do ping, o

cliente DHCP procederá conforme o seguinte:

1. Se um ping para o gateway padrão for bem-sucedido, o cliente DHCP presumirá

que ainda está localizado na mesma rede em que obteve a concessão atual e continuará a

usar a concessão. Por padrão, o cliente irá tentar renovar a concessão quando 50 por

cento do tempo de concessão tiver expirado.

2. Se uma solicitação de ping do gateway padrão falhar, o cliente presumirá que foi

movido para uma rede em que não estão disponíveis servidores DHCP, como uma rede

doméstica ou uma rede de uma pequena empresa, onde não está disponível servidor

DHCP (pode ser o exemplo de um vendedor conectando um notebook em um ponto da

rede de um pequeno cliente).

O cliente irá configurar automaticamente o endereço IP conforme descrito

anteriormente. Uma vez que configurado automaticamente, o cliente continua a tentar

localizar um servidor DHCP a cada cinco minutos e obter uma nova concessão de

endereço IP e de demais configurações.

Não esqueça: APIPA é isso. A sigla é mais complicada do que a funcionalidade. Se

você está se preparando para os exames de Certificação do Windows 2000 Server, fique

atento a esta funcionalidade. Normalmente aparecem questões envolvendo

conhecimentos desta funcionalidade.

Conclusão

Nesta parte do tutorial fiz a apresentação do serviço de configuração automática de

hosts TCP/IP: DHCP. Nas próximas partes deste tutorial, falarei sobre os demais

serviços do Windows 2000 Server e do Windows Server 2003, diretamente ligados ao

TCP/IP, tais como o WINS e RRAS.

Page 86: Apostila TCP IP

86

Uma introdução ao WINs

Esta é a décima parte do Tutorial de TCP/IP. Na Parte 1 tratei dos aspectos básicos do

protocolo TCP/IP. Na Parte 2 falei sobre cálculos binários, um importante tópico para

entender sobre redes, máscara de sub-rede e roteamento. Na Parte 3 falei sobre Classes

de endereços, na Parte 4 fiz uma introdução ao roteamento e na Parte 5 apresentei mais

alguns exemplos e análises de como funciona o roteamento e na Parte 6 falei sobre a

Tabela de Roteamento. Na Parte 7 tratei sobre a divisão de uma rede em sub-redes,

conceito conhecido como subnetting. Na Parte 8 fiz uma apresentação de um dos

serviços mais utilizados pelo TCP/IP, que é o Domain Name System: DNS. O DNS é o

serviço de resolução de nomes usado em todas as redes TCP/IP, inclusive pela Internet

que, sem dúvidas, é a maior rede TCP/IP existente. Na Parte 9 fiz uma apresentação do

serviço Dynamic Host Configuration Protocol – DHCP. Nesta décima parte falarei

sobre mais um serviço de rede do Windows 2000 Server e Windows Server 2003:

WINS

O WINS é a abreviatura de Windows Internet Name Services. É um serviço de

resolução de nomes. Mais um? O DNS já não é um serviço de resolução de nomes? Sim

para as duas questões. O WINS é mais um serviço de resolução de nomes, que é

mantido por questões de compatibilidade com versões anteriores do Windows (95, 98,

Me, 3.11) e de compatibilidade com aplicações mais antigas, que ainda dependam da

resolução de nomes NetBios, a qual é feita pelo WINS.

Todo computador tem dois nomes: um chamado nome de hosts e um nome NetBios.

Claro que estes nomes devem ser iguais. Por exemplo, o computador

micro01.abc.com.br tem um nome de host micro01 e, por coerência, o nome NetBios

também deve ser micro01. Eu digo deve ser, porque em clientes mais antigos, tais como

o Windows 95, Windows 98 ou Windows Me, o nome de host e o nome NetBios são

configurados em diferentes opções do Windows e podem ser diferentes, embora não

seja nada coerente configurar nomes diferentes.

O WINS é um serviço que permite que os clientes façam o registro do nome NetBios,

dinamicamente durante a inicialização. O cliente registra o seu nome NetBios e o

respectivo endereço IP. Com isso o WINS vai criando uma base de nomes NetBios e os

respectivos endereços IP, podendo fornecer o serviço de resolução de nomes NetBios na

rede.

Conforme você verá nesta introdução, o WINS apresenta um espaço de nomes chamado

plano (flat), sem domínio e sem nenhuma hierarquia (muito diferente do que acontece

no DNS, onde temos um espaço de nomes hierárquico, conforme descrito na Parte 9

deste tutorial).

Entendendo o que é e como funciona o WINS

O Windows Internet Name Service – WINS é um serviço para resolução de nomes.

Mais um, pode perguntar o amigo leitor. Sim, além do DNS o Windows 2000 Server (a

exemplo do Windows Server 2003 e do NT Server 4.0) também fornece mais um

serviço para resolução de nomes – WINS.

Page 87: Apostila TCP IP

87

O WINS tem muitas diferenças em relação ao DNS. A primeira e fundamental delas é

que o WINS não forma um espaço de nomes hierárquico como o DNS. O espaço de

nomes do WINS é plano (flat).

Em uma base de dados WINS fica registrado apenas o nome NetBios do computador e o

respectivo número IP. Poderíamos até dizer que o WINS está para a resolução de nomes

NetBios, assim como o DNS está para a resolução de nomes FQDN (descritos na Parte

9).

A grande questão que continua é: ―Porque dois serviços diferentes para a resolução de

nomes‖? O que acontece é que até o NT Server 4.0, o WINS era o serviço de resolução

de nomes mais utilizado e o suporte ao DNS só será obrigatório se algum serviço

dependesse do DNS. Na época do NT Server 4.0, com a maioria dos clientes baseados

em Windows 95/98 (ou até mesmo Windows 3.11), o WINS era o serviço de nomes

mais utilizado. Porém a partir do Windows 2000 Server, com o Active Directory, o

DNS passou a ser o serviço preferencial para a resolução de nomes (e obrigatório para o

caso do Active Directory).

Porém da mudança do WINS para o DNS, obviamente que existe um período de

transição. É exatamente este período que estamos vivendo, ou seja, com clientes

(Windows 95/98/Me) e aplicativos que ainda dependem do WINS. Por isso que, muito

provavelmente, você ainda precisará do WINS para dar suporte a estes clientes e

aplicativos mais antigos, ainda dependentes do WINS.

Com o WINS, sempre que um cliente configurado para utilizar um servidor WINS, é

inicializado, o cliente, automaticamente, registra o seu nome NetBios e o respectivo

endereço IP, na base de dados do servidor configurado como Wins Primário, nas

propriedades do TCP/IP do cliente. Os nomes NetBios podem ter até 15 caracteres. Na

verdade são 16 caracteres, mas o décimo sexto é reservado para uso do sistema

operacional. O Windows 2000 Server registra, para um mesmo computador, o nome

NetBios mais de uma vez, apenas mudando o décimo sexto caractere. Este caractere

indica um serviço específico no computador. Falarei mais sobre estes nomes logo

adiante.

Algumas características do WINS

O WINS apresenta as seguintes características:

Um banco de dados dinâmico de nomes NetBios para endereço IP, o qual

fornece o suporte para resolução e registro do nome NetBios dos computadores

da rede. O serviço WINS é instalado em um ou mais servidores da rede. O

número IP do servidor WINS deve ser informado nos clientes, quer seja

configurando manualmente as propriedades do protocolo TCP/IP do cliente,

quer seja através do uso do DHCP para efetuar estas configurações.

Gerenciamento centralizado do banco de dados de nome para endereço,

minorando a necessidade de gerenciamento de arquivos Lmhosts. O arquivo

Lmhosts é um arquivo de texto, na qual podem ser criadas entradas para

resolução de nomes NetBios. O arquivo Lmhosts fica na pasta

systemroot\system32\drivers\etc., onde systemroot representa a pasta onde está

Page 88: Apostila TCP IP

88

instalado o Windows 2000 Server, Windows XP ou Windows Server 2003.

Podemos dizer que o Lmhosts representa para o WINS, o mesmo que o arquivo

hosts representa para o DNS. Na verdade, na pasta indicada anteriormente, é

gravado, por padrão, um arquivo chamado Lmhosts.sam. O administrador, caso

necessite utilizar um arquivo Lmhosts, pode renomear este arquivo (de

Lmhosts.sam para Lmhosts) e criar as entradas necessárias.

O uso do WINS fornece Redução de tráfego de broadcast, gerado para a

resolução de nome NetBios. Se os clientes dependentes do WINS, não estiverem

configurados com o número IP de pelo menos um servidor WINS, eles irão

gerar tráfego de Broadcast na rede local, para tentar resolver nomes. Por padrão

os roteadores bloqueiam tráfego de broadcast. Com isso, sem o uso do WINS,

para clientes que dependem do WINS, não haveria como fazer a resolução de

nomes de servidores que estão em outras redes (redes remotas, ligadas através de

links de WAN e roteadores). Através do mecanismo de replicação, é possível

manter vários servidores WINS, em diferentes redes, com o mesmo banco de

dados, com informações de todos os computadores da rede, mediante o uso de

replicação.

É possível integrar o WINS com o DNS, para que o WINS possa responder

consultas às quais o DNS não conseguiu responder.

Como saber se ainda devo utilizar o WINS?

Pode parecer que o WINS tem muitas vantagens, então deve realmente ser utilizado.

Não é bem assim. Só é justificado o uso do WINS se houver versões antigas do

Windows (Windows 3.11, Windows 95, Windows 98 ou Windows Me) ou aplicações

que dependam do WINS. Neste item vou detalhar um pouco mais sobre em que

situações você ainda terá que utilizar o WINS.

Antes de mostrar quando você deve utilizar, vou descrever algumas situações em que,

com certeza, você não precisará utilizar o WINS:

A sua rede é baseada apenas em servidores como Windows 2000 Server ou

Windows Server 2003 e os clientes são baseados no Windows 2000

Professional, Windows XP Professional ou Windows Vista. Com uma rede nesta

situação, com certeza o DNS está instalado e funcionando. Nesta situação não

existe nenhuma dependência do WINS para a resolução de nomes, uma vez que

o DNS atende perfeitamente a necessidade de resolução de nomes no cenário

proposto.

Se você tem uma pequena rede, com até 20 computadores, localizados em um

único escritório, e a rede é utilizada para compartilhamento de arquivos,

impressoras e para aplicações, não é necessário o uso do WINS. Mesmo que

alguns clientes ou aplicações necessitem de resolução de nome NetBios, poderão

fazê-lo, sem problemas, usando broadcast. Devido ao pequeno número de

computadores, o tráfego de broadcast, devido à resolução de nomes NetBios não

representará um problema.

Ao decidir se precisa usar o WINS, você deve primeiro considerar as seguintes

questões:

Page 89: Apostila TCP IP

89

Tenho computadores na rede que exigem o uso de nomes de NetBIOS? Lembre

que todos os computadores em rede que estiverem sendo executados com um

sistema operacional da Microsoft antigo, como as versões do MS-DOS,

Windows 95/98 ou Windows NT 3.51/4.0, exigem suporte a nomes de NetBIOS.

O Windows 2000 é o primeiro sistema operacional da Microsoft que não requer

mais a nomeação de NetBIOS. Portanto, os nomes de NetBIOS ainda podem ser

exigidos na rede para fornecer serviços de compartilhamento de arquivo e

impressão básicos e para oferecer suporte a diversas aplicações existentes, as

quais ainda dependam da resolução de nomes NetBios. Por exemplo, um cliente

baseado no Windows 95, depende do nome NetBios do servidor, para poder

acessar uma pasta compartilhada no servidor. Você não conseguirá usar o nome

DNS do servidor, como por exemplo: \\srv01.abc.com\documentos, em clientes

com versões antigas do Windows, conforme as descritas no início deste

parágrafo. Nestes clientes você tem que usar o nome NetBios do servidor, como

por exemplo: \\srv01\documentos.

Todos os computadores na rede estão configurados e são capazes de oferecer

suporte ao uso de outro tipo de nomeação de rede, como por exemplo o DNS

(Domain Name System, sistema de nomes de domínios)? A nomeação de rede é

um serviço vital para a localização de computadores e recursos por toda a rede,

mesmo quando os nomes NetBIOS não sejam exigidos. Antes de decidir

eliminar o suporte a nomes de NetBIOS ou WINS, certifique-se de que todos os

computadores e programas na rede são capazes de funcionar usando outro

serviço de nomes, como o DNS. Nesta etapa é muito importante que você tenha

um inventário de software atualizado. Com o inventário de software você tem

condição de saber quais programas ainda dependem da resolução de nomes

NetBios.

Os clientes WINS que estejam executando sob o Windows 2000, Windows Server 2003

ou Windows XP Professional, são configurados por padrão para usar primeiro o DNS

para resolver nomes com mais de 15 caracteres ou que utilizem pontos (".") dentro do

nome. Para nomes com menos de 15 caracteres e que não utilizem pontos, o Windows

primeira tenta resolver o nome usando WINS (se este estiver configurado), caso o

WINS venha a falhar, o DNS será utilizado na tentativa de resolver o nome.

Clientes suportados pelo WINS

O WINS é suportado por uma grande variedade de clientes, conforme descrito na lista a

seguir:

Windows Server 2003

Windows 2000

Windows NT 3.5 ou superior

Windows 95/98/Me

Windows for Workgroups 3.11

MS-DOS com Cliente de Rede Microsoft versão 3

MS-DOS com LAN Manager versão 2.2c

Clientes Linux e UNIX, rodando o serviço Samba

Page 90: Apostila TCP IP

90

Nota: É possível criar entradas estáticas no WINS (criadas manualmente), para clientes

não suportados pelo WINS. Porém esta não é uma prática recomendada e somente deve

ser utilizada quando for absolutamente necessária.

Não esqueça: Fique atento a este ponto, ou seja, criação de entradas estáticas. Por

exemplo, se você tem clientes antigos, como o Windows 95 ou Windows 98, que

precisam acessar recursos em um servidor UNIX ou Linux, o qual não pode ser cliente

do WINS, ou seja, não é capaz de registrar seu nome no WINS, o que fazer? Neste caso

você deve criar uma entrada estática no WINS, para o nome do servidor UNIX ou Linux

e o respectivo endereço IP. Com isso, os clientes mais antigos poderão acessar os

recursos do servidor UNIX.

Como funciona o WINS

Os servidores WINS mantém uma base de dados com nomes dos clientes configurados

para utilizar o WINS e os respectivos endereços IP. Quando uma estação de trabalho

configurada para utilizar o WINS é inicializada, ela registra o seu nome NetBios e o seu

endereço IP no banco de dados do servidor WINS. A estação de trabalho utiliza o

servidor WINS, cujo endereço IP está configurado como WINS Primário, nas

propriedades do protocolo TCP/IP (quer estas configurações tenham sido feitas

manualmente ou via DHCP. Para informações detalhadas sobre o DHCP, consulte a

Parte 9 deste tutorial). Quando o cliente é desligado, o registro do nome e do endereço

IP é liberado no servidor WINS. Com isso a base de dados do WINS é criada e mantida,

dinamicamente.

Os nomes NetBios podem ter, no máximo 15 caracteres. Um 16º caractere é registrado

pelo serviço WINS. Este caractere adicional é utilizado para indicar um determinado

tipo de serviço. Por exemplo, um servidor pode ter o seu nome registrado no WINS

várias vezes. O que diferencia um registro do outro é o 16º caractere, o qual indica

diferentes serviços. O 16º caractere está no formato de número Hexadecimal. A seguir,

a título de exemplo, alguns dos valores possíveis para o 16º caractere e o respectivo

significado:

nome_de_domínio[1Bh]: Registrado por cada controlador de domínio do

Windows NT Server 4.0 que esteja executando como PDC (Primary Domain

Controller) do respectivo domínio. Esse registro de nome é usado para permitir a

procura remota de domínios. Quando um servidor WINS é consultado para

obtenção desse nome, ele retorna o endereço IP do computador que registrou o

nome.

nome_de_computador[1Fh]: Registrado pelo serviço Network Dynamic Data

Exchange (NetDDE, intercâmbio dinâmico de dados de rede). Ele aparecerá

somente se os serviços NetDDE forem iniciados no computador.

Você pode exibir a lista de nomes (na verdade o mesmo nome, apenas diferenciando o

16º caractere) registrados para um determinado computador, utilizando o seguinte

comando:

nbtstat –a nome_do_computador

Page 91: Apostila TCP IP

91

Por exemplo, o comando a seguir retorna a lista de nomes registrados no WINS, pelo

computador chamado servidor:

nbtstat –a servidor

Este comando retorna o resultado indicado a seguir:

C:\>nbtstat -a servidor

Local Area Connection:

Node IpAddress: [10.10.20.50] Scope Id: []

NetBIOS Remote Machine Name Table

Name Type Status

-------------------------------------------

SERVIDOR <00> UNIQUE Registered

SERVIDOR <20> UNIQUE Registered

GROZA <00> GROUP Registered

GROZA <1C> GROUP Registered

GROZA <1B> UNIQUE Registered

GROZA <1E> GROUP Registered

SERVIDOR <03> UNIQUE Registered

GROZA <1D> UNIQUE Registered

..__MSBROWSE__. <01> GROUP Registered

INet~Services <1C> GROUP Registered

IS~SERVIDOR.... <00> UNIQUE Registered

ADMINISTRADOR <03> UNIQUE Registered

MAC Address = 00-00-21-CE-01-11

Para que as estações de trabalho da rede possam utilizar o servidor WINS, basta

informar o número IP do servidor WINS nas propriedades avançadas do protocolo

TCP/IP da estação de trabalho. Uma vez configurado com o número IP do servidor

WINS, o cliente, durante a inicialização, registra o seu nome NetBios, automaticamente

com o servidor WINS.

O cliente WINS utiliza diferentes métodos para a resolução de nomes NetBios. Estes

diferentes métodos são identificados como: b-node, p-node, m-node e h-node. A seguir

descrevo a diferença entre estes métodos:

b-node: Um cliente configurado com este método de resolução utiliza somente

broadcast para a resolução de nomes NetBios. Se não houver um servidor WINS

na rede ou o servidor WINS não estiver configurado nas propriedades avançadas

do TCP/IP, este é o método padrão utilizado.

p-node: Utiliza somente o servidor WINS. Se o WINS falhar em resolver o

nome, o cliente não tentará outro método.

Page 92: Apostila TCP IP

92

m-node: Utiliza primeiro broadcast, se não conseguir resolver o nome usando

broadcast, então utiliza o servidor WINS.

h-node: Primeiro utiliza o servidor WINS, somente se o WINS falhar é que será

tentado o broadcast. Este método reduz o tráfego de broadcast na rede. É o

método padrão para clientes configurados para utilizar um servidor WINS.

Conclusão

Nesta parte do tutorial fiz a apresentação do serviço WINS. Nas próximas partes deste

tutorial, falarei sobre os demais serviços do Windows 2000 Server e do Windows

Server 2003, diretamente ligados ao TCP/IP, tais como o RRAS e IPSec.

Page 93: Apostila TCP IP

93

TCP , UDP e Portas de Comunicação

Esta é a décima primeira parte do Tutorial de TCP/IP. Na Parte 1 tratei dos aspectos

básicos do protocolo TCP/IP. Na Parte 2 falei sobre cálculos binários, um importante

tópico para entender sobre redes, máscara de sub-rede e roteamento. Na Parte 3 falei

sobre Classes de endereços, na Parte 4 fiz uma introdução ao roteamento e na Parte 5

apresentei mais alguns exemplos e análises de como funciona o roteamento e na Parte 6

falei sobre a Tabela de Roteamento. Na Parte 7 tratei sobre a divisão de uma rede em

sub-redes, conceito conhecido como subnetting. Na Parte 8 fiz uma apresentação de um

dos serviços mais utilizados pelo TCP/IP, que é o Domain Name System: DNS. O DNS

é o serviço de resolução de nomes usado em todas as redes TCP/IP, inclusive pela

Internet que, sem dúvidas, é a maior rede TCP/IP existente. Na Parte 9 fiz uma

introdução ao serviço Dynamic Host Configuration Protocol – DHCP. Na Parte 10 fiz

uma introdução ao serviço Windows Internet Name Services – WINS. Nesta décima

primeira parte falarei sobre o conceito de portas de comunicação.

Um pouco sobre Pacotes e sobre os protocolos de Transporte

O TCP/IP, na verdade, é formado por um grande conjunto de diferentes protocolos e

serviços de rede. O nome TCP/IP deriva dos dois protocolos mais importantes e mais

utilizados, que são os seguintes:

IP: É um protocolo de endereçamento, um protocolo de rede. Eu me arriscaria a

afirmar que as principais funções do protocolo IP são endereçamento e

roteamento, ou de uma maneira mais simples, fornecer uma maneira para

identificar unicamente cada máquina da rede (endereço IP) e uma maneira de

encontrar um caminho entre a origem e o destino (Roteamento).

TCP: O TCP é um protocolo de transporte e executa importantes funções para

garantir que os dados sejam entregues de uma maneira confiável, ou seja, sem

que os dados sejam corrompidos ou alterados.

Vamos imaginar uma situação prática, onde você deseja enviar um arquivo com cerca

de 10 MB de um computador de origem para um computador de destino. Uma das

primeiras coisas que tem que ser feitas é encontrar uma rota, um caminho entre a origem

e o destino. Este é o papel do protocolo IP, mais especificamente da função de

roteamento. Uma vez encontrado o caminho, o próximo passo é dividir o arquivo de 10

MB em pacotes de tamanhos menores, os quais possam ser enviados pelos

equipamentos da rede. Além da divisão em pacotes menores, o TCP/IP tem que garantir

que os pacotes sejam entregues sem erros e sem alterações. Pode também acontecer de

os pacotes chegarem fora de ordem. O TCP/IP tem que ser capaz de identificar a ordem

correta e entregar os pacotes para o programa de destino, na ordem correta. Por

exemplo, pode acontecer de o pacote número 10 chegar antes do pacote número 9.

Neste caso o TCP tem que aguardar a chegada do pacote número 9 e entregá-los na

ordem correta. Pode também acontecer de serem perdidos pacotes durante o transporte.

Neste caso, o TCP tem que informar à origem de que determinado pacote não foi

recebido no tempo esperado e solicitar que este seja retransmitido. Todas estas funções

– garantir a integridade, a seqüência correta e solicitar retransmissão – são exercidas

pelo protocolo TCP – Transmission Control Protocol. Além do TCP existe também o

Page 94: Apostila TCP IP

94

UDP, o qual não faz todas estas verificações e é utilizado por determinados serviços. A

seguir apresento uma descrição dos protocolos TCP e UDP e um estudo comparativo.

TCP – Uma Visão Geral

O Transmission Control Protocol (TCP) é, sem dúvidas, um dos mais importantes

protocolos da família TCP/IP. É um padrão definido na RFC 793, "Transmission

Control Protocol (TCP)", que fornece um serviço de entrega de pacotes confiável e

orientado por conexão. Ser orientado por conexão, significa que todos os aplicativos

baseados em TCP como protocolo de transporte, antes de iniciar a troca de dados,

precisam estabelecer uma conexão. Na conexão são fornecidas, normalmente,

informações de logon, as quais identificam o usuário que está tentando estabelecer a

conexão. Um exemplo típico são os aplicativos de FTP (Cute – FTP, ES-FTP e assim

por diante). Para que você acesse um servidor de FTP, você deve fornecer um nome de

usuário e senha. Estes dados são utilizados para identificar e autenticar o usuário. Após

a identificação e autenticação, será estabelecida uma sessão entre o cliente de FTP e o

servidor de FTP.

Algumas características do TCP:

Garante a entrega de datagramas IP: Esta talvez seja a principal função do

TCP, ou seja, garantir que os pacotes sejam entregues sem alterações, sem terem

sido corrompidos e na ordem correta. O TCP tem uma série de mecanismos para

garantir esta entrega.

Executa a segmentação e reagrupamento de grandes blocos de dados

enviados pelos programas e Garante o seqüenciamento adequado e entrega

ordenada de dados segmentados: Esta característica refere-se a função de

dividir grandes arquivos em pacotes menores e transmitir cada pacote

separadamente. Os pacotes podem ser enviados por caminhos diferentes e

chegar fora de ordem. O TCP tem mecanismos para garantir que, no destino, os

pacotes sejam ordenados corretamente, antes de serem entregues ao programa de

destino.

Verifica a integridade dos dados transmitidos usando cálculos de soma de

verificação: O TCP faz verificações para garantir que os dados não foram

alterados ou corrompidos durante o transporte entre a origem e o destino.

Envia mensagens positivas dependendo do recebimento bem-sucedido dos

dados. Ao usar confirmações seletivas, também são enviadas confirmações

negativas para os dados que não foram recebidos: No destino, o TCP recebe

os pacotes, verifica se estão OK e, em caso afirmativo, envia uma mensagem

para a origem, confirmando cada pacote que foi recebido corretamente. Caso um

pacote não tenha sido recebido ou tenha sido recebido com problemas, o TCP

envia uma mensagem ao computador de origem, solicitando uma retransmissão

do pacote. Com esse mecanismo, apenas pacotes com problemas terão que ser

reenviados, o que reduz o tráfego na rede e agiliza o envio dos pacotes.

Oferece um método preferencial de transporte de programas que devem

usar transmissão confiável de dados baseada em sessões, como bancos de

Page 95: Apostila TCP IP

95

dados cliente/servidor e programas de correio eletrônico: Ou seja, o TCP é

muito mais confiável do que o UDP (conforme mostrarei mais adiante) e é

indicado para programas e serviços que dependam de uma entrega confiável de

dados.

Funcionamento do TCP

O TCP baseia-se na comunicação ponto a ponto entre dois hosts de rede. O TCP recebe

os dados de programas e processa esses dados como um fluxo de bytes. Os bytes são

agrupados em segmentos que o TCP numera e seqüência para entrega. Estes segmentos

são mais conhecidos como ―Pacotes‖.

Antes que dois hosts TCP possam trocar dados, devem primeiro estabelecer uma sessão

entre si. Uma sessão TCP é inicializada através de um processo conhecido como um

tree-way handshake (algo como Um Aperto de Mão Triplo). Esse processo sincroniza

os números de seqüência e oferece informações de controle necessárias para estabelecer

uma conexão virtual entre os dois hosts.

De uma maneira simplificada, o processo de tree-way handshake, pode ser descrito

através dos seguintes passos:

O computador de origem solicita o estabelecimento de uma sessão com o

computador de destino: Por exemplo, você utiliza um programa de FTP

(origem) para estabelecer uma sessão com um servidor de FTP (destino).

O computador de destino recebe a requisição, verifica as credenciais enviadas

(tais como as informações de logon e senha) e envia de volta para o cliente,

informações que serão utilizadas pelo cliente, para estabelecer efetivamente a

sessão. As informações enviadas nesta etapa são importantes, pois é através

destas informações que o servidor irá identificar o cliente e liberar ou não o

acesso.

O computador de origem recebe as informações de confirmação enviadas pelo

servidor e envia estas confirmações de volta ao servidor. O servidor recebe as

informações, verifica que elas estão corretas e estabelece a sessão. A partir deste

momento, origem e destino estão autenticados e aptos a trocar informações

usando o protocolo TCP. Se por algum motivo, as informações enviadas pela

origem não estiverem corretas, a sessão não será estabelecida e uma mensagem

de erro será enviada de volta ao computador de origem.

Depois de concluído o tree-way handshake inicial, os segmentos são enviados e

confirmados de forma seqüencial entre os hosts remetente e destinatário. Um processo

de handshake semelhante é usado pelo TCP antes de fechar a conexão para verificar se

os dois hosts acabaram de enviar e receber todos os dados.

Os segmentos TCP são encapsulados e enviados em datagramas IP, conforme

apresentado na figura a seguir, obtida na ajuda do Windows 2000 Server:

Page 96: Apostila TCP IP

96

O conceito de Portas TCP

Os programas TCP usam números de porta reservados ou conhecidos, conforme

apresentado na seguinte ilustração, da ajuda do Windows 2000 Server:

O que é uma Porta TCP?

Bem, sem entrar em detalhes técnicos do TCP/IP, vou explicar, através de um exemplo

prático, o conceito de porta. Vamos imaginar um usuário, utilizando um computador

com conexão à Internet. Este usuário, pode, ao mesmo tempo, acessar um ou mais sites

da Internet, usar o Outlook Express para ler suas mensagens de email, estar conectado a

um servidor de FTP, usando um programa como o WS-FTP, para fazer download de um

ou mais arquivos, estar jogando DOOM através da Internet e assim por diante.

Todas as informações que este usuário recebe estão chegando através de pacotes que

chegam até a placa de Modem ou até o Modem ADSL, no caso de uma conexão rápida.

A pergunta que naturalmente surge é:

Como o sistema sabe para qual dos programas se destina cada um dos pacotes que estão

chegando no computador?

Por exemplo, chega um determinado pacote. Este pacote é para uma das janelas do

Navegador, é para o cliente de FTP, é um comando do DOOM, é referente a uma

mensagem de email ou quem é o destinatário deste pacote? A resposta para esta questão

é o mecanismo de portas utilizado pelo TCP/IP. Cada programa trabalha com um

protocolo/serviço específico, ao qual está associado um número de porta. Por exemplo,

o serviço de FTP, normalmente opera na porta 21 (na verdade usa duas portas, uma para

controle e outra para o envio de dados). Todo pacote que for enviado do servidor FTP

para o cliente, terá, além dos dados que estão sendo enviados, uma série de dados de

controle, tais como o número do pacote, código de validação dos dados e também o

Page 97: Apostila TCP IP

97

número da porta. Quando o pacote chega no seu computador, o sistema lê no pacote o

número da porta e sabe para quem encaminhar o pacote. Por exemplo, se você está

utilizando um cliente de FTP para fazer um download, os pacotes que chegarem, com

informação de Porta = 21, serão encaminhados para o cliente de FTP, o qual irá ler o

pacote e dar o destino apropriado. Outro exemplo, o protocolo HTTP, utilizado para o

transporte de informações de um servidor Web até o seu navegador, opera, por padrão,

na porta 80. Os pacotes que chegarem, destinados à porta 80, serão encaminhados para

o navegador. Se houver mais de uma janela do navegador aberta, cada uma acessando

diferentes páginas, o sistema inclui informações, além da porta, capazes de identificar

cada janela individualmente. Com isso, quando chega um pacote para a porta 80, o

sistema identifica para qual das janelas do navegador se destina o referido pacote.

Em resumo: O uso do conceito de portas, permite que vários programas estejam em

funcionamento, ao mesmo tempo, no mesmo computador, trocando informações com

um ou mais serviços/servidores.

O lado do servidor de cada programa que usa portas TCP escuta as mensagens que

chegam no seu número de porta conhecido. Todos os números de porta de servidor TCP

menores que 1.024 (e alguns números mais altos) são reservados e registrados pela

Internet Assigned Numbers Authority (IANA, autoridade de números atribuídos da

Internet). Por exemplo, o serviço HTTP (servidor Web), instalado em um servidor, fica

sempre ―escutando‖ os pacotes que chegam ao servidor. Os pacotes destinados a porta

80, serão encaminhados pelo sistema operacional para processamento do servidor Web.

A tabela a seguir é uma lista parcial de algumas portas de servidor TCP conhecidas

usadas por programas baseados em TCP padrão.

Número de porta TCP Descrição

20 Servidor FTP (File Transfer Protocol, protocolo de

transferência de arquivo) (canal de dados)

21 Servidor FTP (canal de controle)

23 Servidor Telnet

53 Transferências de zona DNS (Domain Name System,

sistema de nomes de domínios)

80 Servidor da Web (HTTP, Hypertext Transfer Protocol,

protocolo de transferência de hipertexto)

139 Serviço de sessão de NetBIOS

Para obter uma lista atualizada e completa de todas as portas TCP conhecidas e

registradas atualmente, consulte o seguinte endereço:

http://www.iana.org/assignments/port-numbers

UDP – Uma Visão Geral

O User Datagram Protocol (UDP) é um padrão TCP/IP e está definido pela RFC 768,

"User Datagram Protocol (UDP)." O UDP é usado por alguns programas em vez de

TCP para o transporte rápido de dados entre hosts TCP/IP. Porém o UDP não fornece

garantia de entrega e nem verificação de dados. De uma maneira simples, dizemos que o

Page 98: Apostila TCP IP

98

protocolo UDP manda os dados para o destino; se vai chegar ou se vai chegar

corretamente, sem erros, só Deus sabe. Pode parecer estranho esta característica do

UPD, porém você verá que em determinadas situações, o fato de o UDP ser muito mais

rápido do que o TCP (por não fazer verificações e por não estabelecer sessões), o uso do

UDP é recomendado.

O protocolo UDP fornece um serviço de pacotes sem conexão que oferece entrega com

base no melhor esforço, ou seja, UDP não garante a entrega ou verifica o

seqüenciamento para qualquer pacote. Um host de origem que precise de comunicação

confiável deve usar TCP ou um programa que ofereça seus próprios serviços de

seqüenciamento e confirmação.

As mensagens UDP são encapsuladas e enviadas em datagramas IP, conforme

apresentado na seguinte ilustração, da ajuda do Windows 2000 Server:

Portas UDP

O conceito de porta UDP é idêntico ao conceito de portas TCP, embora tecnicamente,

existam diferenças na maneira como as portas são utilizadas em cada protocolo. A idéia

é a mesma, por exemplo, se um usuário estiver utilizando vários programas baseados

em UDP, ao mesmo tempo, no seu computador, é através do uso de portas, que o

sistema operacional sabe a qual programa se destina cada pacote UDP que chega.

O lado do servidor de cada programa que usa UDP escuta as mensagens que chegam no

seu número de porta conhecido. Todos os números de porta de servidor UDP menores

que 1.024 (e alguns números mais altos) são reservados e registrados pela Internet

Assigned Numbers Authority (IANA, autoridade de números atribuídos da Internet).

Cada porta de servidor UDP é identificada por um número de porta reservado ou

conhecido. A tabela a seguir mostra uma lista parcial de algumas portas de servidor

UDP conhecidas usadas por programas baseados em UDP padrão.

Número de porta UDP Descrição

53 Consultas de nomes DNS (Domain Name System, sistema de

nomes de domínios)

69 Trivial File Transfer Protocol (TFTP)

137 Serviço de nomes de NetBIOS

138 Serviço de datagrama de NetBIOS

161 Simple Network Management Protocol (SNMP)

Page 99: Apostila TCP IP

99

520 Routing Information Protocol (RIP, protocolo de informações

de roteamento)

Para obter uma lista atualizada e completa de todas as portas TCP conhecidas e

registradas atualmente, consulte o seguinte endereço:

http://www.iana.org/assignments/port-numbers

Comparando UDP e TCP:

Geralmente, as diferenças na maneira como UDP e TCP entregam os dados

assemelham-se às diferenças entre um telefonema e um cartão postal. O TCP funciona

como um telefonema, verificando se o destino está disponível e pronto para a

comunicação. O UDP funciona como um cartão postal — as mensagens são pequenas e

a entrega é provável, mas nem sempre garantida.

UDP é geralmente usado por programas que transmitem pequenas quantidades de dados

ao mesmo tempo ou têm necessidades em tempo real. Nessas situações, a baixa

sobrecarga do UDP (pois este não faz as verificações que são feitas pela TCP) e as

capacidades de broadcast do UDP (por exemplo, um datagrama, vários destinatários)

são mais adequadas do que o TCP.

O UDP contrasta diretamente com os serviços e recursos oferecidos por TCP. A tabela a

seguir compara as diferenças em como a comunicação TCP/IP é tratada dependendo do

uso de UDP ou TCP para o transporte de dados.

UDP TCP

Serviço sem conexão; nenhuma sessão é

estabelecida entre os hosts.

Serviço orientado por conexão; uma sessão é

estabelecida entre os hosts.

UDP não garante ou confirma a entrega ou

seqüência os dados.

TCP garante a entrega através do uso de

confirmações e entrega seqüenciada dos

dados.

Os programas que usam UDP são

responsáveis por oferecer a confiabilidade

necessária ao transporte de dados.

Os programas que usam TCP têm garantia de

transporte confiável de dados.

UDP é rápido, necessita de baixa sobrecarga

e pode oferecer suporte à comunicação ponto

a ponto e ponto a vários pontos.

TCP é mais lento, necessita de maior

sobrecarga e pode oferecer suporte apenas à

comunicação ponto a ponto.

Tanto UDP quanto TCP usam portas para identificar as comunicações para cada

programa TCP/IP, conforme descrito anteriormente.

Conclusão Nesta parte do tutorial fiz uma apresentação dos protocolos TCP e UDP, os

quais são responsáveis pelo transporte de pacotes em redes baseadas no TCP/IP. Você

também aprendeu sobre as diferenças entre os protocolos TCP e UDP e sobre o conceito

de porta de comunicação.

Page 100: Apostila TCP IP

100

Portas de Comunicação na Prática

Esta é a décima segunda parte do Tutorial de TCP/IP. Na Parte 1 tratei dos aspectos

básicos do protocolo TCP/IP. Na Parte 2 falei sobre cálculos binários, um importante

tópico para entender sobre redes, máscara de sub-rede e roteamento. Na Parte 3 falei

sobre Classes de endereços, na Parte 4 fiz uma introdução ao roteamento e na Parte 5

apresentei mais alguns exemplos e análises de como funciona o roteamento. Na Parte 6

falei sobre a Tabela de Roteamento. Na Parte 7 tratei sobre a divisão de uma rede em

sub-redes, conceito conhecido como subnetting. Na Parte 8 fiz uma apresentação de um

dos serviços mais utilizados pelo TCP/IP, que é o Domain Name System: DNS. O DNS

é o serviço de resolução de nomes usado em todas as redes TCP/IP, inclusive pela

Internet que, sem dúvidas, é a maior rede TCP/IP existente. Na Parte 9 fiz uma

introdução ao serviço Dynamic Host Configuration Protocol – DHCP. Na Parte 10 fiz

uma introdução ao serviço Windows Internet Name Services – WINS. Na Parte 11 falei

sobre os protocolos TCP, UDP e sobre portas de comunicação. Nesta décima segunda

parte, mostrarei como são efetuadas as configurações de portas em diversos aplicativos

que você utiliza e os comandos do Windows 2000/XP/2003 utilizados para exibir

informações sobre portas de comunicação.

Exemplos de utilização de portas

Embora provavelmente você nunca tenha notado, você utiliza portas de comunicação

diversas vezes, como por exemplo ao acessar o seu email, ao fazer um download de um

arquivo ou ao acessar uma página na Internet.

Quando você acessa um site na Internet, como por exemplo www.juliobattisti.com.br ou

www.certificacoes.com.br ou www.uol.com.br, o navegador que você está utilizando se

comunica com a porta 80 no servidor HTTP, do site que está sendo acessado. Você nem

fica sabendo que está sendo utilizada a porta 80, pois esta é a porta padrão de

comunicação, para o protocolo HTTP (Hypertext Transfer Protocol). Um detalhe

interessante é que não é obrigatório que seja utilizada a porta padrão número 80, para a

comunicação do HTTP. Por exemplo, o Administrador do IIS – Internet Information

Services, que é o servidor Web da Microsoft, pode configurar um site para ―responder‖

em uma porta diferente da Porta 80, conforme exemplo da Figura a seguir, onde o site

foi configurado para responder na porta 470:

Quando for utilizada uma porta diferente da porta padrão 80, o número da porta deve ser

informada após o endereço, colocando o sinal de dois pontos (:) após o endereço e o

número da porta após o sinal de dois pontos, como no exemplo a seguir:

Page 101: Apostila TCP IP

101

http://www.abc.com.br:470

Outro exemplo do dia-a-dia, onde utilizamos o conceito de portas de comunicação, é

quando você utiliza um cliente de FTP para se conectar a um servidor de FTP e fazer o

download de um ou mais arquivos. Ao criar uma nova conexão de FTP, você deve

informar o nome do servidor (ftp.abc.com.br, ftp.123.com.br, ftp.juliobattisti.com.br e

assim por diante) e definir a porta de comunicação. Os principais clientes de FTP, já

sugerem como padrão a porta 21, a qual é utilizada pelo protocolo FTP. No exemplo da

figura a seguir, mostro uma tela do cliente de FTP Cute FTP, o qual é um dos mais

utilizados. Nesta figura, mostro as configurações para conexão com o meu servidor de

ftp, onde é utilizada a porta 21:

Outro uso muito comum nas redes da sua empresa é a criação de sessões de programas

emuladores de terminal com sistemas que rodam no Mainframe da empresa. Apesar de

terem anunciado a morte do Mainframe há algum tempo atrás, o fato é que o Mainframe

continua mais vivo do que nunca e com grande parte dos sistemas empresariais ainda

rodando no Mainframe.

A próxima figura descreve, resumidamente, como funciona a criação de seções, usando

um software emulador de terminal, para acessar sistemas no Mainframe. Nas estações

de trabalho da rede da empresa, é instalado um programa emulador de terminal. Estes

programas, na maioria das vezes, emulam terminais no padrão TN23270. Este é um

padrão da IBM muito utilizado para acesso à aplicações que estão no Mainframe. O

programa emulador de terminal faz a conexão com o Mainframe, o usuário informa o

seu logon e senha e, de acordo com as permissões atribuídas ao logon do usuário, são

disponibilizados um ou mais sistemas. Quando o usuário vai criar uma sessão com o

Mainframe, ele precisa informar o nome ou o número IP do Mainframe. Normalmente

estas seções são feitas com base no serviço de Telnet (Terminal Emulator Link Over

Network), o qual é baseado na porta de comunicação 23.

Page 102: Apostila TCP IP

102

Na Figura a seguir, mostro o uso de um software emulador de terminal, no momento em

que está sendo configurada uma nova seção, a qual será estabelecida via Telnet,

utilizando a porta 23:

Estas são apenas três situações bastante comuns – acessar a Internet, fazer download de

arquivos a partir de um servidor FTP e criar uma sessão com o Mainframe, - utilizados

diariamente por usuários das redes de empresas de todo o mundo, onde são utilizados,

na prática, o conceito de Portas de Comunicação, do TCP/IP, conceito este que foi

discutido na Parte 11 deste tutorial. A seguir apresentarei alguns comandos do Windows

2000/XP/2003, os quais exibem informações sobre as portas de comunicação que estão

sendo utilizadas no seu computador. Se você não está conectado à rede de uma empresa,

poderá utilizar estes comandos quando você estiver conectado á Internet, situação onde,

certamente, estarão sendo utilizadas portas de comunicação.

Page 103: Apostila TCP IP

103

O comando netstat – exibindo informações sobre portas

O comando netstat está disponível no Windows 2000, Windows XP e Windows Server

2003. Este comando exibe estatísticas do protocolo TCP/IP e as conexões atuais da rede

TCP/IP. O comando netstat somente está disponível se o protocolo TCP/IP estiver

instalado. A seguir apresento alguns exemplos de utilização do comando netstat e das

opções de linha de comando disponíveis.

netstat –a: O comando netstat com a opção –a Exibe todas as portas de

conexões e de escuta. Conexões de servidor normalmente não são mostradas. Ou

seja, o comando mostra as portas de comunicação que estão na escuta, isto é,

que estão aptas a se comunicar. Na listagem a seguir mostro um exemplo do

resultado da execução do comando netstat –a, em um computador com o nome

micro01. O estado LISTENING significa, esperando, na escuta, ou seja,

aceitando conexões na referida porta. O estado ESTABLISHED significa que

existe uma conexão ativa na respectiva porta:

Conexões ativas

Proto Endere‡o local Endere‡o externo Estado

TCP MICRO01:epmap MICRO01.abc.com:0 LISTENING

TCP MICRO01:microsoft-ds MICRO01.abc.com:0 LISTENING

TCP MICRO01:1046 MICRO01.abc.com:0 LISTENING

TCP MICRO01:1051 MICRO01.abc.com:0 LISTENING

TCP MICRO01:1058 MICRO01.abc.com:0 LISTENING

TCP MICRO01:1097 MICRO01.abc.com:0 LISTENING

TCP MICRO01:1595 MICRO01.abc.com:0 LISTENING

TCP MICRO01:2176 MICRO01.abc.com:0 LISTENING

TCP MICRO01:2178 MICRO01.abc.com:0 LISTENING

TCP MICRO01:2216 MICRO01.abc.com:0 LISTENING

TCP MICRO01:2694 MICRO01.abc.com:0 LISTENING

TCP MICRO01:2706 MICRO01.abc.com:0 LISTENING

TCP MICRO01:3236 MICRO01.abc.com:0 LISTENING

TCP MICRO01:3279 MICRO01.abc.com:0 LISTENING

TCP MICRO01:3282 MICRO01.abc.com:0 LISTENING

TCP MICRO01:3285 MICRO01.abc.com:0 LISTENING

TCP MICRO01:3302 MICRO01.abc.com:0 LISTENING

TCP MICRO01:3322 MICRO01.abc.com:0 LISTENING

TCP MICRO01:3335 MICRO01.abc.com:0 LISTENING

TCP MICRO01:3336 MICRO01.abc.com:0 LISTENING

TCP MICRO01:3691 MICRO01.abc.com:0 LISTENING

TCP MICRO01:4818 MICRO01.abc.com:0 LISTENING

TCP MICRO01:4820 MICRO01.abc.com:0 LISTENING

TCP MICRO01:4824 MICRO01.abc.com:0 LISTENING

TCP MICRO01:4829 MICRO01.abc.com:0 LISTENING

TCP MICRO01:6780 MICRO01.abc.com:0 LISTENING

TCP MICRO01:6787 MICRO01.abc.com:0 LISTENING

TCP MICRO01:9495 MICRO01.abc.com:0 LISTENING

TCP MICRO01:42510 MICRO01.abc.com:0 LISTENING

TCP MICRO01:netbios-ssn MICRO01.abc.com:0 LISTENING

TCP MICRO01:microsoft-ds MICRO02:1352 ESTABLISHED

TCP MICRO01:1595 SERVIDOR02:microsoft-ds ESTABLISHED

TCP MICRO01:2694 SERVIDOR02:microsoft-ds ESTABLISHED

TCP MICRO01:2706 SERVIDOR03:1352 ESTABLISHED

TCP MICRO01:3236 SERVFILES01:microsoft-ds ESTABLISHED

TCP MICRO01:3279 EMAILSERVER:microsoft-ds ESTABLISHED

TCP MICRO01:3282 EMAILSERVER:microsoft-ds ESTABLISHED

Page 104: Apostila TCP IP

104

TCP MICRO01:3285 EMAILSERVER:microsoft-ds ESTABLISHED

TCP MICRO01:3323 DRFSTMSRV22:1352 TIME_WAIT

TCP MICRO01:3335 66.139.77.16:http CLOSE_WAIT

TCP MICRO01:3336 66.139.77.16:http CLOSE_WAIT

TCP MICRO01:3691 SRV01:microsoft-ds ESTABLISHED

TCP MICRO01:4200 MICRO01.abc.com:0 LISTENING

TCP MICRO01:4829 a209-249-123-

216.deploy.akamaitechnologies.com:https CLOSE_WAIT

UDP MICRO01:microsoft-ds *:*

UDP MICRO01:1027 *:*

UDP MICRO01:1042 *:*

UDP MICRO01:1403 *:*

UDP MICRO01:3632 *:*

UDP MICRO01:3636 *:*

UDP MICRO01:38037 *:*

UDP MICRO01:38293 *:*

UDP MICRO01:netbios-ns *:*

UDP MICRO01:netbios-dgm *:*

UDP MICRO01:isakmp *:*

UDP MICRO01:42508 *:*

UDP MICRO01:1186 *:*

UDP MICRO01:3212 *:*

UDP MICRO01:3221 *:*

UDP MICRO01:3555 *:*

netstat –e: Esta opção exibe estatísticas sobre a interface Ethernet do

computador. A interface Ethernet é, normalmente, a placa de rede local, que

conecta o computador a rede da empresa. Esta opção pode ser combinada com a

opção –s, que será descrita mais adiante. A seguir um exemplo da execução do

comando netstat –e:

netstat –n: Exibe endereços e números de porta em forma numérica (em vez de

tentar pesquisar o nome). A seguir um exemplo da execução do comando netstat

–n:

Page 105: Apostila TCP IP

105

netstat –s: Exibe estatística por protocolo. Por padrão, são mostradas estatísticas

para TCP, UDP, ICMP (Internet Control Message Protocol, protocolo de acesso

às mensagens de Internet) e IP. A opção -p pode ser utilizada para especificar

um ou mais protocolos para os quais devem ser exibidas estatísticas. A seguir

um exemplo da execução do comando netstat –n:

Estatísticas de IP

Pacotes recebidos = 1847793

Erros de cabeçalho recebidos = 0

Erros de endereço recebidos = 772

Datagramas encaminhados = 0

Protocolos desconhecidos recebidos = 0

Pacotes recebidos descartados = 0

Pacotes recebidos entregues = 1847244

Solicitações de saída = 2702298

Descartes de roteamento = 0

Pacotes de saída descartados = 0

Pacote de saída sem rota = 0

Reagrupamento necess rio = 82

Reagrupamento bem-sucedido = 41

Falhas de reagrupamento = 0

Datagramas fragmentados c/êxito = 15

Falhas/ fragmentação de datagramas = 0

Fragmentos criados = 30

Estatísticas de ICMP

Recebidos Enviados

Mensagens 2767 4037

Erros 0 0

Destino inatingível 18 1280

Tempo excedido 0 0

Problemas de parâmetro 0 0

Retardamentos de origem 4 0

Redirecionamentos 0 0

Echos 1134 1623

Respostas de eco 1611 1134

Carimbos de data/hora 0 0

Respostas de carimbos de data/hora 0 0

Mascaras de endereço 0 0

Respostas mascaras end. 0 0

Estatísticas de TCP

Abertos ativos = 14052

Abertos passivos = 175

Falha em tentativas de conexão = 493

Conexões redefinidas = 3563

Conexões atuais = 5

Segmentos recebidos = 1679289

Segmentos enviados = 2576364

Segmentos retransmitidos = 2841

Estatísticas de UDP

Datagramas recebidos = 159044

Nenhuma porta = 7777

Page 106: Apostila TCP IP

106

Erros de recebimento = 0

Datagramas enviados = 119031

netstat –p: Mostra conexões para o protocolo especificado por protocolo, que

pode ser tcp ou udp. Se utilizado com a opção -s para exibir estatísticas por

protocolo, protocolo pode ser tcp, udp, icmp ou ip. . A seguir um exemplo da

execução do comando netstat –p, onde são exibidas informações somente sobre

o protocolo ip: netstat –s –p ip:

netstat –r: Exibe o conteúdo da tabela de roteamento do computador. Exibe os

mesmos resultados do comando route print, discutido em uma das primeiras

partes deste tutorial.

A opção intervalo: Você pode definir um intervalo, dentro do qual as

estatísticas geradas pelo comando netstat serão atualizadas. Por exemplo, você

pode definir que sejam exibidas as estatísticas do protocolo ICMP e que estas

sejam atualizadas de cinco em cinco segundos. Ao especificar um intervalo, o

comando ficará executando, indefinidamente e atualizando as estatísticas, dentro

do intervalo definido. Para suspender a execução do comando, basta pressionar

Ctrl+C. O comando a seguir irá exibir as estatísticas do protocolo IP e irá

atualizá-las a cada 10 segundos:

netstat –s –p ip 10

Conclusão

Na Parte 11 do tutorial fiz uma apresentação dos protocolos TCP e UDP, os quais são

responsáveis pelo transporte de pacotes em redes baseadas no TCP/IP. Você também

aprendeu sobre as diferenças entre os protocolos TCP e UDP e sobre o conceito de porta

de comunicação.

Page 107: Apostila TCP IP

107

Protocolos de Roteamento Dinâmico - RIP

Introdução:

Esta é a décima quarta parte do Tutorial de TCP/IP. Na Parte 1 tratei dos aspectos

básicos do protocolo TCP/IP. Na Parte 2 falei sobre cálculos binários, um importante

tópico para entender sobre redes, máscara de sub-rede e roteamento. Na Parte 3 falei

sobre Classes de endereços, na Parte 4 fiz uma introdução ao roteamento e na Parte 5

apresentei mais alguns exemplos e análises de como funciona o roteamento e na Parte 6

falei sobre a Tabela de Roteamento. Na Parte 7 tratei sobre a divisão de uma rede em

sub-redes, conceito conhecido como subnetting. Na Parte 8 fiz uma apresentação de um

dos serviços mais utilizados pelo TCP/IP, que é o Domain Name System: DNS. O DNS

é o serviço de resolução de nomes usado em todas as redes TCP/IP, inclusive pela

Internet que, sem dúvidas, é a maior rede TCP/IP existente. Na Parte 9 fiz uma

introdução ao serviço Dynamic Host Configuration Protocol – DHCP. Na Parte 10 fiz

uma introdução ao serviço Windows Internet Name Services – WINS. Na Parte 11 falei

sobre os protocolos TCP, UDP e sobre portas de comunicação. Parte 12, mostrei como

são efetuadas as configurações de portas em diversos aplicativos que você utiliza e os

comandos do Windows 2000/XP/2003 utilizados para exibir informações sobre portas

de comunicação. Na Parte 13 você aprendeu sobre a instalação e configuração do

protocolo TCP/IP no Windows 2000 Professional ou Server. Apresentei, em detalhes, a

configuração do protocolo TCP/IP no Windows 2000. Mostrei como fazer as

configurações do protocolo TCP/IP, desde as configurações básicas de número IP e

máscara de sub-rede (em computadores que usarão IP fixo, ao invés de obter as

configurações a partir de um servidor DHCP), até configurações mais avançadas, tais

como definir filtros para o protocolo TCP/IP.

Nas Partes 4, 5 e 6 falei sobre Roteamento e sobre como todo o processo de roteamento

é baseado em Tabelas de Roteamento, existentes em cada roteador da rede. As tabelas

de roteamento podem ser criadas e atualizadas manualmente, onde o administrador de

cada roteador executa comandos para criar cada uma das rotas necessárias. Essa

abordagem só é possível para redes extremamente pequenas, com um número de rotas

pequeno e quando as rotas não mudam muito freqüentemente. Para redes maiores, a

única abordagem possível é o uso dos chamados protocolos de Roteamento dinâmico.

Estes protocolos, uma vez instalados e configurados nos roteadores, permitem que os

roteadores troquem informações entre si, periodicamente e que montem as tabelas de

roteamento, dinamicamente, com base nestas informações. Esta abordagem é bem mais

indicada para grandes redes, pois os próprios protocolos de roteamento dinâmicos, se

encarregam de manter as tabelas de roteamento sempre atualizadas, alterando rotas

quando necessário e excluindo rotas que apresentam problemas, tais como rotas onde o

link de comunicação está fora do ar. Nesta parte do tutorial de TCP/IP, iniciarei a

apresentação dos protocolos de roteamento dinâmico, sendo que iremos concentrar

nossos estudos, nos dois principais protocolos:

RIP – Routing Internet Protocol

OSPF – Open Shorted Path First

Vou apresentar os conceitos básicos de cada protocolo, para que o amigo leitor possa ter

uma boa idéia de como é o funcionamento de cada um destes protocolos.

Page 108: Apostila TCP IP

108

RIP – Routing Internet Protocol

Existem diferentes maneiras para criar as tabelas de roteamento. A primeira maneira é

criar as tabelas manualmente. O administrador utiliza comandos (como o comando route

add no Windows 2000 Server) para adicionar cada rota manualmente, em cada roteador

da rede. Este método somente é indicado para pequenas redes, onde existe um pequeno

número de roteadores, com poucas rotas e rotas que não são alteradas freqüentemente.

Para redes maiores, com muitas rotas e muitos roteadores, este método é simplesmente

impraticável. A simples adição de uma nova rota, exigiria a alteração das tabelas de

roteamento em todos os roteadores da rede.

Outro problema com a criação manual das tabelas de roteamento, é que não existe a

detecção automática de perda de rotas quando um roteador fica indisponível ou quando

um link para uma determinada rota, está com problemas. Nestas situações, os demais

roteadores da rede continuarão a encaminhar pacotes para o roteador com problemas ou

através do link que está fora do ar, porque a tabela de roteamento está configurada para

enviar pacotes para a referida rota, quer ela esteja disponível ou não. Nesta caso uma

simples indisponibilidade de um roteador exigiria uma reconfiguração manual em todas

as tabelas de roteamento, de todos os roteadores da rede. Quando o roteador voltar a

estar disponível, uma nova reconfiguração das tabelas de roteamento teria que ser feita.

Com estes exemplos é possível ver que a configuração manual das tabelas de

roteamento é um método que somente se aplica a pequenas redes, com um número

reduzido de roteadores e de rotas.

Outra maneira de criar as tabelas de roteamento é dinamicamente. Com este método, os

roteadores trocam informações entre si, periodicamente e atualizam suas tabelas de

roteamento, com base nestas informações trocadas entre os roteadores. O método

dinâmico exige bem menos manutenção (intervenção manual dos administradores da

rede) e pode ser utilizado em grandes redes, como por exemplo a Internet. A atualização

dinâmica das tabelas de roteamento é possível graças a utilização de protocolos de

roteamento dinâmicos. Os protocolos mais conhecidos, para a criação automática de

tabelas de roteamento são os seguintes:

Routing Information Protocol (RIP)

Open Shortest Path First (OSPF)

Nota: Se você encontrar estes protocolos traduzidos, em algum livro ou revista, no

mínimo, faça um ―biquinho‖ para quem traduziu. Eu já vi uma maravilha de tradução

para OSPF: Abrindo primeiro o caminho mais curto. Deus nos ajude. Tudo a ver com

roteamento.

Com o uso dos protocolos de roteamento dinâmico, os roteadores trocam

informações entre si, periodicamente e “aprendem” sobre a rede e sobre as rotas

disponíveis.

Ou seja, os roteadores vão ―descobrindo‖ as rotas existentes e gravando estas rotas em

suas tabelas de roteamento. Se um roteador ficar off-line, em pouco tempo os demais

roteadores ―saberão‖ que este roteador está off-line e atualizarão, automaticamente, suas

tabelas de roteamento. Com isso cada roteador aprende novos caminhos, já

Page 109: Apostila TCP IP

109

considerando a indisponibilidade do roteador com problemas, e repassam estas

informações para os demais roteadores. Esta possibilidade não existe quando as tabelas

são criadas manualmente, conforme descrito anteriormente.

Evidentemente que para redes maiores, a única alternativa viável é o uso de um dos

protocolos de roteamento dinâmico, ou até mesmo uma combinação de ambos,

conforme descreverei mais adiante.

Como funcionam os protocolos de roteamento dinâmico

O protocolo RIP é baseado em uma algoritmo conhecido como distance-vector

(distância vetorial). Este algoritmo é baseado na distância entre dois roteadores, sendo

que esta ―distância‖ é medida em termos do número de roteadores existentes no

caminho entre os dois roteadores – também conhecido como hopes. Já o protocolo

OSPF utiliza um algoritmo baseado em propagação de rotas entre roteadores

denominados como adjacentes (veja o conceito de formação de adjacências na Parte

15), conforme descreverei mais adiante. As principais diferenças entre os protocolos

RIP e OSPF são referentes as seguintes características:

Quais informações sobre rotas são compartilhadas entre os roteadores. Quando

um roteador apresenta problemas, a rede deve ser capaz de reconfigura-se, para

definir novas rotas, já baseadas na nova topologia da rede, sem o roteador com

problemas. O tempo que a rede leva para reconfigura-se é conhecido como

convergência. Um dos principais problemas do protocolo RIP é o alto tempo de

convergência em relação ao OSPF, que tem um tempo de convergência bem

menor.

Como as informações sobre rotas e sobre a topologia da rede são compartilhadas

entre os roteadores: Este aspecto também influencia o tempo de convergência da

rede e apresenta diferenças significativas no RIP e no OSPF.

A seguir apresento mais detalhes sobre o protocolo RIP. O protocolo OSPF será

abordado na Parte 15

RIP - Routing Information Protocol

Neste tópico você entenderá como funciona o RIP, como as informações são trocadas

entre os roteadores que usam RIP, quais as diferenças entre RIP versão 1 (RIP v1) e RIP

versão 2 (RIP v2) e como configurar o RIP no RRAS.

Uma introdução ao RIP

O protocolo RIP é baseado em uma troca de mensagens entre os roteadores que utilizam

o protocolo RIP. Cada mensagem do RIP contém uma série de informações sobre as

rotas que o roteador conhece (com base na sua tabela de roteamento atual) e a distância

do roteador para cada uma das rotas. O roteador que recebe as mensagens, com base na

sua distância para o roteador que enviou a mensagem, calcula a distância para as demais

redes e grava estas informações em sua tabela de roteamento. É importante salientar que

distância significa hope, ou melhor, o número de roteadores existentes em um

determinado caminho, em uma determinada rota.

Page 110: Apostila TCP IP

110

As informações entre roteadores são trocadas quando o roteador é inicializado, quando

o roteador recebe atualizações em sua tabela de roteamento e também em intervalos

regulares. Aqui a primeira desvantagem do RIP. Mesmo que não exista nenhuma

alteração nas rotas da rede, os roteadores baseados em RIP, continuarão a trocar

mensagens de atualização em intervalos regulares, por padrão a cada 30 segundos.

Dentre outros, este é um dos motivos pelos quais o RIP não é indicado para redes

maiores, pois nestas situações o volume de tráfego gerado pelo RIP, poderia consumir

boa parte da banda disponível. O RIP é projetado para intercambiar informações de

roteamento em uma rede de tamanho pequeno para médio. Além disso, cada mensagem

do protocolo RIP comporta, no máximo, informações sobre 25 rotas diferentes, o que

para grandes redes, faria com que fosse necessária a troca de várias mensagens, entre

dois roteadores, para atualizar suas respectivas tabelas, com um grande número de rotas.

Ao receber atualizações, o roteador atualiza a sua tabela de roteamento e envia estas

atualizações para todos os roteadores diretamente conectados, ou seja, a um hope de

distância.

A maior vantagem do RIP é que ele é extremamente simples para configurar e

implementar em uma rede. Sua maior desvantagem é a incapacidade de ser ampliado

para interconexões de redes de tamanho grande a muito grande.

A contagem máxima de hopes usada pelos roteadores RIP é 15. As redes que estejam a

16 hopes ou mais de distância, serão consideradas inacessíveis. À medida que as redes

crescem em tamanho, os anúncios periódicos de cada roteador RIP podem causar

tráfego excessivo nos links de WAN.

Outra desvantagem do RIP é o seu longo tempo de convergência. Quando a topologia

de interconexão da rede é alterada (por queda em um link ou por falha em um roteador,

dentre outros motivos), podem ser necessários vários minutos para que os roteadores

RIP se reconfigurem, para refletir a nova topologia de interconexão da rede. Embora a

rede seja capaz de fazer a sua própria reconfiguração, podem ser formados loops de

roteamento que resultem em dados perdidos ou sem condições de entrega.

Inicialmente, a tabela de roteamento de cada roteador inclui apenas as redes que estão

fisicamente conectadas. Um roteador RIP envia periodicamente anúncios contendo suas

entradas de tabela de roteamento para informar aos outros roteadores RIP locais, quais

as redes que ele pode acessar.

Os roteadores RIP também podem comunicar informações de roteamento através de

disparo de atualizações. Os disparos de atualizações ocorrem quando a topologia da

rede é alterada e informações de roteamento atualizadas são enviadas de forma a refletir

essas alterações. Com os disparos de atualizações, a atualização é enviada

imediatamente em vez de aguardar o próximo anúncio periódico. Por exemplo, quando

um roteador detecta uma falha em um link ou roteador, ele atualiza sua própria tabela de

roteamento e envia rotas atualizadas imediatamente. Cada roteador que recebe as

atualizações por disparo, modifica sua própria tabela de roteamento e propaga a

alteração imediatamente.

Conforme já salientado anteriormente, uma das principais desvantagens do algoritmo

distance-vector do RIP é o alto tempo de convergência. Ou seja, quando um link ou um

Page 111: Apostila TCP IP

111

roteador fica indisponível, demora alguns minutos até que as atualizações de rotas sejam

passadas para todos os roteadores. Durante este período pode acontecer de roteadores

enviarem pacotes para rotas que não estejam disponíveis. Este é um dos principais

motivos pelos quais o RIP não pode ser utilizado em redes de grande porte.

O problema do Count-to-infinity:

Outro problema do protocolo RIP é a situação descrita como count-to-infinity (contar

até o infinito). Para entender este problema vamos imaginar dois roteadores conectados

através de um link de WAN. Vamos chamá-los de roteador A e B, conectando as redes

1, 2 e 3, conforme diagrama da Figura a seguir:

Figura 8.1 O problema count-to-infinity.

Agora imagine que o link entre o roteador A e a Rede 1 apresente problemas. Com isso

o roteador A sabe que não é possível alcançar a Rede 1 (devido a falha no link). Porém

o Roteador B continua anunciando para o restante da rede, que ele encontra-se a dois

hopes da rede A (isso porque o Roteador B ainda não teve sua tabela de roteamento

atualizada com a informação de que o link para a Rede 1 está indisponível). O Roteador

B manda este anúncio, inclusive para o roteador A.

O roteador A recebe esta atualização e considera que ele (o Roteador A) está agora a 3

hopes da Rede 1 (um hope de distância até o Roteador B + dois hopes de distância do

roteador B até a rede 1. Ele não sabe que o caminho do Roteador B para a rede 1, passa

por ele mesmo, ou seja, pelo Roteador A). Com isso volta a informação para o Roteador

B dizendo que o Roteador A está a 3 hopes de distância. O Roteador B atualiza a sua

tabela, considerando agora que ele está a 4 hopes da Rede 1 (um hope até o roteador A

+ 3 hopes que o roteador A está da rede 1, segundo o último anúncio). E este processo

continua até que o limite de 16 hopes seja atingido. Observe que mesmo com um link

com problema, o protocolo RIP não convergiu e continuou anunciando rotas

incorretamente, até atingir uma contagem de 16 hopes (que em termos do RIP significa

o infinito, inalcançável).

O problema do count-to-infinity é um dos mais graves com o uso do RIP Versão 1,

conhecido apenas como RIP v1. O Windows 200 Server e o Windows Server 2003 dão

suporte também ao RIP v2, o qual apresenta algumas modificações no protocolo, as

quais evitam, ou pelo menos minimizam problemas como o loops de roteamento e

count-to-infinity:

Page 112: Apostila TCP IP

112

Split horizon (horizonte dividido): Com esta técnica o roteador registra a

interface através da qual recebeu informações sobre uma rota e não difunde

informações sobre esta rota, através desta mesma interface. No nosso exemplo, o

Roteador B receberia informações sobre a rota para a rede 1, a partir do

Roteador B, logo o Roteador A não iria enviar informações sobre Rotas para a

rede 1, de volta para o Roteador B. Com isso já seria evitado o problema do

count-to-infinity. Em outras palavras, esta característica pode ser resumida

assim: Eu aprendi sobre uma rota para a rede X através de você, logo você não

pode aprender sobre uma rota para a rede X, através de minhas informações.

Split horizon with poison reverse (Inversão danificada): Nesta técnica,

quando um roteador aprende o caminho para uma determinada rede, ele anuncia

o seu caminho, de volta para esta rede, com um hope de 16. No exemplo da

Figura anterior, o Roteador B, recebe a informação do Roteador A, que a rede 1

está a 1 hope de distância. O Roteador B anuncia para o roteador A, que a rede 1

está a 16 hope de distância. Com isso, jamais o Roteador A vai tentar achar um

caminha para a rede 1, através do Roteador B, o que faz sentido, já que o

Roteador A está diretamente conectado à rede 1.

Triggered updates (Atualizações instantâneas): Com esta técnica os

roteadores podem anunciar mudanças na métrica de uma rota imediatamente,

sem esperar o próximo período de anuncio. Neste caso, redes que se tornem

indisponíveis, podem ser anunciadas imediatamente com um hope de 16, ou

seja, indisponível. Esta técnica é utilizada em combinação com a técnica de

inversão danificada, para tentar diminuir o tempo de convergência da rede, em

situações onde houve indisponibilidade de um roteador ou de um link. Esta

técnica diminui o tempo necessário para convergência da rede, porém gera mais

tráfego na rede.

Um estudo comparativo entre RIP v1 e RIP v2

O protocolo RIP v1 apresenta diversos problemas, sendo que os principais são os

destacados a seguir:

O protocolo RIP v1 usa broadcast para fazer anúncios na rede: Com isto,

todos os hosts da rede receberão os pacotes RIP e não somente os hosts

habilitados ao RIP. Uma contrapartida do uso do Broadcast pelo protocolo RIP

v1, é que isso torna possível o uso dos chamados hosts de RIP Silencioso (Silent

RIP). Um computador configurado para ser um Silent RIP, processa os anúncios

do protocolo RIP (ou seja, reconhece os pacotes enviados pelo RIP e é capaz de

processá-los), mas não anuncia suas próprias rotas. Esta funcionalidade pode ser

habilitada em um computador que não esteja configurado como roteador, para

produzir uma tabela de roteamento detalhada da rede, a partir das informações

obtidas pelo processamento dos pacotes do RIP. Com estas informações

detalhadas, o computador configurado como Salient RIP pode tomar melhores

decisões de roteamento, para os programas e serviços nele instalados. No

exemplo a seguir, mostro como habilitar uma estação de trabalho com o

Windows 2000 Professional instalado, a tornar-se um Salient RIP.

Exemplo: Para configurar uma estação de trabalho com o Windows 2000 Professional

instalado, como Salient RIP, siga os passos indicados a seguir:

Page 113: Apostila TCP IP

113

1. Faça o logon como Administrador.

2. Abra o Painel de controle: Iniciar -> Configurações -> Painel de controle.

3. Abra a opção Adicionar ou remover programas.

4. No painel da esquerda, clique em Adicionar ou remover componentes do Windows.

5. Clique na opção Serviços de rede para marcá-la (sem selecionar a caixa de seleção ao

lado desta opção, senão todos os serviços de rede serão instalados).

6. Clique no botão Detalhes...

7. Nas opções que são exibidas marque a opção RIP Listener.

8. Clique em OK. Você estará de volta a janela de componentes do Windows.

9. Clique em Avançar para concluir a instalação.

A máscara de sub-rede não é anunciada juntamente com as rotas: Isso

porque o protocolo RIP v1 foi projetado em 1988, para trabalhar com redes

baseadas nas classes padrão A, B e C, ou seja, pelo número IP da rota, deduzia-

as a respectiva classe. Com o uso da Internet e o uso de um número variável de

bits para a máscara de sub-rede (número diferente do número de bits padrão para

cada classe, conforme descrito na Parte 7), esta fato tornou-se um problema sério

do protocolo RIP v1. Com isso, o protocolo RIP v1, utiliza a seguinte lógica,

para inferir qual a máscara de sub-rede associada com determinada rota:

1. Se a identificação de rede coincide com uma das classes padrão A, B ou C, é

assumida a máscara de sub-rede padrão da respectiva classe.

2. Se a identificação de rede não coincide com uma das classes padrão, duas situações

podem acontecer:

2.1 Se a identificação de rede coincide com a identificação de rede da interface na qual

o anúncio foi recebido, a máscara de sub-rede da interface na qual o anúncio foi

recebido, será assumida.

2.2 Se a identificação de rede não coincide com a identificação de rede da interface na

qual o anúncio foi recebido, o destino será considerado um host (e não uma rede) e a

máscara de sub-rede 255.255.255.255, será assumida.

Esta abordagem gera problemas graves. Por exemplo, quando for utilizado o recurso de

supernetting, para juntar várias redes classe C em uma única rede lógica, o RIP v1 irá

interpretar como se fossem realmente várias redes lógicas e tentará montar uma tabela

de roteamento, como se as redes estivessem separadas fisicamente e ligadas por links de

WAN.

Sem proteção contra roteadores não autorizados: O protocolo RIP v1 não

apresenta nenhum mecanismo de autenticação e proteção, para evitar que

Page 114: Apostila TCP IP

114

roteadores não autorizados possam ser inseridos na rede e passar a anunciar

várias rotas falsas. Ou seja, qualquer usuário poderá instalar um roteador com

RIP v1 e adicionar várias rotas falsas, que o RIP v1 se encarregará de repassar

estas rotas para os demais roteadores da rede.

O protocolo RIP v2, oferece diversas melhorias em relação ao RIP v1, dentre as

quais vamos destacar as seguintes:

Os anúncios do protocolo RIP v2 são baseados em tráfego multicast e não

mais broadcast como no caso do protocolo RIP v1: O protocolo RIP v2 utiliza

o endereço de multicast 224.0.0.9. Com isso os roteadores habilitados ao RIP

atuam como se fossem (na verdade é) um grupo multicast, registrado para

―escutar‖ os anúncios do protocolo RIP v2. Outros hosts da rede, não habilitados

ao RIP v2, não serão ―importunados‖ pelos pacotes do RIP v2. Por questões de

compatibilidade (em casos onde parte da rede ainda usa o RIP v1), é possível

utilizar broadcast com roteadores baseados em RIP v2. Mas esta solução

somente deve ser adotada durante um período de migração, assim que possível,

todos os roteadores devem ser migrados para o RIP v2 e o anúncio via broadcast

deve ser desabilitado.

Informações sobre a máscara de sub-rede são enviadas nos anúncios do

protocolo RIP v2: Com isso o RIP v2 pode ser utilizado, sem problemas, em

redes que utilizam subnetting, supernetting e assim por diante, uma vez que cada

rede fica perfeitamente definida pelo número da rede e pela respectiva máscara

de sub-rede.

Segurança, autenticação e proteção contra a utilização de roteadores não

autorizados: Com o RIP v2 é possível implementar um mecanismo de

autenticação, de tal maneira que os roteadores somente aceitem os anúncios de

roteadores autenticados, isto é, identificados. A autenticação pode ser

configurada através da definição de uma senha ou de mecanismos mais

sofisticados como o MD5 (Message Digest 5). Por exemplo, com a autenticação

por senha, quando um roteador envia um anúncio, ele envia juntamente a senha

de autenticação. Outros roteadores da rede, que recebem o anúncio, verificam se

a senha está OK e somente depois da verificação, alimentam suas tabelas de

roteamento com as informações recebidas.

É importante salientar que tanto redes baseadas no RIP v1 quanto no RIP v2 são redes

chamadas planas (flat). Ou seja, não é possível formar uma hierarquia de roteamento,

baseada no protocolo RIP. Por isso que o RIP não é utilizado em grandes redes. A

tendência natural do RIP, é que todos os roteadores sejam alimentados com todas as

rotas possíveis (isto é um espaço plano, sem hierarquia de roteadores). Imagine como

seria utilizar o RIP em uma rede como a Internet, com milhões e milhões de rotas

possíveis, com links caindo e voltando a todo o momento? Impossível. Por isso que o

uso do RIP (v1 ou v2) somente é indicado para pequenas redes.

Conclusão

Nas Partes 4, 5 e 6 falei sobre Roteamento e sobre como todo o processo de roteamento

é baseado em Tabelas de Roteamento, existentes em cada roteador da rede. As tabelas

Page 115: Apostila TCP IP

115

de roteamento podem ser criadas manualmente, onde o administrador de cada roteador

executa comandos para criar cada uma das rotas necessárias. Essa abordagem só é

possível para redes extremamente pequenas, com um número de rotas pequeno e

quando as rotas não mudam muito freqüentemente. Para redes maiores, a única

abordagem possível é o uso dos chamados protocolos de Roteamento dinâmico.

Estes protocolos, uma vez instalados e configurados nos roteadores, permitem que os

roteadores troquem informações entre si, periodicamente e que montem as tabelas de

roteamento, dinamicamente, com base nestas informações. Esta abordagem é bem mais

indicada para grandes redes, pois os próprios protocolos de roteamento dinâmicos, se

encarregam de manter as tabelas de roteamento sempre atualizadas, alterando rotas

quando necessário e excluindo rotas que apresentam problemas, tais como rotas onde o

link de comunicação está fora do ar. Nesta parte do tutorial de TCP/IP, iniciei a

apresentação dos protocolos de roteamento dinâmico, sendo que nesta e nas próximas

partes do tutorial, iremos concentrar nossos estudos, nos dois principais protocolos:

RIP – Routing Internet Protocol

OSPF – Open Shorted Path First

Page 116: Apostila TCP IP

116

Protocolos de Roteamento Dinâmico - OSPF

Introdução:

Esta é a décima quinta parte do tutorial de TCP/IP. Na Parte 1 tratei dos aspectos

básicos do protocolo TCP/IP. Na Parte 2 falei sobre cálculos binários, um importante

tópico para entender sobre redes, máscara de sub-rede e roteamento. Na Parte 3 falei

sobre Classes de endereços, na Parte 4 fiz uma introdução ao roteamento e na Parte 5

apresentei mais alguns exemplos e análises de como funciona o roteamento e na Parte 6

falei sobre a Tabela de Roteamento. Na Parte 7 tratei sobre a divisão de uma rede em

sub-redes, conceito conhecido como subnetting. Na Parte 8 fiz uma apresentação de um

dos serviços mais utilizados pelo TCP/IP, que é o Domain Name System: DNS. O DNS

é o serviço de resolução de nomes usado em todas as redes TCP/IP, inclusive pela

Internet que, sem dúvidas, é a maior rede TCP/IP existente. Na Parte 9 fiz uma

introdução ao serviço Dynamic Host Configuration Protocol – DHCP. Na Parte 10 fiz

uma introdução ao serviço Windows Internet Name Services – WINS. Na Parte 11 falei

sobre os protocolos TCP, UDP e sobre portas de comunicação. Na Parte 12, mostrei

como são efetuadas as configurações de portas em diversos aplicativos que você utiliza

e os comandos do Windows 2000/XP/2003 utilizados para exibir informações sobre

portas de comunicação. Na Parte 13 você aprendeu sobre a instalação e configuração do

protocolo TCP/IP no Windows 2000 Professional ou Server. Apresentei, em detalhes, a

configuração do protocolo TCP/IP no Windows 2000. Mostrei como fazer as

configurações do protocolo TCP/IP, desde as configurações básicas de número IP e

máscara de sub-rede (em computadores que usarão IP fixo, ao invés de obter as

configurações a partir de um servidor DHCP), até configurações mais avançadas, tais

como definir filtros para o protocolo TCP/IP.

Nas Partes 4, 5 e 6 falei sobre Roteamento e sobre como todo o processo de roteamento

é baseado em Tabelas de Roteamento, existentes em cada roteador da rede. As tabelas

de roteamento podem ser criadas manualmente, onde o administrador de cada roteador

executa comandos para criar cada uma das rotas necessárias. Essa abordagem só é

possível para redes extremamente pequenas, com um número de rotas pequeno e

quando as rotas não mudam muito freqüentemente. Para redes maiores, a única

abordagem possível é o uso dos chamados protocolos de Roteamento dinâmico. Estes

protocolos, uma vez instalados e configurados nos roteadores, permitem que os

roteadores troquem informações entre si, periodicamente e que montem as tabelas de

roteamento, dinamicamente, com base nestas informações. Esta abordagem é bem mais

indicada para grandes redes, pois os próprios protocolos de roteamento dinâmicos, se

encarregam de manter as tabelas de roteamento sempre atualizadas, alterando rotas

quando necessário e excluindo rotas que apresentam problemas, tais como rotas onde o

link de comunicação está fora do ar. Na Parte 14, fiz uma apresentação do protocolo

RIP, das suas características, usos e principais problemas. Nesta décima quinta parte

será a vez de apresentar o protocolo OSPF e o conceito de roteamento baseada em áreas,

roteadores de borda e outros ligados ao OSPF.

OSPF – Open Shorted Path First:

Nesta parte do tutorial você aprenderá sobre o OSPF, suas vantagens em relação ao RIP,

o seu uso para roteamento em grandes redes, sobre os conceitos de sistemas autônomos,

adjacências e assim por diante.

Page 117: Apostila TCP IP

117

Uma introdução ao OSPF

O protocolo OSPF - Open Shortest Path First (OSPF, uma tradução, digamos, muito

forçada, seria: abrir primeiro o caminho mais curto) é a alternativa para redes de grande

porte, onde o protocolo RIP não pode ser utilizado, devido a suas características e

limitações, conforme descrito na Parte 14 deste tutorial.

O OSPF permite a divisão de uma rede em áreas e torna possível o roteamento dentro

de cada área e entre as diferentes áreas, usando os chamados roteadores de borda. Com

isso, usando o OSPF, é possível criar redes hierárquicas de grande porte, sem que seja

necessário que cada roteador tenha uma tabela de roteamento gigantesca, com rotas para

todas as redes, como seria necessário no caso do RIP. O OSPF é projetado para

intercambiar informações de roteamento em uma interconexão de rede de tamanho

grande ou muito grande, como por exemplo a Internet.

A maior vantagem do OSPF é que ele é eficiente em vários pontos: requer pouquíssima

sobrecarga de rede mesmo em interconexões de redes muito grandes, pois os roteadores

que usam OSPF trocam informações somente sobre as rotas que sofreram alterações e

não toda a tabela de roteamento, como é feito com o uso do RIP. Sua maior

desvantagem é a complexidade: requer planejamento adequado e é mais difícil de

configurar e administrar do que o protocolo RIP.

O OSPF usa um algoritmo conhecido como Shortest Path First (SPF, primeiro

caminho mais curto) para calcular as rotas na tabela de roteamento. O algoritmo SPF

calcula o caminho mais curto (menor custo) entre o roteador e todas as redes da

interconexão de redes. As rotas calculadas pelo SPF são sempre livres de loops (laços).

O OSPF usa um algoritmo de roteamento conhecido como link-state (estado de ligação).

Lembre que o RIP usava um algoritmo baseado em distância vetorial. O OSPF aprende

as rotas dinamicamente, através de interação com os roteadores denominados como seus

vizinhos.

Em vez de intercambiar as entradas de tabela de roteamento como os roteadores RIP

(Router Information Protocol, protocolo de informações do roteador), os roteadores

OSPF mantêm um mapa da interconexão de redes que é atualizado após qualquer

alteração feita na topologia da rede (é importante salientar novamente que somente

informações sobre as mudanças são trocadas entre os roteadores usando OSPF e não

toda a tabela de roteamento, como acontece com o uso do RIP). Esse mapa,

denominado banco de dados do estado de vínculo ou estado de ligação, é sincronizado

entre todos os roteadores OSPF e é usado para calcular as rotas na tabela de roteamento.

Os roteadores OSPF vizinhos (neghboring) formam uma adjacência, que é um

relacionamento lógico entre roteadores para sincronizar o banco de dados com os

estados de vínculo.

As alterações feitas na topologia de interconexão de redes são eficientemente

distribuídas por toda a rede para garantir que o banco de dados do estado de vínculo em

cada roteador esteja sincronizado e preciso o tempo todo. Ao receber as alterações feitas

no banco de dados do estado de vínculo, a tabela de roteamento é recalculada.

À medida que o tamanho do banco de dados do estado de vínculo aumenta, os requisitos

de memória e o tempo de cálculo do roteamento também aumentam. Para resolver esse

problema, principalmente para grandes redes, o OSPF divide a rede em áreas (conjuntos

Page 118: Apostila TCP IP

118

de redes contíguas) que são conectadas umas às outras através de uma área de

backbone. Cada roteador mantém um banco de dados do estado de vínculo apenas

para aquelas áreas que a ele estão conectadas. Os ABRs (Area Border Routers,

roteadores de borda de área) conectam a área de backbone a outras áreas.

Esta divisão em áreas e a conexão das áreas através de uma rede de backbone é ilustrada

na Figura a seguir, obtida na Ajuda do Windows 2000 Server:

Divisão em áreas e conexão através de um backbone.

Cada anúncio de um roteador OSPF contém informações apenas sobre os estados de

ligação dos roteadores vizinhos, isto é, dentro da área do roteador. Com isso a

quantidade de informação transmitida na rede, pelo protocolo OSPF, é bem menor do

que a quantidade de informação transmitida quando é usado o protocolo RIP. Outra

vantagem é que os roteadores OSPF param de enviar anúncios, quando a rede atinge um

estado de convergência, ou seja, quando não existem mais alterações a serem

anunciadas. O RIP, ao contrário, continua enviando anúncios periodicamente, mesmo

que nenhuma alteração tenha sido feita na topologia da rede (tal como um link ou

roteador que tenha falhado).

Nota: Na Internet existe a divisão nos chamados Sistemas Autônomos. Um sistema

autônomo, por exemplo, pode representar a rede de um grande provedor. Neste caso, o

próprio sistema autônomo pode ser dividido em uma ou mais áreas usando OSPF e estas

áreas são conectadas por um backbone central. O roteamento dentro de cada sistema

autônomo é feito usando os chamados protocolos de roteamento interno (IGP –

Interior Gateway Protocol). O OSPF é um protocolo IGP, ou seja, para roteamento

dentro dos sistemas autônomos. O roteamento entre os diversos sistemas autônomos é

feito por protocolos de roteamento externos (EGP – Exterior Gateway Protocol) e

pelos chamados protocolos de roteamento de borda (BGP – Border Gateway

Protocol).

Importante: Podem ocorrer situações em que uma nova área que é conectada a rede,

não pode ter acesso físico direto ao backbone OSPF. Nestas situações, a conexão da

nova área com o backbone OSPF é feita através da criação de um link virtual (virtual

link). O link virtual fornece uma caminho ―lógico‖ entre a área fisicamente separada do

backbone e o backbone OSPF. Criar o link virtual significa criar uma rota entre a área

que não está fisicamente conectada ao backbone e o backbone, mesmo que este link

passe por dois ou mais roteadores OSPF, até chegar ao backbone. Para um exemplo

Page 119: Apostila TCP IP

119

passo-a-passo de criação de links virtuais, consulte o Capítulo 8 do livro de minha

autoria:Manual de Estudos Para o Exame 70-216, 712 páginas, publicado pela editora

Axcel Books (www.axcel.com.br).

Vantagens do OSPF em relação ao RIP:

As rotas calculadas pelo algoritmo SPF são sempre livres de loops.

O OSPF pode ser dimensionado para interconexões de redes grandes ou muito

grandes.

A reconfiguração para as alterações da topologia de rede é muito rápida, ou seja,

o tempo de convergência da rede, após alterações na topologia é muito menor do

que o tempo de convergência do protocolo RIP.

O tráfego de informações do protocolo OSPF é muito menor do que o do

protocolo RIP.

O OSPF permite a utilização de diferentes mecanismos de autenticação entre os

roteadores que utilizam OSPF.

O OSPF envia informações somente quando houver alterações na rede e não

periodicamente.

A implementação OSPF como parte dos serviços de roteamento do RRAS – Routing em

Remote Access Services, do Windows 2000 Server e no Windows Server 2003, tem os

seguintes recursos:

Filtros de roteamento para controlar a interação com outros protocolos de

roteamento.

Reconfiguração dinâmica de todas as configurações OSPF.

Coexistência com o RIP.

Adição e exclusão dinâmica de interfaces.

Importante: O Windows 2000 Server não oferece suporte ao uso do OSPF em uma

interface de discagem por demanda (demand-dial) que usa vínculos dial-up temporários.

Dica: Se você está usando vários protocolos de roteamento IP, configure apenas um

único protocolo de roteamento por interface.

Operação do protocolo OSPF

O protocolo OSPF é baseado em um algoritmo conhecido com SPF – Short Path First.

Depois que um roteador (ou um servidor com o Windows 2000 Server ou Windows

Server 2003, configurado como roteador e usando o OSPF) é inicializado e é feita a

verificação para detectar se as interfaces de rede estão OK, é utilizado o protocolo

OSPF Hello para identificar quem são os ―vizinhos‖ do roteador.

O roteador envia pacotes no formato do protocolo Hello, para os seus vizinhos e recebe

os pacotes Hello enviados pelos seus vizinhos.

Page 120: Apostila TCP IP

120

Conforme descrito anteriormente, uma rede baseada em OSPF é dividia em áreas e as

diversas áreas são conectadas através de um backbone comum a todas as áreas. O

algoritmo SPF é baseado na sincronização do banco de dados de estados de ligação

entre os roteadores OSPF dentro de uma mesma área. Porém, ao invés de cada roteador

fazer a sincronização com todos os demais roteadores OSPF da sua área, cada roteador

faz a sincronização apenas com seus vizinhos (neghboring routers). A relação entre

roteadores OSPF vizinhos, com o objetivo de sincronizar suas bases de dados é

conhecida como ―Adjacência‖. O termo mais comum é ―formar uma adjacência‖.

Porém, mesmo com o uso de adjacências, em uma rede com vários roteadores dentro da

mesma área, um grande número de adjacências poderá ser formado, o que implicaria em

um grande volume de troca de informações de roteamento. Por exemplo, imagine uma

rede com seis roteadores OSPF dentro da mesma área. Neste caso, cada roteador

poderia formar uma adjacência com os outros cinco roteadores da área, o que resultaria

em um total de 15 adjacências. O número de adjacências é calculado usando a seguinte

fórmula, onde n representa o número de roteadores:

Número de adjacências = n*(n-1)/2

Com um grande número de adjacências, o tráfego gerado pela sincronização do OSPF

seria muito elevado. Para resolver esta questão é utilizado o conceito de Designated

Router (Roteador designado). Um roteador designado é um roteador que será

considerado vizinho de todos os demais roteadores da rede. Com isso é formada uma

adjacência entre cada roteador da rede e o roteador designado. No nosso exemplo, da

rede com 6 roteadores OSPF, dentro da mesma área, seriam formadas apenas cinco

adjacências. Uma entre cada um dos cinco roteadores, diretamente com o sexto

roteador, o qual foi configurado como roteador designado. Neste caso, cada roteador da

rede troca informações com o roteador designado. Como o roteador designado recebe

informações de todos os roteadores da área, ele fica com uma base completa e repassa

esta base para cada um dos roteadores da mesma área. Observe que com o uso de um

roteador designado, obtém-se uma sincronização da base completa dos roteadores e com

o uso de um número bem menor de adjacências, o que reduz consideravelmente o

tráfego de pacotes do OSPF.

Por questões de contingência, também é criado um Designated Backup Router

(Roteador designado de backup), o qual assumirá o papel de roteador designado, no

caso de falha do roteador designado principal. A eleição de qual será o roteador

designado é feita automaticamente pelo OSPF, mediante uma troca de pacotes Hello, de

acordo com as regras contidas no protocolo, um dos roteadores será eleito como

roteador designado e um segundo como roteador designado backup.

Conclusão

Nas Partes 4, 5 e 6 falei sobre Roteamento e sobre como todo o processo de roteamento

é baseado em Tabelas de Roteamento, existentes em cada roteador da rede. As tabelas

de roteamento podem ser criadas manualmente, onde o administrador de cada roteador

executa comandos para criar cada uma das rotas necessárias. Essa abordagem só é

possível para redes extremamente pequenas, com um número de rotas pequeno e

quando as rotas não mudam muito freqüentemente. Para redes maiores, a única

abordagem possível é o uso dos chamados protocolos de Roteamento dinâmico. Estes

protocolos, uma vez instalados e configurados nos roteadores, permitem que os

Page 121: Apostila TCP IP

121

roteadores troquem informações entre si, periodicamente e que montem as tabelas de

roteamento, dinamicamente, com base nestas informações. Esta abordagem é bem mais

indicada para grandes redes, pois os próprios protocolos de roteamento dinâmico, se

encarregam de manter as tabelas de roteamento sempre atualizadas, alterando rotas

quando necessário e excluindo rotas que apresentam problemas, tais como rotas onde o

link de comunicação está fora do ar. Na Parte 14 fiz uma apresentação do protocolo

RIP. Nesta parte foi a vez do protocolo OSPF, o qual é baseado na divisão de uma rede

em áreas conectadas através de backbones de roteamento. Você pode conferir que o

protocolo OSPF tem inúmeras vantagens em relação ao protocolo RIP.

Page 122: Apostila TCP IP

122

ICF– Internet Connection Firewall

Introdução:

Esta é a décima sétima parte do Tutorial de TCP/IP. Na Parte 1 tratei dos aspectos

básicos do protocolo TCP/IP. Na Parte 2 falei sobre cálculos binários, um importante

tópico para entender sobre redes, máscara de sub-rede e roteamento. Na Parte 3 falei

sobre Classes de endereços, na Parte 4 fiz uma introdução ao roteamento e na Parte 5

apresentei mais alguns exemplos e análises de como funciona o roteamento e na Parte 6

falei sobre a Tabela de Roteamento. Na Parte 7 tratei sobre a divisão de uma rede em

sub-redes, conceito conhecido como subnetting. Na Parte 8 fiz uma apresentação de um

dos serviços mais utilizados pelo TCP/IP, que é o Domain Name System: DNS. O DNS

é o serviço de resolução de nomes usado em todas as redes TCP/IP, inclusive pela

Internet que, sem dúvidas, é a maior rede TCP/IP existente. Na Parte 9 fiz uma

introdução ao serviço Dynamic Host Configuration Protocol – DHCP. Na Parte 10 fiz

uma introdução ao serviço Windows Internet Name Services – WINS. Na Parte 11 falei

sobre os protocolos TCP, UDP e sobre portas de comunicação. Na Parte 12, mostrei

como são efetuadas as configurações de portas em diversos aplicativos que você utiliza

e os comandos do Windows 2000/XP/2003 utilizados para exibir informações sobre

portas de comunicação. Na Parte 13 falei sobre a instalação e a configuração do

protocolo TCP/IP. Na Parte 14 fiz uma introdução sobre o protocolo de roteamento

dinâmico RIP e na Parte 15 foi a vez de fazer a introdução a outro protocolo de

roteamento dinâmico, o OSPF. Na Parte 16 você aprendeu sobre um recurso bem útil: O

compartilhamento da conexão Internet, oficialmente conhecida como ICS – Internet

Connection Sharing. Este recurso é útil quando você tem uma pequena rede, não mais

do que cinco máquinas, conectadas em rede, todas com o protocolo TCP/IP instalado e

uma das máquinas tem conexão com a Internet. Você pode habilitar o ICS no

computador que tem a conexão com a Internet. Com isso os demais computadores da

rede também passarão a ter acesso à Internet.

Nesta décima sétima parte, aprenderemos a utilizar o IFC – Internet Firewall

Connection (Firewall de Conexão com a Internet). O IFC faz parte do Windows XP e

do Windows Server 2003, não estando disponível no Windows 2000. O IFC tem como

objetivo proteger o acesso do usuário contra “ataques” e “perigos” vindos da

Internet. Vou abordar a versão do Firewall baseada no Windows XP com o Service

Pack 2 instalado. Caso você ainda não tenha instalado o SP2, recomendo fazê-lo

com a maior brevidade possível, pois, em termos de segurança, o SP2 é

indispensável. Se você está usando o Windows XP sem o SP2, poderá haver

diferenças nos passos práticos, descritos neste tutorial, o qual é baseado no

Windows XP cm o SP2 instalado.

Introdução

Ao nos conectarmos com a Internet estamos em contato com o mundo; e o mundo em

contato conosco. A Internet é uma ―via de mão dupla‖, ou seja, podemos acessar

recursos em servidores do mundo inteiro, porém o nosso computador também pode ser

acessado por pessoas do mundo inteiro, se não tomarmos alguns cuidados básicos com

segurança.

Page 123: Apostila TCP IP

123

Regra número 1: Sempre utilize um bom programa de antivírus. Escolha o programa

de sua preferência, existem muitos, instale e utilize. É inadmissível não utilizar um

programa antivírus. Os custos são muito baixos, existindo inclusive programas

gratuitos, em comparação com os riscos que se corre em não usar um antivírus.

Mensagens contendo anexos com vírus, sites com conteúdo dinâmico que podem causar

danos, etc., são muitas as ameaças e o antivírus é capaz de nos proteger de grande parte

delas. No site www.invasao.com.br, você encontra uma análise comparativa, sobre os

principais antivírus do mercado.

Regra número 2: Informação. Procure estar sempre atualizado sobre novos tipos de

vírus, novos tipos de ataques e perigos que possam comprometer a segurança do seu

computador. Para informações sobre segurança da informação consulte regularmente o

seguinte site: www.invasao.com.br e www.terra.com.br/tecnologia, bem como a minha

coluna semanal em http://www.juliobattisti.com.br/coluna

Regra número 3: Se você usa o Windows XP ou o Windows Server 2003, aprenda a

utilizar e configurar o IFC (justamente o assunto desta parte do tutorial). É o que você

aprenderá nesta parte do tutorial. Mostrarei o que é o IFC, quais as suas funções e como

configurá-lo para proteger o computador que você utiliza, para acessar a Internet.

Firewall de Conexão com a Internet – ICF

Se fôssemos traduzir firewall literalmente, seria uma parede corta-fogo. Esta

denominação pode parecer sem sentido prático, mas veremos que a função é exatamente

esta. O firewall é como se fosse uma parede, um proteção, colocada entre o seu

computador e a Internet. O fogo neste caso seriam os ataques e demais perigos vindos

da Internet. A função do Firewall é bloquear (cortar) estes perigos (fogo). Um Firewall

pode fazer mais do que isso, ele também pode ser utilizado para bloquear determinados

tipos de tráfegos a partir do seu computador para a Internet. Esta utilização é mais

comum em redes de grandes empresas, onde existe um Firewall entre a rede da empresa

e a Internet. Todo acesso à Internet passa, obrigatoriamente, pelo Firewall. Através de

configurações adequadas é possível bloquear determinados tipos de informações que

não tem a ver com o trabalho dos funcionários. Por exemplo, podemos, através do

Firewall, impedir o acesso a arquivos de vídeo e áudio. Mas este não é o caso do uso do

ICF, o qual é mais indicado para um computador conectado diretamente à Internet ou

para uma pequena rede na qual um dos computadores tem acesso à Internet e

compartilha esta conexão com os demais computadores (para detalhes sobre o

compartilhamento de conexão, consulte a Parte 16). Na Figura a seguir temos um

diagrama que ilustra a função de um Firewall:

Page 124: Apostila TCP IP

124

Função do Firewall

A utilização do ICF depende da configuração que estamos utilizando, ou seja, se temos

um único computador, uma pequena rede ou uma rede empresarial. Vamos considerar

estas três situações distintas:

Um único computador conectado à Internet, quer seja via uma conexão

dial-up ou via uma conexão de acesso rápido: Para esta situação configuramos

o ICF no computador que está conectado à Internet. O ICF protegerá o

computador de uma série de ataques originados na Internet.

Uma pequena rede onde somente um computador tem conexão com à

Internet: Nestas situações é comum o computador que tem acesso à Internet,

compartilhar esta conexão com os demais computadores da rede (veja a Parte 16

deste tutorial). Neste caso, quando o computador que tem acesso à Internet

estiver conectado, todos os demais passarão a ter acesso à Internet. Ou seja,

existe um único ponto de acesso à Internet que é o computador no qual existe

uma conexão, quer seja dial-up ou de acesso rápido. Nesta situação temos que

proteger o computador que está conectado à Internet, com isso protegeremos

também os demais computadores da rede. Nesta configuração, configuramos o

computador com acesso à Internet para usar o ICF.

Uma rede empresarial com um grande número de computadores ligados em

rede: Nestes casos também é comum existir um único ponto de acesso à

Internet, o qual é compartilhado para todos os computadores da rede. Porém para

grandes redes empresariais é exigido um alto nível de sofisticação, capacidade

de bloqueio e filtragem e proteção que somente produtos específicos são capazes

de fornecer. Nestas situações é comum existir um conjunto de equipamentos e

programas que atua como um Firewall para toda a rede da empresa. Obviamente

que nestas situações não é indicado o uso do ICF do Windows XP.

O ICF é considerada uma firewall "de estado". Ela monitora todos os aspectos das

comunicações que cruzam seu caminho e inspeciona o endereço de origem e de destino

de cada mensagem com a qual ele lida. Para evitar que o tráfego não solicitado da parte

pública da conexão (a Internet) entre na parte privada da rede (o seu computador

conectado à Internet), o ICF mantém uma tabela de todas as comunicações que se

originaram do computador no qual está configurado o ICF.

Page 125: Apostila TCP IP

125

No caso de um único computador, o ICF acompanha o tráfego originado do

computador. Quando usado com o compartilhamento de conexão, no caso de uma

pequena rede com o Windows XP, o ICF acompanha todo o tráfego originado no

computador com o ICF habilitado e nos demais computadores da rede. Todo o tráfego

de entrada da Internet é comparado às entradas na tabela e só tem permissão para

alcançar os computadores na sua rede quando houver uma entrada correspondente na

tabela mostrando que a troca de comunicação foi iniciada na rede doméstica.

Na prática o que acontece o seguinte: quando você acessa um recurso da Internet, por

exemplo acessa o endereço de um site, o computador que você está usando, envia para a

Internet uma requisição, solicitando que a página seja carregada no seu Navegador, por

exemplo. Assim pode acontecer com todos os computadores da rede, cada um enviando

as suas requisições. O ICF faz uma tabela com todas as requisições enviadas para a

Internet. Cada informação que chega no ICF, vinda da Internet é verificada. Se esta

informação é uma resposta a uma das requisições que encontra-se na tabela de

requisições, significa que esta informação pode ser enviada para o computador que fez a

requisição. Se a informação que está chegando, não corresponde a uma resposta de uma

das requisições pendentes, significa que pode ser um ataque vindo da Internet, ou seja,

alguém tentando acessar o seu computador ou a sua rede local. Este tipo de informação

é bloqueada pelo ICF. Vejam que desta forma o ICF está protegendo o seu computador,

evitando que informações não solicitadas (não correspondentes a respostas para

requisições enviadas) possam chegar até o seu computador ou a sua rede, neste caso o

ICF está ―cortando o fogo‖ vindo da Internet.

Podemos configurar o ICF para simplesmente bloquear este tipo de informação não

solicitada ou, para além de bloquear, gerar um log de registro, com informações sobre

estas tentativas. Aprenderemos a fazer estas configurações nos próximos tópicos.

Também podemos configurar o ICF para permitir a entrada de informações que

correspondem a determinados serviços. Por exemplo, se você tem uma conexão 24

horas e utiliza o seu computador como um servidor Web, no qual está disponível um

site pessoal, você deve configurar o ICF para aceitar requisições HTTP, caso contrário,

o seu computador não poderá atuar como um servidor Web e todas as requisições dos

usuários serão bloqueadas pelo ICF. Também aprenderemos a fazer estas configurações

nos próximos tópicos.

Ao ativar o ICF, toda a comunicação de entrada, vinda da Internet, será examinada.

Alguns programas, principalmente os de email, podem apresentar um comportamento

diferente quando o ICF estiver ativado. Alguns programas de email pesquisam

periodicamente o servidor de email para verificar se há novas mensagens, enquanto

alguns deles aguardam notificação do servidor de email. As notificações vindas do

servidor não terão requisições correspondentes na tabela de requisições e com isso serão

bloqueadas. Neste caso o cliente de email deixaria de receber as notificações do

servidor.

O Outlook Express, por exemplo, procura automaticamente novas mensagens em

intervalos regulares, conforme configuração do Outlook. Quando há novas mensagens,

o Outlook Express envia ao usuário uma notificação. A ICF não afetará o

comportamento desse programa, porque a solicitação de notificação de novas

mensagens é originada dentro do firewall, pelo próprio Outlook. O firewall cria uma

Page 126: Apostila TCP IP

126

entrada em uma tabela indicando a comunicação de saída. Quando a resposta à nova

mensagem for confirmada pelo servidor de email, o firewall procurará e encontrará uma

entrada associada na tabela e permitirá que a comunicação se estabeleça. O usuário, em

seguida, será notificado sobre a chegada de uma nova mensagem.

Nota: No entanto, o Outlook do Office 2000, é conectado a um servidor Microsoft

Exchange que utiliza uma chamada de procedimento remoto (RPC) para enviar

notificações de novos emails aos clientes. Ele não procura novas mensagens

automaticamente quando está conectado a um servidor Exchange. Esse servidor o

notifica quando chegam novos emails. Como a notificação RPC é iniciada no servidor

Exchange fora da firewall, não no Outlook do Office 2000, que está dentro da firewall,

o ICF não encontra a entrada correspondente na tabela e não permite que as mensagens

RPC passem da Internet para a rede doméstica. A mensagem de notificação de RPC é

ignorada. Os usuários podem enviar e receber mensagens, mas precisam verificar a

presença de novas mensagens manualmente, ou seja, a verificação de novas mensagens

tem que partir do cliente.

Como ativar/desativar o Firewall de Conexão com a Internet

Para ativar/desativar o Firewall de Conexão com a Internet, siga os passos indicados a

seguir (Windows XP Professional):

1. Abra o Painel de controle: Iniciar -> Painel de controle.

2. Se você estiver no modo de exibição por Categoria dê um clique no link Alternar

para o modo de exibição clássico. Se você já estiver no modo de exibição clássico vá

para o próximo passo.

3. Todas as configurações do Firewall de Conexão são feitas através da opção Firewall

do Windows, do Painel de Controle. Dê um clique duplo na opção Firewall do

Windows.

4. Será aberta a janela Firewall do Windows. Se você tiver mais de uma conexão de

rede (por exemplo, uma conexão de rede local e uma conexão via Modem), você poderá

habilitar ou desabilitar o IFC, individualmente, em cada conexão. Na janela Firewall do

Windows, dê um clique na guia Avançado. Será exibida a janela indicada na Figura a

seguir. No nosso exemplo, temos duas conexões de Rede local (Conexão local e

Conexão local 2) e o Firewall está habilitado nas duas conexões. Para habilitar o

Firewall, basta marcar a caixa de seleção ao lado da respectiva conexão. Para desabilitar

o Firewall em um ou mais conexões, basta desmarcar a caixa de seleção, ao lado da

respectiva conexão.

Page 127: Apostila TCP IP

127

A guia Avançado das propriedades da conexão Internet

5. A recomendação é de sempre manter o IFC ativado, em todas as conexões de rede

que você tiver. Com isso você irá garantir um nível maior de proteção, contra uma série

de ameaças, vindas da Internet.

6. Após ter feito as configurações desejadas, clique em OK, para aplicá-las e fechar

a janela Firewall do Windows.

Nota: Para ativar/desativar o ICF você deve ter feito o logon como Administrador ou

como um usuário com permissões de Administrador. Para todos os detalhes sobre a

criação e administração de usuários no Windows XP, consulte o Capítulo 6 do meu

livro: ―Windows XP Home & Professional Para Usuários e Administradores – Segunda

Edição‖.

Como ativar/desativar o log de Segurança do ICF

O log de segurança da Firewall de conexão com a Internet (ICF) permite que você

escolha quais as informações serão registradas no log. Com o uso do Log de Segurança

é possível:

Page 128: Apostila TCP IP

128

Registrar em log os pacotes eliminados, isto é, pacotes que foram bloqueados

pelo Firewall. Essa opção registrará no log todos os pacotes ignorados que se

originarem da rede doméstica ou de pequena empresa ou da Internet.

Registrar em log as conexões bem-sucedidas, isto é, pacotes que não foram

bloqueados. Essa opção registrará no log todas as conexões bem-sucedidas que

se originarem da rede doméstica ou de pequena empresa ou da Internet.

Quando você marca a caixa de seleção Registrar em log os pacotes eliminados (veremos

como fazer isso no próximo tópico), as informações são coletadas a cada tentativa de

tráfego pela firewall a qual tenha sido detectada e negada/bloqueada pelo ICF. Por

exemplo, se as configurações do protocolo ICMP não estiverem definidas para permitir

solicitações de entrada, como as enviadas pelos comandos Ping e Tracert, e uma

solicitação deste tipo, for recebida de fora da rede, ela será ignorada/bloqueada e será

feito um registro no log. Os comandos ping e tracert são utilizados para verificar se

computadores de uma rede estão conectados a rede. Estes comandos são baseados em

um protocolo chamado ICMP – Internet Control Message Protocol. O ICF pode ser

configurado para não aceitar este protocolo (aprenderemos a fazer estas configurações

mais adiante). Neste caso, toda vez que utilizarmos os comandos ping ou tracert, será

feita uma tentativa de trafegar informações usando o protocolo ICMP, o que será

bloqueado pelo Firewall e ficará registrado no log de segurança.

Quando você marca a caixa de seleção Listar conexões de saída bem-sucedidas, são

coletadas informações sobre cada conexão bem-sucedida que passe pela firewall. Por

exemplo, quando alguém da rede se conecta com êxito a um site da Web usando o

Internet Explorer, é gerada uma entrada no log. Devemos ter cuidado com esta opção,

pois dependendo do quanto usamos a Internet, ao marcar esta opção será gerado um

grande número de entradas no log de segurança do ICF, embora seja possível limitar o

tamanho máximo do arquivo no qual são gravadas as entradas do log, conforme

aprenderemos mais adiante.

O log de segurança é produzido com o formato de arquivo de log estendido no padrão

W3C, que é um formato padrão definido pela entidade que define padrões para a

internet, o W3. Maiores informações no site: www.w3.org. O arquivo no qual está o log

de segurança é um arquivo de texto comum, o qual pode ser lido utilizando um editor de

textos como o Bloco de notas.

Como configurar o log de segurança do IFC:

Por padrão, ao ativarmos o ICF, o log de segurança não é ativado. Para ativá-lo, de tal

maneira que passem a ser registrados eventos no log de segurança, siga os passos

indicados a seguir (Windows XP):

1. Abra o Painel de controle: Iniciar -> Painel de controle.

2. Se você estiver no modo de exibição por Categoria dê um clique no link Alternar

para o modo de exibição clássico. Se você já estiver no modo de exibição clássico vá

para o próximo passo.

Page 129: Apostila TCP IP

129

3. Todas as configurações do Firewall de Conexão são feitas através da opção

Firewall do Windows, do Painel de Controle. Dê um clique duplo na opção Firewall do

Windows.

4. Será aberta a janela Firewall do Windows. Na janela Firewall do Windows, dê um

clique na guia Avançado. Será exibida a guia de Configurações Avançadas.

5. Na guia Avançado, dê um clique no botão Configurações..., ao lado da opção Log

de segurança.

6. Será exibida a janela Configurações de log, com as opções indicadas na Figura a

seguir:

Configurando opções do log de segurança do ICF

Nesta guia temos as seguintes opções:

Registrar em logo os pacotes eliminados: Marque esta opção para que todos os

pacotes ignorados/bloqueados que se originaram da rede privada ou da Internet,

sejam registrados no log de segurança do ICF.

Registrar em log as conexões bem-sucedidas: Marque esta opção para que

todas as conexões bem-sucedidas que se originaram da sua rede local ou da

Internet serão registradas no log de segurança.

Campo Nome: Neste campo definimos o nome do arquivo onde serão gravadas

as entradas do log de segurança. Por padrão é sugerido o seguinte caminho:

C:\Windows\pfirewall.log. Substitua C:\Windows pela pasta onde está instalado

o Windows XP, caso este tenha sido instalado em outra pasta.

Limite de tamanho: Define o tamanho máximo para o arquivo do log de

segurança. O tamanho máximo admitido para o arquivo de log é 32.767 quilo

bytes (KB). Quando o tamanho máximo for atingido, as entradas de log mais

antigas serão descartadas.

Page 130: Apostila TCP IP

130

7. Marque a opção Registrar em log os pacotes eliminados.

8. Marque a opção Registrar em log as conexões bem sucedidas.

9. Dê um clique no botão OK para aplicar as novas configurações.

10. Você estará de volta à guia Avançado da janela de Configurações do Firewall. Dê

um clique no botão OK para fechar esta janela.

11. Faça uma conexão com a Internet e acesse alguns sites, abra o Outlook e envie

algumas mensagens. Isto é para gerar tráfego através do Firewall, para que sejam

geradas entradas no log de segurança.

Agora vamos abrir o arquivo e ver os eventos que foram gravados no log de segurança.

12. Abra o bloco de Notas.

13. Abra o arquivo definido como arquivo de log, que por padrão é o arquivo

C:\Windows\pfirewall.log. Caso você tenha alterado esta opção, abra o respectivo

arquivo.

Na Figura a seguir temos uma visão de algumas entradas que foram gravadas no

arquivo de log:

O arquivo do log de segurança.

Observe que cada entrada segue um padrão definido, como por exemplo:

2002-03-18 23:07:57 DROP UDP 200.176.2.10 200.176.165.149 53 3013

379 - - - - - - -

Data Hora Ação Prot. End. IP origem End. IP Destino po pd

tamanho.

Page 131: Apostila TCP IP

131

Onde:

Prot. = Protocolo utilizado para comunicação.

po = Porta de origem.

pd = Porta de destino.

Nota: Estas informações são especialmente úteis para técnicos em segurança de redes,

os quais conhecem bem o protocolo TCP/IP, para que eles possam analisar a origem de

possíveis ataques. Para mais detalhes sobre Portas no Protocolo TCP/IP, consulte a

Parte 12 deste tutorial.

14. Feche o arquivo de log.

Nota: Para desabilitar o log de segurança, repita os passos de 1 a 6 e desmarque as

opções desejadas. Por exemplo, se você não deseja registrar um log das conexões bem

sucedidas, as quais não representam perigo de ataque, desmarque a opção Registrar em

log as conexões bem sucedidas.

Habilitando serviços que serão aceitos pelo ICF

Se você tem uma conexão permanente com a Internet e quer utilizar o seu computador

com Windows XP como um servidor Web (disponibilizando páginas), um servidor ftp

(disponibilizando arquivos para Download) ou outro tipo de serviço da Internet, você

terá que configurar o ICF para aceitar requisições para tais serviços. Lembre que, por

padrão, o ICF bloqueia todo tráfego vindo da Internet, que não seja resposta a uma

requisição da rede interna, enviada pelo usuário. Se você vai utilizar o seu computador

como um Servidor, o tráfego vindo de fora corresponderá as requisição dos usuários,

requisições estas que terão que passar pelo ICF para chegarem até o servidor e ser

respondidas.

Por padrão nenhum dos serviços está habilitado, o que garante uma maior segurança.

Para habilitar os serviços necessários, siga os seguintes passos:

1. Faça o logon com uma conta com Permissão de Administrador e abra o Painel de

controle: Iniciar -> Painel de controle.

2. Se você estiver no modo de exibição por Categoria dê um clique no link Alternar

para o modo de exibição clássico. Se você já estiver no modo de exibição clássico vá

para o próximo passo.

3. Todas as configurações do Firewall de Conexão são feitas através da opção

Firewall do Windows, do Painel de Controle. Dê um clique duplo na opção Firewall do

Windows.

4. Será aberta a janela Firewall do Windows. Se você tiver mais de uma conexão de

rede (por exemplo, uma conexão de rede local e uma conexão via Modem), você poderá

fazer as configurações de serviços, individualmente, em cada conexão. Na janela

Firewall do Windows, dê um clique na guia Avançado. No nosso exemplo, temos duas

conexões de Rede local (Conexão local e Conexão local 2) e o Firewall está habilitado

nas duas conexões. Para configurar os serviços de uma das conexões, clique na

Page 132: Apostila TCP IP

132

respectiva conexão para marcá-la e dê um clique no botão Configurações...,ao lado da

lista de conexões

5. Será exibida a janela Configurações avançadas. Dê um clique na guia Serviços,

será exibida a janela indicada na Figura a seguir:

Habilitando/desabilitando serviços para o ICF.

Para habilitar um determinado serviço, basta marcar a caixa de seleção ao lado do

respectivo serviço. Ao clicar em um determinado serviço, será aberta, automaticamente,

uma janela Configurações de serviço. Esta janela vem com o valor padrão para os

parâmetros de configuração do respectivo serviço. Somente altere estes valores se você

souber exatamente o que cada parâmetro significa, pois ao informar parâmetros

incorretamente, o serviço deixará de funcionar.

Você também pode utilizar o botão Adicionar..., para adicionar novos serviços, não

constantes na lista.

6. Após ter habilitados os serviços necessários, dê um clique no botão OK para

aplicar as alterações.

7. Você estará de volta à janela Propriedades da conexão. Dê um clique no botão

OK para fechá-la.

Configurações do protocolo ICMP para o Firewall

Page 133: Apostila TCP IP

133

Conforme descrito anteriormente, o protocolo ICMP é utilizado por uma série de

utilitários de rede, utilitários estes que são usados pelo Administrador da rede para fazer

testes de conexões e monitorar equipamentos e linhas de comunicação. Por padrão o

ICF bloqueia o tráfego ICMP. Nós podemos personalizar a maneira como o tráfego

ICMP será tratado pelo ICF. Podemos liberar todo o tráfego ICMP ou apenas

determinados tipos de uso, para funções específicas.

Para configurar o padrão de tráfego ICMP através do Firewall, siga os passos indicados

a seguir:

1. Faça o logon com uma conta com Permissão de Administrador e abra o Painel de

controle: Iniciar -> Painel de controle.

2. Se você estiver no modo de exibição por Categoria dê um clique no link Alternar

para o modo de exibição clássico. Se você já estiver no modo de exibição clássico vá

para o próximo passo.

3. Todas as configurações do Firewall de Conexão são feitas através da opção

Firewall do Windows, do Painel de Controle. Dê um clique duplo na opção Firewall do

Windows.

4. Será aberta a janela Firewall do Windows. Se você tiver mais de uma conexão de

rede (por exemplo, uma conexão de rede local e uma conexão via Modem), você poderá

fazer as configurações do protocolo ICMP, individualmente, em cada conexão. Na

janela Firewall do Windows, dê um clique na guia Avançado. No nosso exemplo, temos

duas conexões de Rede local (Conexão local e Conexão local 2) e o Firewall está

habilitado nas duas conexões. Para configurar as opções do protocolo ICMP de uma das

conexões, clique na respectiva conexão para marcá-la e dê um clique no botão

Configurações...,ao lado da lista de conexões

5. Será exibida a janela Configurações avançadas. Dê um clique na guia ICMP, será

exibida a janela indicada na Figura a seguir:

Page 134: Apostila TCP IP

134

Configurando o tráfego ICMP através do Firewall.

Na guia ICMP podemos marcar/desmarcar as seguintes opções:

Permitir solicitação de eco na entrada: Se esta opção estiver marcada, as

mensagens enviadas para este computador serão repetidas para o remetente. Por

exemplo, se alguém de fora der um ping para este computador, uma resposta

será enviada. Se esta opção estiver desmarcada o computador não responderá a

comandos como ping e tracert.

Permitir solicitação de carimbo de data/hora de entrada: Os dados enviados

para o computador podem ser confirmados por uma mensagem indicando

quando foram recebidos.

Permitir solicitação de máscara de entrada: A máscara de entrada é um

parâmetro de configuração do protocolo TCP/IP, parâmetro este que é utilizado

pelo protocolo para definir se duas máquinas que estão tentando se comunicar,

pertencem a mesma rede ou a redes diferentes (veja todos os detalhes na Parte

2). Se este parâmetro estiver marcado, o computador será capaz de fornecer

diversas informações sobre a rede a qual ele está conectado. Esta opção é

importante quando estamos utilizando programas de gerenciamento de rede que,

utilizam o protocolo ICMP para obter informações sobre os equipamentos da

rede.

Page 135: Apostila TCP IP

135

Permitir solicitação de roteador de entrada: Se esta opção estiver marcada o

computador será capaz de responder às solicitações sobre quais rotas ele

conhece.

Permitir destino de saída inacessível: Os dados enviados pela Internet, tendo

como destino este computador e, que não conseguiram ―chegar‖ até ele devido a

algum erro serão descartados e será exibida uma mensagem explicando o erro e

informando que o destino está inacessível. A mensagem será exibida no

computador de origem, o qual tentou enviar dados para este computador, dados

estes que não conseguiram chegar.

Permitir retardamento de origem de saída: Quando a capacidade de

processamento de dados de entrada do computador não for compatível com a

taxa de transmissão dos dados que estão chegando, os dados serão descartados e

será solicitado ao remetente que diminua a velocidade de transmissão.

Permitir problema no parâmetro de saída: Se este computador descartar

dados devido a um problema no cabeçalho dos pacotes de dados, ele enviará ao

remetente uma mensagem de erro informando que há um cabeçalho inválido.

Permitir hora de saída ultrapassada: Se o computador descartar uma

transmissão de dados por precisar de mais tempo para concluí-la, ele enviará ao

remetente uma mensagem informando que o tempo expirou.

Permitir redirecionamento: Os dados enviados pelo computador seguirão uma

rota alternativa, se uma estiver disponível, caso o caminho (rota) padrão tenha

sido alterado.

6. Marque as opções que forem necessárias, de acordo com as funções que estiver

desempenhando o computador.

7. Após ter marcado as opções necessárias, dê um clique no botão OK para aplicar

as alterações.

8. Você estará de volta à janela Propriedades do Firewall. Dê um clique no botão

OK para fechá-la.

Novidades do Firewall do Windows XP SP2

A primeira novidade é que o próprio nome mudou. Antes do SP2, o Firewall era

referenciado como ICF. A partir do SP2, passamos a utilizar a denominação Firewall do

Windows. Com o SP2 foram introduzidas uma série de modificações, bastante

significativas, as quais trouxeram muitas melhorias e uma maior segurança.

Novidade 01 - O Firewall do Windows é Ativado por padrão: Nas versões

anteriores, antes do SP2, o Firewall vinha desativado por padrão. O usuário é

que tinha que ativar o Firewall, manualmente, usando os passos descritos

anteriormente. Com o SP2, o Firewall do Windows é ativado por padrão, o que

oferece uma maior proteção, por padrão, contra ataques e invasões vindas da

Internet. Isso também ajuda a proteger qualquer conexão de rede que seja

Page 136: Apostila TCP IP

136

adicionada ao sistema, pois o Firewall será ativado, por padrão, para qualquer

nova conexão de rede que for adicionada.

Novidade 02 - Maior segurança no momento da inicialização: Antes do SP2,

quando o Windows XP era inicializado, havia um pequeno espaço de tempo

entre os serviços de rede serem inicializados e o firewall ser ativado, pequeno

período este, durante o qual o computador ficava vulnerável (sem a proteção do

Firewall). Com o SP2, durante a inicialização e o desligamento, o driver do

firewall usa uma regra chamada ―filtro de inicialização‖ para evitar ataques

durante esses breves períodos de tempo. Uma vez ligado e em execução, o

Firewall do Windows carrega as configurações personalizadas pelo usuário e

remove os filtros de inicialização. Isso torna o computador menos vulnerável a

ataques durante as operações de inicialização e desligamento.

Novidade 03 - Lista de exceções do Firewall do Windows: Talvez você veja

um alerta de segurança ao executar um programa que exija conexão e

comunicação bidirecional (enviar e receber dados), através de uma rede ou da

Internet. Por exemplo, muitos jogos multiusuários da Internet, usam portas de

comunicação que são bloqueadas pelo Firewall do Windows, por padrão.

Geralmente, são as mesmas portas usadas por vírus, trojans e pelos crackers para

tentar invadir e acessar indevidamente o computador do usuário. Para abrir uma

porta para um jogo, você pode adicioná-lo à lista de exceções do Firewall do

Windows. A porta será aberta somente quando o jogo estiver em andamento e

será fechada assim que ele terminar. Com isso, as portas utilizadas por estes

jogos e programas, somente ficarão abertas enquanto o jogo estiver em

execução. Este bloqueio garante um elevado grau de segurança contra ataques de

crackers, contra o seu computador.

Para adicionar um programa à lista de Exceções do Firewall do Windows, siga os

passos indicados a seguir:

1. Faça o logon como Administrador ou com uma conta com permissão de

Administrador.

2. Abra o Painel de Controle: Iniciar -> Painel de Controle.

3. Abra a opção Firewall do Windows.

4. Na guia Geral, você tem a opção ―Não permitir exceções‖. Se você marcar esta

opção, nenhuma exceção será permitida. Para o nosso exemplo, mantenha esta opção

desmarcada.

5. Clique na guia Exceções. Observe que, por padrão, já vem algumas exceções

ativadas, conforme indicado na Figura a seguir:

Page 137: Apostila TCP IP

137

Figura – Configurando Exceções no Firewall do Windows.

6. Para adicionar um novo programa, à lista de exceções, clique no botão Adicionar

programa. Será exibida a janela Adicionar um programa, com a lista de programas

instalados no seu computador. Clique no programa a ser adicionado e clique em OK.

Você estará de volta à guia Exceções, com o novo programa já adicionado.

7. Você pode habilitar ou desabilitar as exceções, para os programas adicionados à

lista de exceções. Para isso, basta marcar ou desmarcar a caixa de seleção, ao lado do

nome do programa.

8. Para remover um programa da lista de Exceções, clique no programa para

selecioná-lo e depois clique no botão Excluir. Será exibida uma mensagem de

confirmação. Clique em Sim, para confirmar a exclusão do programa, da lista de

exceções.

9. Você pode clicar em um programa da lista para marcá-lo e depois clicar no botão

Editar. Por exemplo, clique no item Compartilhamento de Arquivo e Impressora, para

marcá-lo e depois clique no botão Editar. Será aberta a janela Editar um serviço,

indicada na Figura a seguir, onde são exibidas as portas utilizadas pelo programa (no

caso o Serviço de Compartilhamento de Arquivo e Impressora). Se necessário, você

pode desabilitar uma ou mais das portas utilizadas por um programa/serviço. Só

Page 138: Apostila TCP IP

138

desabilite uma porta, se você tiver certeza do que está fazendo, com base na

documentação do programa, pois ao desabilitar uma ou mais portas, determinadas

funcionalidades do programa em questão, poderão deixar de funcionar corretamente.

Figura – Editando as portas de um programa/serviço.

10. Após ter feito as alterações desejadas, clique em OK para fechar a janela Editar

um Serviço. Você estará de volta à guia Exceções.

11. Você pode usar o botão Adicionar porta..., para adicionar uma porta específica

(tanto UDP quanto TCP), à lista de exceções do Firewall. Por exemplo, se você tem um

programa que precisa utilizar a porte TCP 2500, você pode usar o botão Adicionar

porta..., para adicionar esta porta à lista de exceções do Firewall do Windows. Com

isso, o programa que utiliza a porta TCP 2500, poderá funcionar, normalmente, mesmo

com o Firewall ativado. Observe que com isso, o Firewall do Windows nos oferece, ao

mesmo tempo, segurança e flexibilidade.

12. Após ter configurado as exceções desejadas, clique em OK para fechar a janela de

configurações do Firewall do Windows.

Novidade 04 - Modo operacional “Ativado sem exceções”: Este recurso

permite desativar facilmente todas as exceções na lista de exceções do Firewall

do Windows. Embora você precise delas para usar determinados programas, às

vezes é recomendável desativar todas as exceções para obter segurança máxima.

Por exemplo, se você usar seu computador no ponto de acesso de um aeroporto

ou em um cyber café, ele estará vulnerável a vírus e outras ameaças à segurança.

Configurando o Firewall do Windows para ―Ativado sem exceções‖ sempre que

usar o computador em um local público, você reduzirá os riscos Quando voltar a

usar o computador em uma configuração mais segura, você poderá habilitar a

lista de exceções novamente sem problemas.

Para habilitar o modo operacional ―Ativado sem exceções‖, siga os passos indicados a

seguir:

Page 139: Apostila TCP IP

139

1. Faça o logon como Administrador ou com uma conta com permissão de

Administrador.

2. Abra o Painel de Controle: Iniciar -> Painel de Controle.

3. Abra a opção Firewall do Windows.

4. Na guia Geral, marque a opção ―Não permitir exceções‖ e clique em OK.

5. Para desativar o modo operacional ―Ativado sem exceções‖, siga os passos de 1 a

3 novamente e, na guia Geral, desmarque a opção ―Não permitir exceções‖ e clique em

OK

Novidade 05 - Restaurar padrões: Com o tempo, ao adicionar programas ou

portas à lista de exceções do Firewall do Windows, é possível que ele seja

configurado indevidamente para aceitar tráfego de entrada não solicitado,

comprometendo a segurança do computador. Nas versões anteriores do Firewall

do Windows (chamado anteriormente de firewall de conexão com a Internet ou

ICF), não havia uma maneira prática e rápida de reverter para as configurações e

padrões originais. Esta opção permite restaurar o Firewall do Windows a suas

configurações padrão. Além disso, esses padrões podem ser modificados para

oferecer opções de configuração personalizadas.

Para restaurar as configurações Padrão do Firewall do Windows, siga os passos

indicados a seguir:

1. Faça o logon como Administrador ou com uma conta com permissão de

Administrador.

2. Abra o Painel de Controle: Iniciar -> Painel de Controle.

3. Abra a opção Firewall do Windows.

4. Clique na guia Avançado. Na guia Avançado, clique no botão Restaurar padrões,

indicado na Figura a seguir:

Page 140: Apostila TCP IP

140

Figura– A opção Restaurar padrões.

5. Será exibida uma mensagem de confirmação. Clique em Sim para restaurar as

configurações padrão do Firewall do Windows.

6. Você estará de volta à janela de configurações do Firewall. Clique em OK para

fechá-la.

Conclusão

Nesta parte do tutorial mostrei como funciona o serviço firewall do Windows XP,

conhecido como ICF – Internet Connection Firewall. O ICF apresenta funcionalidades

básicas e um nível de proteção satisfatório para usuários domésticos e de pequenas

redes. Para redes empresarias, sem nenhuma dúvida, faz-se necessária a utilização de

produtos projetados especificamente para proteção e desempenho. Um destes produtos é

o Internet Security and Acceleration Server – ISA Server. Maiores detalhes no seguinte

endereço: http://www.microsoft.com/isaserver

Ao fazer uma conexão com a Internet estamos em contato com o mundo; e o mundo em

contato conosco. A Internet é uma ―via de mão dupla‖, ou seja, podemos acessar

recursos em servidores do mundo inteiro, porém o nosso computador também pode ser

Page 141: Apostila TCP IP

141

acessado por pessoas do mundo inteiro, se não tomarmos alguns cuidados básicos com

segurança.

Para nos proteger contra estes ―perigos digitais‖, aprendemos a habilitar e configurar o

ICF – Internet Connector Firewall. Aprendemos sobre o conceito de Firewall e como

configurar o ICF.

Page 142: Apostila TCP IP

142

Introdução ao IPSec

Introdução:

Esta é a décima oitava parte do Tutorial de TCP/IP. Na Parte 1 tratei dos aspectos

básicos do protocolo TCP/IP. Na Parte 2 falei sobre cálculos binários, um importante

tópico para entender sobre redes, máscara de sub-rede e roteamento. Na Parte 3 falei

sobre Classes de endereços, na Parte 4 fiz uma introdução ao roteamento e na Parte 5

apresentei mais alguns exemplos e análises de como funciona o roteamento e na Parte 6

falei sobre a Tabela de Roteamento. Na Parte 7 tratei sobre a divisão de uma rede em

sub-redes, conceito conhecido como subnetting. Na Parte 8 fiz uma apresentação de um

dos serviços mais utilizados pelo TCP/IP, que é o Domain Name System: DNS. O DNS

é o serviço de resolução de nomes usado em todas as redes TCP/IP, inclusive pela

Internet que, sem dúvidas, é a maior rede TCP/IP existente. Na Parte 9 fiz uma

introdução ao serviço Dynamic Host Configuration Protocol – DHCP. Na Parte 10 fiz

uma introdução ao serviço Windows Internet Name Services – WINS. Na Parte 11 falei

sobre os protocolos TCP, UDP e sobre portas de comunicação. Na Parte 12, mostrei

como são efetuadas as configurações de portas em diversos aplicativos que você utiliza

e os comandos do Windows 2000/XP/2003 utilizados para exibir informações sobre

portas de comunicação. Na Parte 13 falei sobre a instalação e a configuração do

protocolo TCP/IP. Na Parte 14 fiz uma introdução sobre o protocolo de roteamento

dinâmico RIP e na Parte 15 foi a vez de fazer a introdução a um outro protocolo de

roteamento dinâmico, o OSPF. Na Parte 16 você aprendeu sobre um recurso bem útil: O

compartilhamento da conexão Internet, oficialmente conhecida como ICS – Internet

Connection Sharing. Este recurso é útil quando você tem uma pequena rede, não mais

do que cinco máquinas, conectadas em rede, todas com o protocolo TCP/IP instalado e

uma das máquinas tem conexão com a Internet. Você pode habilitar o ICS no

computador que tem a conexão com a Internet. Com isso os demais computadores da

rede também passarão a ter acesso à Internet. Na Parte 17, você aprendeu a utilizar o

IFC – Internet Firewall Connection (Firewall de Conexão com a Internet). O IFC faz

parte do Windows XP e do Windows Server 2003, não estando disponível no Windows

2000. O IFC tem como objetivo proteger o acesso do usuário contra “ataques” e

“perigos” vindos da Internet

Nesta décima oitava parte, farei uma apresentação sobre o protocolo IPSec. O IPSec faz

parte do Windows 2000, Windows XP, Windows Server 2003, Windows Vista e

Longhorn Server. O IPSec pode ser utilizado para criar um canal de comunicação

seguro, onde todos os dados que são trocados entre os computadores habilitados ao

IPSec, são criptografados.

O protocolo IPSec

O IPSec é um conjunto de padrões utilizados para garantir uma comunicação segura

entre dois computadores, mesmo que as informações estejam sendo enviadas através de

um meio não seguro, como por exemplo a Internet. Observe que esta definição é

parecida com a definição de VPN – Virtual Private Network. Por isso que a combinação

L2TP/IPSec é uma das opções mais indicadas para a criação de conexões do tipo VPN.

Por exemplo, vamos imaginar uma rede local de uma empresa, onde você quer garantir

a segurança das informações que são trocadas entre a estação de trabalho do Presidente

Page 143: Apostila TCP IP

143

da empresa e as estações de trabalho da diretoria. Ou seja, se um dos diretores acessar

um arquivo em uma pasta compartilhada, no computador do Presidente da empresa,

você quer garantir que todos os dados enviados através da rede sejam criptografados,

para garantir um nível adicional de segurança. Este é um exemplo típico onde a

utilização do protocolo IPSec é recomendada. Ou seja, você pode configurar o

computador do Presidente e os computadores dos diretores, para que somente aceitem

comunicação via IPSec. Com isso estes computadores poderão trocar informações entre

si, mas outros usuários, que não estejam habilitados ao IPSec, não poderão se

comunicar com os computadores com IPSec habilitado.

Uma introdução ao protocolo IPSec

O IPSec é baseado em um modelo ponto-a-ponto, no qual dois computadores, para

trocar informações de maneira segura, usando IPSec, devem ―concordar‖ com um

conjunto comum de regras e definições do IPSec. Com o uso do IPSEc e das

tecnologias associadas, os dois computadores são capazes de se autenticar mutuamente

e manter uma comunicação segura, com dados criptografados, mesmo usando um meio

não seguro, como a Internet.

O uso do protocolo IPSec apresenta funcionalidades importantes, quando existe uma

necessidade de grande segurança na comunicação entre dois computadores. A seguir

apresento as principais destas características:

Uma proteção agressiva contra ataques à rede privada e à Internet

mantendo a facilidade de uso. Ao mesmo tempo em que fornece uma proteção

efetiva contra ataques e tentativas de captura dos dados, o IPSec é fácil de

configurar, com o uso de políticas de segurança.

Um conjunto de serviços de proteção baseados em criptografia e protocolos

de segurança. A criptografia é um dos elementos principais do IPSec, para

garantir que os dados não possam ser acessados por pessoas não autorizadas.

Neste ponto é importante salientar que existem diferentes formas de uso do

IPSec com o Windows 2000. Uma delas é usando o IPSec padrão, conforme

definido pelos padrões do IETF. Este uso é conhecido como uso do IPSec no

modo de túnel. Já uma implementação específica da Microsoft, usa o IPSec em

conjunto com o protocolo L2TP, sendo, nesta implementação, o protocolo L2TP

o responsável pela criptografia dos dados. Este modo é conhecido como modo

de transporte. No modo de túnel somente é possível usar o IPSec em redes

baseadas em IP. Já no modo de transporte, o L2TP é um protocolo de nível de

transporte, por isso é possível usar IPSec/L2TP para transportar não apenas

pacotes IP, mas também IPX, NetBEUI e assim por diante.

Segurança do começo ao fim. Os únicos computadores na comunicação que

devem saber sobre a proteção de IPSec são o remetente e o receptor, ou seja, o

meio através do qual os pacotes são enviados não precisa estar habilitado ao

IPSec. Observem que este é o conceito de enviar informações de uma maneira

segura, usando um meio não seguro. O exemplo típico é a criação de VPNs,

usando a Internet. A Internet em si, baseada apenas no protocolo TCP/IP não é

um meio seguro, uma vez que, por padrão, os dados não são criptografados.

Porém adicionando técnicas de criptografia e tunelamento, disponíveis com o

Page 144: Apostila TCP IP

144

uso do IPSec com o L2TP, podemos criar túneis seguros, através de um meio

não seguro. É o conceito de VPN em sua essência.

A capacidade de proteger a comunicação entre grupos de trabalho,

computadores de rede local, clientes e servidores de domínio, escritórios de

filiais que podem ser fisicamente remotos, extranets, clientes móveis e

administração remota de computadores.

Configuração baseada em diretivas de segurança

Os métodos de segurança mais fortes que são baseados em criptografia têm a

capacidade de aumentar muito a sobrecarga administrativa. A implementação do IPSec

no Windows 2000 Server e no Windows Server 2003 evita esse problema

implementando a administração do IPSec com base em diretivas de segurança,

configuradas via GPOs.

Nota: Para detalhes completos sobre Group Policy Objects (GPOs), consulte o livro:

Windows Server 2003 – Curso Completo, 1568 páginas, de minha autoria, publicado

pela Axcel Books. Para comprar este livro com um excelente desconto e ainda ganhar

cursos de brinde, acesse o seguinte endereço: http://www.juliobattisti.com.br/clube.htm

Em vez de aplicativos ou sistemas operacionais, você usa as diretivas para configurar o

IPSec. Como as configurações são aplicadas via GPOs, o Administrador pode aplicar as

configurações de IPSec a todos os computadores de um domínio, site ou unidade

organizacional. O Windows 2000 e o Windows Server 2003 fornecem um console de

gerenciamento central, o Gerenciamento de diretivas de segurança IP, para definir e

gerenciar as diretivas de IPSec. As diretivas podem ser configuradas para fornecer

níveis variáveis de proteção para a maioria dos tipos de tráfego na maioria das redes

existentes, com a aplicação de filtros e regras personalizadas.

Existe um conjunto de diretivas básicas, para habilitar o IPSec, que determinam como

será efetuada a comunicação entre os computadores com o IPSec habilitado. A seguir

descrevo, resumidamente, estas diretivas padrão, disponíveis no Windows 2000 Server

e no Windows Server 2003:

Server (Request Security): Ao habilitar esta diretiva, também serão aceitas

comunicações não seguras, porém para estabelecer uma conexão segura, os

clientes devem utilizar um método de autenticação aceito pelo servidor. Com

esta política serão aceitas comunicações não seguras (não utilizando IPSec), se o

outro lado não suportar o uso do IPSec. Ou seja, quando o cliente tenta se

comunicar com o servidor, o Servidor tenta estabelecer uma comunicação

usando IPSec. Se o cliente não estiver configurado para utilizar o IPSec, a

comunicação será estabelecida mesmo assim, sem a utilização de IPSec.

Client (Respond only): Esta política é indicada para computadores da rede

interna, da Intranet da empresa. Ao iniciar a comunicação com outros

computadores, não será utilizado o IPSec. Contudo se o outro computador exigir

o uso do IPSec, a comunicação via IPSec será estabelecida.

Security Server (Request Security): Aceita um início de comunicação não

seguro, mas requer que os clientes estabeleçam uma comunicação segura,

Page 145: Apostila TCP IP

145

usando IPSec e um dos métodos aceitos pelo servidor. Se o cliente não puder

atender estas condições, a comunicação não será estabelecida.

Uma maneira mais simples de fornecer proteção dos dados

A implementação da IPSec no nível de transporte IP (Camada de rede, nível 3) permite

um alto nível de proteção com pouca sobrecarga. A implementação do IPSec não

requer nenhuma alteração nos aplicativos ou sistemas operacionais existentes,

basta a configuração das diretivas de segurança, para que o computador passe a

usar o IPSec. Automaticamente, todos os programas instalados no computador,

passarão a utilizar o IPSec para troca de informações com outros computadores

também habilitados ao IPSec. Isso é bem mais fácil de implementar e de

administrar do que ter que configurar a criptografia e segurança em cada

aplicativo ou serviço.

Outros mecanismos de segurança que operam sobre a camada de rede 3, como Secure

Sockets Layer (SSL), só fornecem segurança a aplicativos habilitados ao SSL, como os

navegadores da Web. Você deve modificar todos os outros aplicativos para proteger as

comunicações com SSL, ou seja, os programas tem que ser alterados para poderem

utilizar o SSL. Os mecanismos de segurança que operam abaixo da camada de rede 3,

como criptografia de camada de vínculo, só protegem o link, mas não necessariamente

todos os links ao longo do caminho de dados. Isso torna a criptografia da camada de

links inadequada para proteção de dados do princípio ao fim na Internet ou na Intranet

da empresa.

A implementação do IPSec na Camada de rede 3 fornece proteção para todos os

protocolos IP e de camada superior no conjunto de protocolos TCP/IP, como TCP,

UDP, ICMP, etc. A principal vantagem de informações seguras nessa camada é que

todos os aplicativos e serviços que usam IP para transporte de dados podem ser

protegidos com IPSec, sem nenhuma modificação nos aplicativos ou serviços (para

proteger protocolos diferentes de IP, os pacotes devem ser encapsulados por IP).

Características e componentes do protocolo IPSec

Quando o IPSec é habilitado e dois computadores passam a se comunicar usando IPSec,

algumas modificações são efetuadas na maneira como é feita a troca de informações

entre estes computadores.

A primeira mudança é que o protocolo IPSec adiciona um cabeçalho (Header) em todos

os pacotes. Este cabeçalho é tecnicamente conhecido como AH (Authentication header).

Este cabeçalho desempenha três importantes funções:

É utilizado para a autenticação entre os computadores que se comunicarão

usando IPSec.

É utilizado para verificar a integridade dos dados, ou seja, para verificar se os

dados não foram alterados ou corrompidos durante o transporte.

Impede ataques do tipo repetição, onde pacotes IPSec são capturados e em

seguida reenviados ao destino, em uma tentativa de ter acesso ao computador de

Page 146: Apostila TCP IP

146

destino. O cabeçalho de autenticação impede este tipo de ataque, pois contém

informações que permitem ao destinatário identificar se um pacote já foi

entregue ou não. No cabeçalho AH estão, dentre outras, as seguintes

informações: A identificação do próximo cabeçalho, o tamanho do cabeçalho,

parâmetros de segurança, número de seqüência e autenticação de dados (contém

informações para a verificação da integridade de dados).

Um detalhe importante a salientar é que o cabeçalho de identificação não é

criptografado e não é utilizado para criptografar dados. Conforme o nome sugere ele

contém informações para a autenticação e para verificação da integridade dos dados.

Mas além da autenticação mútua e da verificação da integridade dos dados é preciso

garantir a confidencialidade dos dados, ou seja, se os pacotes forem capturados é

importante que não possam ser lidos a não ser pelo destinatário. A confidencialidade

garante que os dados somente sejam revelados para os verdadeiros destinatários.

Para garantir a confidencialidade, o IPSec usa pacotes no formato Encapsulating

Security Payload (ESP). Os dados do pacote são criptografados antes da transmissão,

garantindo que os dados não possam ser lidos durante a transmissão mesmo que o

pacote seja monitorado ou interceptado por um invasor. Apenas o computador com a

chave de criptografia compartilhada será capaz de interpretar ou modificar os dados. Os

algoritmos United States Data Encryption Standard (DES padrão dos Estados Unidos),

DES (Data Encryption Standard) e 3DES (Triple Data Encryption Standard) são usados

para oferecer a confidencialidade da negociação de segurança e do intercâmbio de dados

de aplicativo. O Cipher Block Chaining (CBC) é usado para ocultar padrões de blocos

de dados idênticos dentro de um pacote sem aumentar o tamanho dos dados após a

criptografia. Os padrões repetidos podem comprometer a segurança fornecendo uma

pista que um invasor pode usar para tentar descobrir a chave de criptografia. Um vetor

de inicialização (um número inicial aleatório) é usado como o primeiro bloco aleatório

para criptografar e descriptografar um bloco de dados. Diferentes blocos aleatórios são

usados junto com a chave secreta para criptografar cada bloco. Isso garante que

conjuntos idênticos de dados não protegidos sejam transformados em conjuntos

exclusivos de dados criptografados.

Usando as tecnologias descritas, o protocolo IPSec apresenta as seguintes características

e funcionalidades:

A configuração e habilitação do IPSec é baseada no uso de Polices: Não

existe outra maneira de criar, configurar e habilitar o IPSec a não ser com o uso

de uma GPO. Isso facilita a configuração e aplicação do IPSec a grupos de

computadores, como por exemplo, todos os computadores do domínio ou de um

site ou de uma unidade organizacional.

Quando dois computadores vão trocar dados usando IPSec, a primeira etapa é

fazer a autenticação mútua entre os dois computadores. Nenhuma troca de dados

é efetuada, até que a autenticação mútua tenha sido efetuada com sucesso.

O IPSec utiliza o protocolo Kerberos para autenticação dos usuários.

Page 147: Apostila TCP IP

147

Quando dois computadores vão se comunicar via IPSec, é criada uma SA

(Securtiy Association – associação de segurança) entre os computadores. Na SA

estão definidas as regras de comunicação, os filtros a serem aplicados e o

conjunto de chaves que será utilizado para criptografia e autenticação.

O protocolo IPSec pode utilizar certificados de chave pública para confiar em

computadores que utilizam outros sistemas operacionais, como por exemplo o

Linux.

O IPSec fornece suporte ao pré-compartilhamento de uma chave de segurança

(preshared key support). Em situações onde não está disponível o uso do

protocolo Kerberos, uma chave, como por exemplo a definição de uma senha,

pode ser configurada ao criar a sessão IPSec. Esta chave tem que ser informada

em todos os computadores que irão trocar dados de forma segura, usando IPSec.

Conforme descrito anteriormente, o uso do IPSec é absolutamente transparente

para os usuários e aplicações. O computador é que é configurado para usar o

IPSec. Os programas instalados neste computador passam a usar o IPSec, sem

que nenhuma modificação tenha que ser efetuada. Os dados são interceptados

pelo sistema operacional e a comunicação é feita usando IPSec, sem que os

usuários tenha que fazer quaisquer configurações adicionais.

Conclusão

Nesta parte do tutorial fiz uma breve apresentação do protocolo IPSec, o qual já é parte

integrante do Windows 2000, Windows XP e Windows Server 2003. Inicialmente

apresentei a fundamentação teórica sobre IPSec, para que o leitor possa entender

exatamente o que é o IPSec e quando utilizá-lo. Mostrei que este protocolo é

configurado e habilitado através do uso de políticas de segurança e que existem

diferentes modelos de políticas de segurança disponíveis no Windows 2000 Server e/ou

Windows Server 2003.

O IPSec é um conjunto de padrões utilizados para garantir uma comunicação segura

entre dois computadores, mesmo que as informações estejam sendo enviadas através de

um meio não seguro, como por exemplo a Internet. Observe que esta definição é

parecida com a definição de VPN. Por isso que a combinação L2TP/IPSec é uma das

opções para a criação de conexões do tipo VPN.

O IPSec é baseado em um modelo ponto-a-ponto, no qual dois computadores, para

trocar informações de maneira segura, usando IPSec, devem ―concordar‖ com um

conjunto comum de regras e definições do IPSec. Com o uso do IPSEc e das

tecnologias associadas, os dois computadores são capazes de se autenticar mutuamente

e manter uma comunicação segura, com dados criptografados, mesmo usando um meio

não seguro, como a Internet.

Page 148: Apostila TCP IP

148

Certificados Digitais e Segurança

Esta é a décima nona parte do Tutorial de TCP/IP. Na Parte 1 tratei dos aspectos básicos

do protocolo TCP/IP. Na Parte 2 falei sobre cálculos binários, um importante tópico

para entender sobre redes, máscara de sub-rede e roteamento. Na Parte 3 falei sobre

Classes de endereços, na Parte 4 fiz uma introdução ao roteamento e na Parte 5

apresentei mais alguns exemplos e análises de como funciona o roteamento e na Parte 6

falei sobre a Tabela de Roteamento. Na Parte 7 tratei sobre a divisão de uma rede em

sub-redes, conceito conhecido como subnetting. Na Parte 8 fiz uma apresentação de um

dos serviços mais utilizados pelo TCP/IP, que é o Domain Name System: DNS. O DNS

é o serviço de resolução de nomes usado em todas as redes TCP/IP, inclusive pela

Internet que, sem dúvidas, é a maior rede TCP/IP existente. Na Parte 9 fiz uma

introdução ao serviço Dynamic Host Configuration Protocol – DHCP. Na Parte 10 fiz

uma introdução ao serviço Windows Internet Name Services – WINS. Na Parte 11 falei

sobre os protocolos TCP, UDP e sobre portas de comunicação. Na Parte 12, mostrei

como são efetuadas as configurações de portas em diversos aplicativos que você utiliza

e os comandos do Windows 2000/XP/2003 utilizados para exibir informações sobre

portas de comunicação. Na Parte 13 falei sobre a instalação e a configuração do

protocolo TCP/IP. Na Parte 14 fiz uma introdução sobre o protocolo de roteamento

dinâmico RIP e na Parte 15 foi a vez de fazer a introdução a outro protocolo de

roteamento dinâmico, o OSPF. Na Parte 16 você aprendeu sobre um recurso bem útil: O

compartilhamento da conexão Internet, oficialmente conhecida como ICS – Internet

Connection Sharing. Este recurso é útil quando você tem uma pequena rede, não mais

do que cinco máquinas, conectadas em rede, todas com o protocolo TCP/IP instalado e

uma das máquinas tem conexão com a Internet. Você pode habilitar o ICS no

computador que tem a conexão com a Internet. Com isso os demais computadores da

rede também passarão a ter acesso à Internet. Na Parte 17, você aprendeu a utilizar o

IFC – Internet Firewall Connection (Firewall de Conexão com a Internet). O IFC faz

parte do Windows XP e do Windows Server 2003, não estando disponível no Windows

2000. O IFC tem como objetivo proteger o acesso do usuário contra “ataques” e

“perigos” vindos da Internet. Na Parte 18 fiz uma apresentação sobre o protocolo

IPSec. O IPSec faz parte do Windows 2000, Windows XP e Windows Server 2003. O

IPSec pode ser utilizado para criar um canal de comunicação seguro, onde todos os

dados que são trocados entre os computadores habilitados ao IPSec, são criptografados.

Nesta décima nona parte, farei uma apresentação sobre o conceito de PKI – Public Key

Infrastructure e Certificados Digitais. O Windows 2000 Server e também o Windows

Server 2003 disponibilizam serviços para a emissão, gerenciamento e revogação de

Certificados Digitais. Você também entenderá o papel dos Certificados Digitais em

relação à segurança das informações.

Apresentarei o conceito de PKI - Public Key Infrastructure (Infraestrutura de chave

pública). Você verá que uma Public Key Infrastructure (Infraestrutura de chave

pública), abreviada simplesmente como PKI, nada mais é do que uma infraestrutura de

segurança baseada em certificados digitais, em autoridades certificadores (CA –

Certificate Authorities - que emitem e revogam os certificados) e autoridades de

registro, as quais fazem a verificação da autenticidade de todas as estruturas envolvidas

em uma PKI.

Page 149: Apostila TCP IP

149

Nesta parte do tutorial você entenderá o que vem a ser uma PKI, aprenderá sobre os

conceitos básicos de uso de um par de chaves para fazer a criptografia e proteção dos

dados. Também mostrarei qual o papel do Microsoft Certification Service, que é o

servidor da Microsoft para a emissão e controle de certificados digitais, serviço este

disponível no Windows 2000 Server e também no Windows Server 2003. Com o uso do

Microsoft Certificate Services, a empresa pode montar a sua própria infraestrutura de

certificados digitais, sem depender de uma autoridade certificadora externa.

Nota: Para aprender a instalar, configurar e a administrar o Microsoft Certificate

Services, consulte o Capítulo 7 do meu livro: Manual de Estudos Para o Exame 70-216,

712 páginas.

O uso de Certificados e uma infra-estrutura de chave pública é uma alternativa de baixo

custo, para ambientes que precisam de níveis de segurança elevados, como por exemplo

departamentos de pesquisa de novos produtos e tecnologias, ou órgãos governamentais

estratégicos, como os órgãos de defesa e de segurança. Com o uso do Microsoft

Certificate Services é possível criar a administrar uma estrutura de segurança baseada

em Certificados Digitais.

Microsoft Certificate Services e PKI

Neste tópico apresentarei o conceito de PKI e de criptografia baseada em um par de

chaves de criptografia: uma chave pública e uma chave privada. Você verá que os

Certificados digitais tem papel fundamental em uma estrutura de PKI. Neste tópico você

também aprenderá a instalar e a configurar o Microsoft Certificate Services.

Uma introdução sobre Certificados e PKI – Public Key Infrastructure

Segurança mais do que nunca é um assunto sempre em pauta. De tempos em tempos um

novo vírus causa pânico na Internet, novos tipos de ataques são notificados, sites ficam

indisponíveis devido a ataques de hackers, problemas com a segurança no acesso a

dados que facilitam a vida de fraudadores e por aí vai.

No Windows 2000, Windows XP e no Windows Server 2003 existem diversas maneiras

de proteger seus dados: permissões NTFS, criptografia, uso do NAT para acesso à

Internet, uso de Group Policy Objects, uso de diretivas de segurança, direitos de

usuários e por aí vai. Neste tópico, abordarei mais um assunto relacionado com

segurança: Certificados Digitais.

Uma pergunta que o amigo leitor poderia fazer é a seguinte: ―Por que existem tantos

ataques de segurança e por que os hackers parecem conhecer tão bem os sistemas das

empresas?‖.

Um dos motivos é porque hoje o mundo inteiro (literalmente) utiliza o mesmo protocolo

para comunicação e troca de dados: TCP/IP. Como o TCP/IP é amplamente conhecido e

documentado, esta informação também é utilizada por hackers, para tentar descobrir

falhas no próprio protocolo, falhas estas que permitam quebra de segurança dos

sistemas informatizados das empresas. Evidentemente que, na maioria das vezes, os

ataques são bem sucedidos, porque os programas foram instalados com as opções

Page 150: Apostila TCP IP

150

padrão (out of the Box – como saíram da caixa (a tradução é por minha conta e risco)),

sem se preocupar em ajustar devidamente as configurações de segurança.

Nota: Um dos pontos onde o Windows Server 2003 melhorou, e muito, em relação ao

Windows 2000 Server foi nas configurações de segurança out of the Box. Ou seja, as

configurações padrão de segurança do Windows Server 2003, são bem mais severas,

restringem bem mais o acesso do que as configurações padrão de segurança do

Windows 2000 Server. A idéia é simples mas muito eficiente. Por padrão, o nível

mínimo de acesso, necessário ao funcionamento do recurso. Se houver necessidade de

modificações nas configurações de segurança, estas poderão ser feitas pelo

administrador.

Com o uso do TCP/IP como protocolo de comunicação, os dados não são protegidos por

padrão, isto é, não são criptografados. Ou seja, se um hacker interceptar uma

transmissão, terá acesso aos dados sem maiores problemas, uma vez que não é usada

criptografia, por padrão. Claro que para muitas situações, a criptografia e outros

recursos de segurança são perfeitamente dispensáveis. Por exemplo, quando você acessa

o site de uma empresa para obter informações gerais sobre a empresa. Estas

informações são de domínio público (afinal estão no site da empresa) e não há

necessidade de criptografá-las. Agora quando você faz uma compra pela Internet,

usando o seu cartão de crédito, ou quando você faz transações bancárias usando o site

do seu Banco, a coisa muda completamente de figura. Ou seja, você quer o máximo de

segurança possível. De maneira alguma você gostaria que alguém pudesse interceptar o

seu número de conta, agência e senha.

Inicialmente criou-se um método de criptografia, onde os dados eram criptografados

usando uma determinada chave de criptografia. A chave é um código com um

determinado número de bits. Usa-se este código, juntamente com operações lógicas,

para ―embaralhar‖, ou seja, criptografar os dados. A seqüência de operações lógicas que

é realizada com os dados, usando a chave de criptografia, é definida pelo algoritmo de

criptografia. Em seguida os dados e a chave de criptografia são enviados para o

destinatário. O destinatário recebe os dados e a chave de criptografia e utiliza esta chave

para ―descriptografar‖ os dados. Um método bem seguro, não?

Não. Este método tem dois problemas principais, os quais são descritos a seguir:

1. A chave de criptografia é enviada junto com os dados: Com isso, se um hacker

interceptar os dados, terá também acesso a chave de criptografia. Usando a chave (os

algoritmos de criptografia são de domínio público, a segurança é baseada normalmente

no tamanho da chave. Usam-se chaves com um grande número de bits, para que seja

difícil descobrir a chave que está sendo utilizada) o hacker poderá descriptografar os

dados e ter acesso ao conteúdo da mensagem. Pior, o hacker poderia alterar a mensagem

e enviá-la, alterada, para o destinatário, o qual não teria como saber que a mensagem foi

alterada.

2. No final do parágrafo anterior eu descrevo o segundo problema com este método:

ele não permite a verificação da identidade de quem envio a mensagem. Ou seja,

um hacker interceptou a mensagem, usou a chave para descriptografá-la, alterou a

mensagem e a enviou para o destinatário. O destinatário recebe a mensagem e não tem

como verificar se a mensagem veio do emissor verdadeiro ou veio de um hacker. Com

Page 151: Apostila TCP IP

151

este método não é possível verificar e garantir que o emissor seja quem ele diz ser. Não

há como verificar a identidade do emissor.

Vejam que somente o uso da criptografia, baseada em uma chave privada (chave

enviada junto com a mensagem), não é tão seguro como pode parecer. Para solucionar

esta questão é que surgiram os Certificados Digitais, com os quais é possível

implementar uma infra-estrutura conhecida como PKI - Public Key Infrastructure

(Infraestrutura de chave pública). Esta infra-estrutura é baseada no uso de certificados

digitais e de um par de chaves: uma chave pública e uma chave privada. A seguir

descrevo os princípios básicos de um infra-estrutura baseada em chaves pública e

privada, para que você possa entender como esta infra-estrutura resolve os dois

problemas apontados no método anterior.

Em uma rede que usa PKI, um Certificado Digital é criado para cada usuário. O

Certificado Digital fica associado com a conta do usuário no Active Directory. Para

cada usuário é criado um par de chaves: uma chave pública e uma chave privada. A

chave pública fica disponível no Active Directory e a chave privada fica com o usuário.

O mais comum é a chave privada ficar gravada no Certificado Digital do usuário, em

um disquete que fica com o usuário ou, mais comum ainda, em um Smart Card. Agora

vamos entender como funciona a criptografia baseada em um par de chaves: uma

pública e outra privada.

Dados que são criptografados com uma das chaves, somente poderão ser

descriptografados com a outra chave. Por exemplo, se você criptografar dados com a

chave pública do usuário jsilva, estes dados somente poderão ser descriptografados com

a chave privada do usuário jsilva.

Vamos imaginar que o usuário jsilva precisa enviar dados para o usuário maria. Os

dados são criptografados com a chave pública do usuário Maria – chave pública do

destinatário. Com a infraestrutura de PKI, as chaves públicas ficam disponíveis para

serem acessadas por quaisquer usuário. A chave pública fica gravada no Certificado

Digital do usuário e a lista de Certificados Digitais fica publicada para acesso em um

servidor de certificados digitais (este é o papel do Microsoft Certificate Services, ou

seja, emitir, publicar, dar acesso a e revogar certificados digitais para os usuários).

A chave pública do usuário maria é utilizada pelo usuário jsilva para criptografar os

dados, antes de enviá-los para o usuário maria. Como os dados foram criptografados

com a chave pública do usuário maria, a pergunta é: qual a única chave que poderá

descriptografar estes dados? A chave privada do usuário maria, a qual somente o

usuário maria tem acesso. Com este método, quando o usuário maria recebe os dados,

ele utilizará a sua chave privada para descriptografá-los. Se um hacker interceptar os

dados, ele não conseguirá descriptografá-los, pois não tem acesso a chave privada do

usuário maria. Observe que com este método, a chave que será utilizada para

descriptografar os dados, não é enviada junto com a mensagem. Além disso, a

mensagem é criptografada de tal maneira que somente o destinatário é capaz de

descriptografá-la, ou melhor, a chave privada do destinatário. Como a mensagem é

criptografada com a chave pública do destinatário, somente o próprio destinatário (que é

quem tem acesso a sua chave privada), será capaz de descriptografar a mensagem.

Page 152: Apostila TCP IP

152

Observe que com este método é solucionado o problema de ter que enviar a chave de

criptografia junto com a mensagem. O problema de verificação da identidade, de ter

certeza que o remetente é quem diz realmente ser, é solucionado com o uso de

Certificados digitais. De uma maneira simples, podemos resumir uma PKI como sendo

uma infra-estrutura de segurança, baseada no uso de um par de chaves (uma pública e

uma privada) e de Certificados Digitais.

Um pouco sobre Certificados Digitais

De uma maneira simples, o Certificado Digital é a versão eletrônica da sua identificação

de usuário na rede (usuário e senha). O Certificado Digital é como se fosse a “carteira

de identidade” do usuário na rede. No Windows 2000 Server e no Windows Server

2003, o certificado digital do usuário também é conhecido (na documentação oficial),

como um Certificado de chave pública, uma vez que uma das informações gravadas no

certificado digital do usuário é justamente a sua chave pública.

Um certificado de chave pública, geralmente chamado somente de certificado, é uma

declaração assinada digitalmente que vincula o valor de uma chave pública à identidade

da pessoa (conta do usuário no Active Directory), dispositivo ou serviço que contém a

chave privada correspondente.

Os Certificados Digitais podem ser emitidos para uma série de funções, tais como

autenticação de usuário na Internet, autenticação de um servidor Web, correio eletrônico

seguro (S/MIME), IPSec, para utilização com o protocolo Transaction Layer Security

(TLS, segurança de camada de transação) e assinatura de códigos (por exemplo, todos

os programas desenvolvidos pela Microsoft são assinados, digitalmente, com o

Certificado digital da Microsoft. O Windows 2000 Server pode ser configurado para

não instalar drives ou programas que não estejam assinados digitalmente ou cujos

certificados com os quis foram assinados, não possam ser verificados quanto a sua

autenticidade).

Os certificados digitais tem que ser emitidos por uma Autoridade Certificadora (CA –

Certificate Authority). Uma opção é usar uma autoridade certificadora externa, como

por exemplo a Veri Sign, que é uma empresa especializada em segurança e em

certificação digital (www.verisign.com). Com o Windows 2000 Server (e também com

o Windows Server 2003), está disponível o Microsoft Certificate Services, que é um

servidor que permite criar uma autoridade certificadora na própria rede da empresa, sem

ter que fazer uso de uma entidade certificadora externa. Ao utilizar o Certificate

Services para a emissão e gerenciamento de certificados, os certificados digitais poderão

ser utilizados pelos usuários, para fazer o logon na rede. Os certificados também são

emitidos de uma autoridade de certificação para outra a fim de estabelecer uma

hierarquia de certificação. Usando o Certificate Services você poderá criar uma

hierarquia de certificação na rede da empresa.

A maioria dos certificados em uso hoje em dia são baseados no padrão X.509. Esta é a

tecnologia fundamental usada na public key infrastructure (PKI) do Windows 2000 e do

Windows Server 2003.

Normalmente, os certificados contêm as seguintes informações:

Page 153: Apostila TCP IP

153

Chave pública do usuário

Informações da identificação do usuário (como o nome e o endereço de correio

eletrônico)

Período de validade (o período de tempo em que o certificado é considerado

válido)

Informações sobre a identificação do emissor do certificado.

A assinatura digital do emissor, que atesta a validade da ligação entre a chave

pública do usuário e as informações de identificação do usuário.

Um certificado só é válido pelo período de tempo nele especificado, ou seja, o

certificado tem prazo de validade e tem que ser renovado periodicamente. Esta é uma

medida importante para aumentar o nível de segurança, pois a cada renovação, um novo

par de chaves é gerado. Cada certificado contém datas ―Válido de‖ e ―Válido até‖, que

limitam o período de validade. Depois que o período de validade de um certificado

terminar, um novo certificado deve ser solicitado pelo usuário do agora expirado

certificado.

Em situações em que seja necessário desabilitar um certificado, este pode ser revogado

pelo emissor. Cada emissor mantém uma lista de certificados revogados (CRL –

Certification Revocation List), a qual é usada pelos programas quando a validade de um

determinado certificado está sendo verificada. Por exemplo, programas que usam

certificados para autenticação, ao receberem uma tentativa de acesso, primeiro entram

em contato com a autoridade certificadora (no caso do Windows 2000 Server um

servidor com o Microsoft Certificate Services) para verificar se o certificado que está

sendo apresentado para logon, não está na lista dos certificados revogados – CRL. Se o

certificado estiver na CRL, o logon será negado.

Certificados e Autoridades de Certificação

Todo certificado é emitido por uma Autoridade de Certificação (CA – Certificate

Authority). A autoridade de certificação, a partir de agora denominada apenas CA, é

responsável pela verificação sobre a veracidade dos dados do usuário que está

requisitando o certificado. Por exemplo, qualquer usuário pode solicitar um certificado

para utilizar na Internet. Para obter o certificado ele precisa utilizar os serviços de uma

CA, como por exemplo a VeriSign (www.verisign.com).

Uma autoridade de certificação é uma entidade encarregada de emitir certificados para

indivíduos, computadores ou organizações, sendo que os certificados é que confirmam a

identidade e outros atributos do usuário do certificado, para outras entidades. Uma

autoridade de certificação aceita uma solicitação de certificado, verifica as informações

do solicitador (incluindo aí uma série de documentos e comprovantes, os quais devem

ser apresentados pelo solicitante do certificado) e, em seguida, usa sua chave privada

para aplicar a assinatura digital no certificado. A autoridade de certificação emite então

o certificado para que o usuário do certificado o use como uma credencial de segurança

dentro de uma infra-estrutura de chave pública (PKI). Uma autoridade de certificação

também é responsável por revogar certificados e publicar uma lista de certificados

revogados (CRL).

Uma autoridade de certificação pode ser uma empresa que presta o serviço de

autoridade certificadora, como o VeriSign, ou pode ser uma autoridade de certificação

Page 154: Apostila TCP IP

154

que você cria para ser usada por sua própria organização, instalando os Serviços de

certificados do Windows 2000 Server ou do Windows Server 2003. Cada autoridade de

certificação pode ter requisitos diferentes de prova de identidade, como uma conta de

domínio do Active Directory, crachá de empregado, carteira de motorista, solicitação

autenticada ou endereço físico. Verificações de identificação como essa geralmente

asseguram uma autoridade de certificação no local, de tal modo que as organizações

possam validar seus próprios empregados ou membros.

As autoridades de certificação corporativas do Windows 2000 Server usam as

credenciais da conta de usuário do Active Directory de uma pessoa, como prova de

identidade. Em outras palavras, se você tiver efetuado logon em um domínio do

Windows 2000 Server e solicitar um certificado de uma autoridade de certificação

corporativa, a autoridade de certificação saberá que você é quem o Active Directory

―diz que você é‖.

Todas as autoridades de certificação têm um certificado para confirmar sua própria

identidade, emitido por outra autoridade de certificação confiável ou, no caso de

autoridades de certificação raiz, emitido por elas mesmas. É importante lembrar que

qualquer pessoa pode criar uma autoridade de certificação. A questão real é se você,

como um usuário ou um administrador, confia naquela autoridade de certificação e, por

extensão, nas diretivas e procedimentos que ela emprega para confirmar a identidade

dos certificados emitidos para entidades por essa autoridade de certificação.

Em uma rede baseada no Windows 2000 Server (ou no Windows Server 2003), o

administrador também pode utilizar uma CA externa. Porém, com o uso do Microsoft

Certificate Services, o administrador pode criar sua própria autoridade certificadora. O

Certificate Services da Microsoft permite a criação de sofisticados ambientes de

certificação, com a criação de uma hierarquia de CAs. Com o uso do Certificate

Services podem ser criadas os seguintes tipos de autoridades certificadoras, os quais

serão descritos mais adiante:

Enterprise Root CA.

Enterprise Subordinate CA.

Standalone Root CA.

Standalone Subordinate CA

Ao criar uma estrutura interna para criação e gerenciamento de certificados digitais,

você deve definir os procedimentos que serão utilizados para verificar a veracidade dos

dados dos usuários que estão solicitando certificados. Por exemplo, você pode utilizar

as informações do Active Directory, como sendo as informações oficiais de cada

funcionário, porém o funcionário tem acesso a alterar as informações da sua conta no

Active Directory. Com isso você terá que montar uma metodologia formal de

verificação (um pouco de burocracia as vezes se faz necessária). Por exemplo, você

pode solicitar que o chefe imediato do funcionário confirme os dados em um formulário

na Intranet da empresa (formulário de papel também já seria demais).

A existência de uma autoridade certificadora significa que você tem confiança de que a

autoridade de certificação possui as diretivas corretas no local correto e ao avaliar as

solicitações de certificado, irá negar certificados para qualquer entidade que não atender

a essas diretivas. Esta é uma questão fundamental para garantir a identidade dos

Page 155: Apostila TCP IP

155

usuários. Ao fazer uma verificação rigorosa dos dados informados, antes de emitir um

certificado para um usuário, servidor ou computador, a CA garante que quem obtém o

certificado realmente é quem diz ser – prova de identidade. Por isso a importância

fundamental de definir uma metodologia clara, simples e de fácil execução, para a

verificação dos dados, antes de emitir os certificados.

Além disso, você confia que a autoridade de certificação irá revogar certificados que

não devem mais ser considerados válidos, através da publicação de uma lista de

certificados revogados, sempre atualizada (CRL – Certificate Revocation List). As listas

de certificados revogados são consideradas válidas até expirarem. Logo, mesmo que a

CA publique uma nova lista de certificados revogados com os certificados recém

revogados listados, todos os clientes que possuírem uma lista de revogação de

certificados antiga não irão procurar nem recuperar a lista nova até que a antiga expire

ou seja excluída. Os clientes podem usar uma página Web da CA para recuperar

manualmente a lista de certificados revogados mais atual, caso seja necessário.

Para serviços, computadores e usuários do Windows 2000 Server, a confiança em uma

autoridade de certificação é estabelecida quando você possui uma cópia do certificado

raiz no armazenamento das autoridades de certificação raiz confiáveis e tem um

caminho de certificação válido, significando que nenhum dos certificados no caminho

de certificação foi revogado ou que seus períodos de validade expiraram. O caminho de

certificação inclui todos os certificados emitidos para cada CA na hierarquia da

certificação de uma CA subordinada para a CA raiz. Por exemplo, para uma CA raiz, o

caminho de certificação é um certificado, seu próprio certificado auto-assinado. Para

uma CA subordinada, abaixo da CA raiz na hierarquia, seu caminho de certificação

inclui 2 certificados, seu próprio certificado e o certificado da CA raiz.

Caso sua empresa esteja usando o Active Directory, a confiança nas autoridades de

certificação da organização será estabelecida automaticamente, baseada nas decisões e

configurações realizadas pelo administrador do sistema e nas relações de confiança

criadas automaticamente pelo Active Directory.

Os diferentes tipos de Autoridades Certificadores

Conforme descrito anteriormente, podem ser criados diferentes tipos de autoridades

certificadoras. Pode ser uma autoridade certificadora corporativa (Enterprise) ou

Autônoma (Standalone). Cada um destes tipos pode ser uma autoridade certificadora

root ou subordinada. Com isso ficamos com os quatro tipos possíveis de autoridades

certificadores:

Corporativa root CA

Corporativa subordinada CA

Autônoma root CA

Autônoma subordinada CA

Uma autoridade de certificação raiz, mais conhecida como autoridade root, é encarada

como o tipo mais confiável de autoridade de certificação na PKI de uma organização.

Geralmente, tanto a segurança física como a diretiva de emissão de certificados de uma

autoridade de certificação raiz são mais rigorosas do que as de autoridades de

certificação subordinadas.

Page 156: Apostila TCP IP

156

Se a autoridade de certificação raiz estiver comprometida ou emitir um certificado

para uma entidade não autorizada, toda a segurança baseada em certificados, da

sua organização, estará vulnerável e não será mais confiável. Enquanto as

autoridades de certificação raiz podem ser usadas para emitir certificados para usuários

finais em tarefas como enviar correio eletrônico seguro, na maioria das organizações

elas são usadas apenas para emitir certificados para outras autoridades de certificação,

chamadas de subordinadas.

Uma autoridade de certificação subordinada é uma autoridade de certificação que

foi certificada por outra autoridade de certificação de sua organização, ou seja,

está subordinada a outra entidade certificadora. Se a entidade principal deixar de ser

confiável, todas as entidades subordinadas também o deixarão de ser. Geralmente, uma

autoridade de certificação subordinada emitirá certificados para usos específicos, como

correio eletrônico seguro, autenticação baseada na Web ou autenticação de cartões

inteligentes. Autoridades de certificação subordinadas também podem emitir

certificados para outras autoridades de certificação subordinadas em um nível abaixo

delas. Com isso é possível criar uma hierarquia de entidades certificadores. Juntas, a

autoridade de certificação raiz, as autoridades de certificação subordinadas certificadas

pela raiz e as autoridades de certificação subordinadas que foram certificadas por outras

autoridades de certificação subordinadas formam uma hierarquia de certificação.

Autoridades de certificação corporativas

Você pode instalar o Microsoft Certificate Services para criar uma autoridade de

certificação corporativa, na Intranet da empresa. Autoridades de certificação

corporativas podem emitir certificados para várias finalidades, tais como assinaturas

digitais, correio eletrônico seguro usando S/MIME (extensões multipropósito do

Internet Mail protegidas), autenticação para um servidor Web seguro usando Secure

Sockets Layer (SSL, camada de soquetes de segurança) ou segurança da camada de

transporte (TLS) e logon em um domínio do Windows 2000 Server ou Windows Server

2003, usando um cartão inteligente (smart card).

Uma autoridade de certificação corporativa apresenta as seguintes características e

exigências:

Uma autoridade de certificação corporativa exige o Active Directory.

Quando você instala uma autoridade de certificação corporativa raiz, ela é

automaticamente adicionada ao armazenamento de certificados das Autoridades

de certificação raiz confiáveis, para todos os usuários e computadores do

domínio. Você precisa ser administrador de domínio ou administrador com

direito de gravação no Active Directory para instalar uma autoridade de

certificação corporativa raiz.

Todas as solicitações de certificados enviadas para a autoridade de certificação

corporativa serão atendidas ou negadas com base no conjunto de diretivas e

permissões de segurança do tipo de certificado solicitado. Autoridades de

certificação corporativas nunca definem uma solicitação de certificado como

pendente. Elas imediatamente emitem o certificado ou negam a solicitação.

Page 157: Apostila TCP IP

157

Os certificados podem ser emitidos para efetuar logon em um domínio do

Windows 2000 Server ou Windows Server 2003, usando cartões inteligentes

(smart cards).

O módulo de saída corporativo publica certificados de usuários e a lista de

certificados revogados (CRL), no Active Directory. Para publicar certificados no

Active Directory, o servidor em que a autoridade de certificação está instalada

deve ser membro do grupo de Certificates Publishers (Publicadores de

certificados). Isso é automático para o domínio em que o servidor está, mas a

autoridade de certificação precisará receber as permissões de segurança corretas

para publicar certificados em outros domínios.

Uma autoridade de certificação corporativa usa tipos de certificados, que são baseados

em um modelo de certificado. A seguinte funcionalidade é possível devido ao uso de

modelos de certificado:

As autoridades de certificação corporativas aplicam verificações de credenciais

aos usuários durante o registro de certificados. Cada modelo de certificado tem

uma permissão de segurança definida no Active Directory que determina se

quem está solicitando o certificado está autorizado a receber o tipo de certificado

solicitado.

O nome do usuário do certificado é automaticamente gerado.

O módulo de diretiva adiciona uma lista predefinida de extensões de certificados

ao certificado emitido a partir do modelo do certificado. Isso reduz a quantidade

de informações que a pessoa que solicita o certificado precisa fornecer sobre o

certificado e sobre o uso pretendido.

Os servidores que desempenham o papel de autoridades certificadoras corporativas,

desempenham um papel fundamental na estrutura de segurança da empresa. Por isso é

importante que você implemente políticas de backup e de segurança bem rigorosas em

relação a estes servidores.

Além da segurança lógica, no acesso aos dados, é muito importante cuidar também da

segurança física, controlando quem tem acesso ao servidor configurado como servidor

corporativo root.

Autoridades de certificação autônomas

Você pode instalar os serviços de certificados para criar uma autoridade de certificação

autônoma. Autoridades de certificação autônomas podem emitir certificados para

finalidades diversas, tais como assinaturas digitais, correio eletrônico seguro usando

S/MIME (extensões multipropósito do Internet Mail protegidas) e autenticação para um

servidor Web seguro usando camada de soquetes de segurança (SSL) ou segurança da

camada de transporte (TLS).

Uma autoridade de certificação autônoma tem as seguintes características:

Page 158: Apostila TCP IP

158

Diferentemente de uma autoridade de certificação corporativa, uma autoridade

de certificação autônoma não exige o uso do Active Directory. Autoridades de

certificação autônomas se destinam principalmente a serem usadas quando

extranets e a Internet estão envolvidas. Por exemplo, se parceiros de negócios

precisam se conectar a rede da empresa para acessar determinados sistemas,

você pode criar uma autoridade certificadora autônoma, para emitir certificados

para os parceiros de negócio. Estes, por sua vez, usarão estes certificados para se

identificar e ter acesso a rede da empresa. Além disso, se desejar usar um

módulo de diretiva personalizado para uma autoridade de certificação, você

deve, primeiramente, instalar os serviços de certificados usando diretiva

autônoma e, em seguida, substituir a diretiva autônoma pela sua diretiva

personalizada.

Ao submeter uma solicitação de certificado a uma autoridade de certificação

autônoma, o solicitador do certificado deve fornecer, explicitamente, todas as

informações de identificação sobre si mesmo e sobre o tipo de certificado

desejado na solicitação do certificado. (Não é necessário fazer isso ao submeter

uma solicitação a uma autoridade de certificação corporativa, uma vez que as

informações do usuário corporativo já estão no Active Directory e o tipo do

certificado é descrito por um modelo de certificado).

Por padrão, todas as solicitações de certificados enviadas para a autoridade de

certificação autônoma são definidas como pendentes até que o administrador da

autoridade de certificação autônoma verifique a identidade do solicitador e dê OK para

a solicitação. Isso é feito por razões de segurança, porque as credenciais do solicitador

do certificado não são verificadas pela autoridade de certificação autônoma.

Não são usados modelos de certificados, a exemplo do que acontece com as

autoridades certificadores corporativas.

Nenhum certificado pode ser emitido para efetuar logon em um domínio do

Windows 2000 Server ou do Windows Server 2003 usando cartões inteligentes,

mas outros tipos de certificados podem ser emitidos e armazenados em um

cartão inteligente.

O administrador tem que distribuir, explicitamente, o certificado da autoridade

de certificação autônoma para o armazenamento de raiz confiável dos usuários

do domínio, ou os usuários devem executar essa tarefa sozinhos.

Quando uma autoridade de certificação autônoma usa o Active Directory, ela tem esses

recursos adicionais:

Se um membro do grupo de administradores de domínio ou um administrador

com direito de gravação no Active Directory instalar uma autoridade de

certificação raiz autônoma, ela será automaticamente adicionada ao

armazenamento de certificados das autoridades de certificação raiz confiáveis,

para todos os usuários e computadores do domínio. Por essa razão, ao instalar

uma autoridade de certificação raiz autônoma em um domínio do Active

Directory, você não deverá alterar a ação padrão da autoridade de certificação

até receber solicitações de certificados (o que marca as solicitações como

Page 159: Apostila TCP IP

159

pendentes). Caso contrário, você terá uma autoridade de certificação raiz

confiável que automaticamente emite certificados sem verificar a identidade do

solicitador.

Se uma autoridade de certificação autônoma for instalada por um membro do

grupo de administradores de domínio do domínio pai de uma árvore na empresa,

ou por um administrador com direito de gravação no Active Directory, a

autoridade de certificação autônoma publicará os certificados e a lista de

certificados revogados (CRL) no Active Directory.

Não esqueça: Conheça bem as diferenças entre os diferentes tipos de autoridades

certificadores. Lembre-se que autoridades certificadoras corporativas são integradas

com o Active Directory, utilizam modelos de certificados para a criação de novos

certificados. Já as autoridades certificadoras autônomas não dependem do Active

Directory e não utilizam modelos de certificados. A seguir um pequeno resumo sobre

cada um dos quatro tipos, para você fixar bem sobre a função e as características de

cada um dos tipos de autoridades certificadores:

1. Enterprise root CA – Autoridade certificadora corporativa root: Um único

servidor pode ser configurado como Enterprise root CA em uma floresta de domínios de

uma empresa. Este servidor ocupa o topo da hierarquia de autoridades certificadoras.

Normalmente não é utilizado para emitir certificados para usuários ou computadores,

mas sim para autoridades certificadores corporativas subordinadas. Os certificados para

usuários e computadores são emitidos pelas autoridades subordinadas. Com isso você

pode criar uma hierarquia de autoridades certificadoras, de tal maneira que a emissão de

certificados seja efetuada por um servidor do próprio domínio do usuário. Outro detalhe

importante é que a autoridade certificadora root é responsável por assinar o seu próprio

certificado (afinal não há nenhuma autoridade acima dela). Isso é que caracteriza esta

autoridade como uma autoridade certificadora root.

2. Enterprise subordinate CA – Autoridade certificadora Corporativa

subordinada: Para instalar uma autoridade certificadora corporativa subordinada, você

deve ter acesso ao certificado da autoridade certificadora corporativa root. O uso deste

certificado é que liga a autoridade certificadora que está sendo instalada, como um

autoridade subordinada a autoridade certificadora root, formando uma hierarquia de

entidades certificadoras. Este tipo de autoridade pode emitir certificados para usuários e

computadores do Active Directory ou para outras autoridades certificadores

subordinadas de níveis mais baixo, aumentando desta maneira, o número de níveis da

hierarquia de autoridades certificadoras.

3. Stand-alone root CA – Autoridade certificadora autônoma root: Este tipo de

autoridade certificadora não depende do Active Directory. Pode ser utilizado, por

exemplo, para emitir certificados para parceiros de negócio e prestadores de serviço,

que precisam de certificados digitais para acessar determinadas áreas da Intranet ou da

Extranet da empresa. Uma vantagem adicional é que um servidor configurado como

autoridade certificadora autônoma root, pode ser desconectado da rede, como uma

garantia adicional de segurança. Este tipo de autoridade certificadora também é

responsável por emitir os certificados de registro das autoridades certificadoras

autônomas subordinadas.

Page 160: Apostila TCP IP

160

4. Stand-alone subordinate CA - Autoridade Certificadora Autônoma

Subordinada: Este tipo de autoridade certificadora está subordinada a uma autoridade

certificadora autônoma root. O processo normalmente é o mesmo utilizado para o caso

das autoridades certificadoras corporativas, ou seja, a autoridade certificadora autônoma

root não é utilizada para emissão de certificados para usuários e computadores, mas sim

para a emissão de certificados para as autoridades certificadoras autônomas

subordinadas. As autoridades certificadoras autônomas subordinadas é que são

responsáveis pela emissão dos certificados para usuários e computadores.

Conclusão

Nesta parte do tutorial fiz uma breve apresentação sobre PKI, Certificados Digitais e

Autoridades Certificadores. Você também aprendeu sobre a criptografia baseada no uso

de um par de chaves: pública e privada e como utilizar o Microsoft Certificate Services

para criar uma autoridade certificadora na própria rede da empresa.

Page 161: Apostila TCP IP

161

NAT – Network Address Translation

Introdução:

Prezados leitores, esta é a vigésima e última parte, desta primeira etapa dos tutoriais de

TCP/IP. As partes de 01 a 20, constituem o módulo que eu classifiquei como Introdução

ao TCP/IP. O objetivo deste módulo foi apresentar o TCP/IP, mostrar como é o

funcionamento dos serviços básicos, tais como endereçamento IP e Roteamento e fazer

uma apresentação dos serviços relacionados ao TCP/IP, tais como DNS, DHCP, WINS,

RRAS, IPSec, Certificados Digitais, ICS, compartilhamento da conexão Internet e NAT

(assunto desta parte, ou seja Parte 20 do tutorial).

Esta é a vigésima parte do Tutorial de TCP/IP. Na Parte 1 tratei dos aspectos básicos do

protocolo TCP/IP. Na Parte 2 falei sobre cálculos binários, um importante tópico para

entender sobre redes, máscara de sub-rede e roteamento. Na Parte 3 falei sobre Classes

de endereços, na Parte 4 fiz uma introdução ao roteamento e na Parte 5 apresentei mais

alguns exemplos e análises de como funciona o roteamento e na Parte 6 falei sobre a

Tabela de Roteamento. Na Parte 7 tratei sobre a divisão de uma rede em sub-redes,

conceito conhecido como subnetting. Na Parte 8 fiz uma apresentação de um dos

serviços mais utilizados pelo TCP/IP, que é o Domain Name System: DNS. O DNS é o

serviço de resolução de nomes usado em todas as redes TCP/IP, inclusive pela Internet

que, sem dúvidas, é a maior rede TCP/IP existente. Na Parte 9 fiz uma introdução ao

serviço Dynamic Host Configuration Protocol – DHCP. Na Parte 10 fiz uma introdução

ao serviço Windows Internet Name Services – WINS. Na Parte 11 falei sobre os

protocolos TCP, UDP e sobre portas de comunicação. Na Parte 12, mostrei como são

efetuadas as configurações de portas em diversos aplicativos que você utiliza e os

comandos do Windows 2000/XP/2003 utilizados para exibir informações sobre portas

de comunicação. Na Parte 13 falei sobre a instalação e a configuração do protocolo

TCP/IP. Na Parte 14 fiz uma introdução sobre o protocolo de roteamento dinâmico RIP

e na Parte 15 foi a vez de fazer a introdução a outro protocolo de roteamento dinâmico,

o OSPF. Na Parte 16 você aprendeu sobre um recurso bem útil: O compartilhamento da

conexão Internet, oficialmente conhecida como ICS – Internet Connection Sharing. Este

recurso é útil quando você tem uma pequena rede, não mais do que cinco máquinas,

conectadas em rede, todas com o protocolo TCP/IP instalado e uma das máquinas tem

conexão com a Internet. Você pode habilitar o ICS no computador que tem a conexão

com a Internet. Com isso os demais computadores da rede também passarão a ter acesso

à Internet. Na Parte 17, você aprendeu a utilizar o IFC – Internet Firewall Connection

(Firewall de Conexão com a Internet). O IFC faz parte do Windows XP e do Windows

Server 2003, não estando disponível no Windows 2000. O IFC tem como objetivo

proteger o acesso do usuário contra “ataques” e “perigos” vindos da Internet. Na

Parte 18 fiz uma apresentação sobre o protocolo IPSec. O IPSec faz parte do Windows

2000, Windows XP e Windows Server 2003. O IPSec pode ser utilizado para criar um

canal de comunicação seguro, onde todos os dados que são trocados entre os

computadores habilitados ao IPSec, são criptografados. Na Parte 19, fiz uma

apresentação sobre o conceito de PKI – Public Key Infrastructure e Certificados

Digitais. O Windows 2000 Server e também o Windows Server 2003 disponibilizam

serviços para a emissão, gerenciamento e revogação de Certificados Digitais. Falei

sobre o papel dos Certificados Digitais em relação à segurança das informações.

Page 162: Apostila TCP IP

162

Nesta vigésima parte será a vez de falar um pouco mais sobre o serviço (ou protocolo

como preferem alguns) NAT – Network Address Transaltion. Você entenderá o que é o

NAT e qual a sua função na conexão de uma rede com a Internet.

Nota: Para aprender a instalar, configurar e a administrar os serviços relacionados ao

TCP/IP, no Windows 2000 Server, tais como o DNS, DHCP, WINS, RRAS, Ipsec,

NAT e assim por diante, o livro de minha autoria: Manual de Estudos Para o Exame 70-

216, 712 páginas.

Entendendo como funciona o NAT

Vamos inicialmente entender exatamente qual a função do NAT e em que situações ele

é indicado. O NAT surgiu como uma alternativa real para o problema de falta de

endereços IP v4 na Internet. Conforme descrito na Parte 1, cada computador que acessa

a Internet deve ter o protocolo TCP/IP corretamente instalado e configurado. Para isso,

cada computador da rede interna, precisaria de um endereço IP válido na Internet. Não

haveria endereços IP v4 suficientes. A criação do NAT veio para solucionar esta

questão.(ou pelo menos fornecer uma alternativa até que o IP v6 esteja em uso na

maioria dos sistemas da Internet). Com o uso do NAT, os computadores da rede Interna,

utilizam os chamados endereços Privados. Os endereços privados não são válidos na

Internet, isto é, pacotes que tenham como origem ou como destino, um endereço na

faixa dos endereços privados, não serão encaminhados, serão descartados pelos

roteadores. O software dos roteadores está configurado para descartar pacotes com

origem ou destino dentro das faixas de endereços IP privados. As faixas de endereços

privados são definidas na RFC 1597 e estão indicados a seguir:

10.0.0.0 -> 10.255.255.255

172.16.0.0 -> 172.31.255.255

192.168.0.0 -> 192.168.255.255

Existem algumas questões que devem estar surgindo na cabeça do amigo leitor. Como

por exemplo: Qual a vantagem do uso dos endereços privados? O que isso tem a ver

com o NAT? Muito bem, vamos esclarecer estas questões.

Pelo fato de os endereços privados não poderem ser utilizados diretamente na Internet,

isso permite que várias empresas utilizem a mesma faixa de endereços privados, como

esquema de endereçamento da sua rede interna. Ou seja, qualquer empresa pode utilizar

endereços na faixa 10.0.0.0 -> 10.255.255.255 ou na faixa 172.16.0.0 -> 72.31.255.255

ou na faixa 192.168.0.0 -> 192.168.255.255.

“Com o uso do NAT, a empresa fornece acesso à Internet para um grande número

de computadores da rede interna, usando um número bem menor de endereços IP,

válidos na Internet.”

Por exemplo, uma rede com 100 computadores, usando um esquema de endereçamento

10.10.0.0/255.255.0.0, poderá ter acesso à Internet, usando o NAT, usando um único

endereço IP válido: o endereço IP da interface externa do NAT. Observe que com isso

temos uma grande economia de endereços IP: No nosso exemplo temos 100

computadores acessando a Internet (configurados com endereços IP privados), os quais

Page 163: Apostila TCP IP

163

utilizam um único endereço IP válido, que é o endereço IP da interface externa do

servidor configurado como NAT.

Muito bem, respondi as questões anteriores mas agora devem ter surgido novas questões

na cabeça do amigo leitor, como por exemplo:

1. Se houver mais de um cliente acessando a Internet ao mesmo tempo e o NAT

possui apenas um endereço IP válido (ou em outras situações, se houver um número

maior de clientes internos acessando a Internet, do que o número de endereços IP

disponíveis no NAT. E o número de endereços IP, disponíveis no NAT sempre será

menor do que o número de computadores da rede interna, uma vez que um dos

principais objetivos do uso do NAT é reduzir a quantidade de números IP válidos),

como é possível a comunicação de mais de um cliente, ao mesmo tempo, com a

Internet?

2. Quando a resposta retorna, como o NAT sabe para qual cliente da rede interna

ela se destina, se houver mais de um cliente acessando a Internet?

Inicialmente vamos observar que o esquema de endereçamento utilizado pela empresa

do nosso exemplo (10.10.0.0/255.255.0.0) está dentro de uma faixa de endereços

Privados. Aqui está a principal função do NAT, que é o papel de “traduzir” os

endereços privados, os quais não são válidos na Internet, para o endereço válido,

da interface pública do servidor com o NAT.

Para entender exatamente o funcionamento do NAT, vamos considerar um exemplo

prático. Imagine que você tem cinco computadores na rede, todos usando o NAT. Os

computadores estão utilizando os seguintes endereços:

10.10.0.10

10.10.0.11

10.10.0.12

10.10.0.13

10.10.0.14

O computador com o NAT habilitado tem as seguintes configurações:

IP da interface interna: 10.10.0.1

IP da interface externa: Um ou mais endereços válidos na Internet, obtidos a

partir da conexão com o provedor de Internet, mas sempre em número bem

menor do que a quantidade de computadores da rede interna.

Quando um cliente acessa a Internet, no pacote de informações enviado por este cliente,

está registrado o endereço IP da rede interna, por exemplo: 10.10.0.10. Porém este

pacote não pode ser enviado pelo NAT para a Internet, com este endereço IP como

endereço de origem, se não no primeiro roteador este pacote será descartado, já que o

endereço 10.10.0.10 não é um endereço válido na Internet (pois é um endereço que

pertence a uma das faixas de endereços privados, conforme descrito anteriormente).

Para que este pacote possa ser enviado para a Internet, o NAT substitui o endereço IP de

origem por um dos endereços IP da interface externa do NAT (endereço fornecido pelo

provedor de Internet e, portanto, válido na Internet). Este processo que é chamado de

Page 164: Apostila TCP IP

164

tradução de endereços, ou seja, traduzir de um endereço IP interno, não válido na

Internet, para um endereço IP externo, válido na Internet. Quando a resposta retorna, o

NAT repassa a resposta para o cliente que originou o pedido.

Mas ainda fica a questão de como o NAT sabe para qual cliente interno é a resposta, se

os pacotes de dois ou mais clientes podem ter sido traduzidos para o mesmo endereço IP

externo. A resposta para estas questão é a mesma. O NAT ao executar a função de

tradução de endereços, associa um número de porta, que é único, com cada um dos

computadores da rede interna. A tradução de endereços funciona assim:

1. Quando um cliente interno tenta se comunicar com a Internet, o NAT substitui o

endereço interno do cliente como endereço de origem, por um endereço válido na

Internet. Mas além do endereço é também associada uma porta de comunicação. Por

exemplo, vamos supor que o computador 10.10.0.12 tenta acessar a Internet. O NAT

substitui o endereço 10.10.0.12 por um endereço válido na Internet, vou chutar um:

144.72.3.21. Mas além do número IP é também associada uma porta, como por

exemplo: 144.72.3.21:6555. O NAT mantém uma tabela interna onde fica registrado

que, comunicação através da porta ―tal‖ está relacionada com o cliente ―tal‖. Por

exemplo, a tabela do NAT, em um determinado momento, poderia ter o seguinte

conteúdo:

144.72.3.21:6555 10.10.0.10

144.72.3.21:6556 10.10.0.11

144.72.3.21:6557 10.10.0.12

144.72.3.21:6558 10.10.0.13

144.72.3.21:6559 10.10.0.14

Observe que todos os endereços da rede interna são ―traduzidos‖ para o mesmo

endereço externo, porém com um número diferente de porta para cada cliente da rede

interna.

2. Quando a resposta retorna, o NAT consulta a sua tabela interna e, pela

identificação da porta, ele sabe para qual computador da rede interna deve ser enviado o

pacote de informações, uma vez que a porta de identificação está associada com um

endereço IP da rede interna. Por exemplo, se chegar um pacote endereçado a

144.72.3.21:6557, ele sabe que este pacote deve ser enviado para o seguinte computador

da rede interna: 10.10.0.12, conforme exemplo da tabela anterior. O NAT obtém esta

informação a partir da tabela interna, descrita anteriormente.

Com isso, vários computadores da rede interna, podem acessar a Internet, ao mesmo

tempo, usando um único endereço IP ou um número de endereços IP bem menor do que

o número de computadores da rede interna. A diferenciação é feita através de uma

atribuição de porta de comunicação diferente, associada com cada IP da rede interna.

Este é o princípio básico do NAT – Network Address Translation (Tradução de

Endereços IP).

Agora que você já sabe o princípio básico do funcionamento do NAT, vamos entender

quais os componentes deste serviço no Windows 2000 Server e no Windows Server

2003.

Page 165: Apostila TCP IP

165

Os componentes do NAT

O serviço NAT é composto, basicamente, pelos seguintes elementos:

Componente de tradução de endereços: O NAT faz parte do servidor RRAS.

Ou seja, para que você possa utilizar o servidor NAT, para fornecer conexão à

Internet para a rede da sua empresa, você deve ter um servidor com o RRAS

instalado e habilitado (veja o Capítulo 6 do livro Manual de Estudos Para o

Exame 70-216, de minha autoria, para detalhes sobre a habilitação do RRAS). O

servidor onde está o RRAS deve ser o servidor conectado à Internet. O

componente de tradução de endereços faz parte da funcionalidade do NAT e será

habilitado, assim que o NAT for configurado no RRAS.

Componente de endereçamento: Este componente atua como um servidor

DHCP simplificado, o qual é utilizado para concessão de endereços IP para os

computadores da rede interna. Além do endereço IP, o servidor DHCP

simplificado é capaz de configurar os clientes com informações tais como a

máscara de sub-rede, o número IP do gateway padrão (default gateway) e o

número IP do servidor DNS. Os clientes da rede interna devem ser configurados

como clientes DHCP, ou seja, nas propriedades do TCP/IP, você deve habilitar a

opção para que o cliente obtenha um endereço IP automaticamente.

Computadores executando o Windows Server 2003 (qualquer edição), Windows

XP, Windows 2000, Windows NT, Windows Me, Windows 98 ou Windows 95,

são automaticamente configurados como clientes DHCP. Caso um destes

clientes tenha sido configurado para usar um IP fixo, deverá ser reconfigurado

para cliente DHCP, para que ele possa utilizar o NAT.

Componente de resolução de nomes: O computador no qual o NAT é

habilitado, também desempenha o papel de um servidor DNS, o qual é utilizado

pelos computadores da rede interna. Quando uma consulta para resolução de

nomes é enviada por um cliente interno, para o computador com o NAT

habilitado, o computador com o NAT repassa esta consulta para um servidor

DNS da Internet (normalmente o servidor DNS do provedor de Internet) e

retorna a resposta obtida para o cliente. Esta funcionalidade é idêntica ao papel

de DNS Proxy, fornecida pelo ICS, conforme descrita na Parte 16.

Importante: Como o NAT inclui as funcionalidades de endereçamento e resolução de

nomes, você terá as seguintes limitações para o uso de outros serviços, no mesmo

servidor onde o NAT foi habilitado:

Você não poderá executar o servidor DHCP ou o DHCP Relay Agent no

servidor NAT.

Você não poderá executar o servidor DNS no servidor NAT.

Um pouco de planejamento antes de habilitar o NAT

Antes de habilitar o NAT no servidor RRAS, para fornecer conexão à Internet para os

demais computadores da rede, existem alguns fatores que você deve levar em

consideração. Neste item descrevo as considerações que devem ser feitas, antes da

Page 166: Apostila TCP IP

166

habilitação do NAT. Estes fatos ajudam a evitar futuros problemas e necessidade de

reconfigurações no NAT.

1. Utilize endereços privados para os computadores da rede interna.

Esta é a primeira e óbvia recomendação. Para o esquema de endereçamento da rede

interna, você deve utilizar uma faixa de endereços, dentro de uma das faixas de

endereços privados: 10.0.0.0/255.0.0.0, 172.16.0.0/255.240.0.0 ou

192.168.0.0/255.255.0.0. Você pode utilizar diferentes máscaras de sub-rede, de acordo

com as necessidades da sua rede. Por exemplo, se você tiver uma rede com 100

máquinas, pode utilizar um esquema de endereçamento: 10.10.10.0/255.255.255.0, o

qual disponibiliza até 254 endereços. Por padrão, o NAT utiliza o esquema de

endereçamento 192.168.0.0/255.255.255.0. Porém é possível alterar este esquema de

endereçamento, nas configurações do NAT. Lembre-se que, uma vez habilitado o NAT,

este passa a atuar como um servidor DHCP para a rede interna, fornecendo as

configurações do TCP/IP para os clientes da rede interna. Com isso, nas configurações

do NAT (para todos os detalhes sobre as configurações do NAT, consulte o Capítulo 7

do livro Manual de Estudos Para o Exame 70-216, de minha autoria), você define o

escopo de endereços que será fornecido para os clientes da rede.

Nota: Você também poderia configurar a sua rede interna com uma faixa de endereços

IP válidos, porém não alocados diretamente para a sua empresa. Ou seja, você estaria

utilizando na rede interna, um esquema de endereçamento que foi reservado para uso de

outra empresa. Esta não é uma configuração recomendada e é conhecida como: ―illegal

or overlapping IP addressing‖. O resultado prático é que, mesmo assim, você conseguirá

usar o NAT para acessar a Internet, porém não conseguirá acessar os recursos da rede

para o qual o esquema de endereçamento foi oficialmente alocado. Por exemplo, se

você resolveu usar o esquema de endereçamento 1.0.0.0/255.0.0.0, sem se preocupar em

saber para quem esta faixa de endereços foi reservado. Mesmo assim você conseguirá

acessar a Internet usando o NAT, você apenas não conseguirá acessar os recursos e

servidores da empresa que usa, oficialmente, o esquema de endereçamento

1.0.0.0/255.0.0.0, que você resolveu utilizar para a rede interna da sua empresa.

Ao configurar o NAT, o administrador poderá excluir faixas de endereços que não

devem ser fornecidas para os clientes. Por exemplo, se você tiver alguns equipamentos

da rede interna (impressoras, hubs, switchs, etc.) que devam ter um número IP fixo,

você pode excluir uma faixa de endereços IP no servidor NAT e utilizar estes endereços

para configurar os equipamentos que, por algum motivo, precisam de um IP fixo.

2. Usar um ou mais endereços IP públicos.

Se você estiver utilizando um único endereço IP, fornecido pelo provedor de Internet,

não serão necessárias configurações adicionais no NAT. Porém se você obtém dois ou

mais endereços IP públicos, você terá que configurar a interface externa do NAT

(interface ligada a Internet), com a faixa de endereços públicos, fornecidos pelo

provedor de Internet. A faixa é informada no formato padrão: Número IP/Máscara de

sub-rede. Pode existir situações em que nem todos os números fornecidos pelo provedor

possam ser informados usando esta representação. Nestas situações pode acontecer de

você não poder utilizar todos os endereços disponibilizados pelo provedor de Internet, a

não ser que você utilize a representação por faixas, conforme descrito mais adiante.

Page 167: Apostila TCP IP

167

Se o número de endereços fornecido for uma potência de 2 (2, 4, 8, 16, 32, 64 e assim

por diante), é mais provável que você consiga representar a faixa de endereços no

formato Número IP/Máscara de sub-rede. Por exemplo, se você recebeu quatro

endereços IP públicos: 206.73.118.212, 206.73.118.213, 206.73.118.214 e

206.73.118.215. Esta faixa pode ser representada da seguinte maneira:

206.73.118.212/255.255.255.252.

Nota: Para maiores detalhes sobre a representação de faixas de endereços IP e máscaras

de sub-rede, consulte as seguintes partes deste tutorial: Parte 1, Parte 2, Parte 3 e Parte

4.

Caso não seja possível fazer a representação no formato Número IP/Máscara de sub-

rede, você pode informar os endereços públicos como uma série de faixas de endereços,

conforme exemplo a seguir:

206.73.118.213 -> 206.73.118.218

206.73.118.222 -> 206.73.118.240

3. Permitir conexões da Internet para a rede interna da empresa

O funcionamento normal do NAT, permite que sejam feitas conexões da rede privada

para recursos na Internet. Por exemplo, um cliente da rede acessando um servidor de ftp

na Internet. Neste caso, o cliente executando um programa cliente de ftp, faz a conexão

com um servidor ftp da Internet. Quando os pacotes de resposta chegam no NAT, eles

podem ser repassados ao cliente, pois representam a resposta a uma conexão iniciada

internamente e não uma tentativa de acesso vinda da Internet.

Você pode querer fornecer acesso a um servidor da rede interna, para usuários da

Internet. Por exemplo, você pode configurar um servidor da rede interna com o IIS e

instalar neste servidor o site da empresa. Em seguida você terá que configurar o NAT,

para que os usuários da Internet possam acessar este servidor da rede interna. Observe

que nesta situação, chegarão pacotes da Internet, os quais não representarão respostas a

requisições dos clientes da rede interna, mas sim requisições de acesso dos usuários da

Internet, a um servidor da rede interna. Por padrão este tráfego será bloqueado no NAT.

Porém o administrador pode configurar o NAT para aceitar requisições vindas de

clientes da Internet, para um servidor da rede interna. Para fazer estas configurações

você deve seguir os seguintes passos:

Para permitir que usuários da Internet, acessem recursos na sua rede interna, siga os

passos indicados a seguir:

O servidor da rede interna, que deverá ser acessado através da Internet, deve ser

configurado com um número IP fixo (número que faça parte da faixa de

endereços fornecidos pelo NAT, para uso da rede interna) e com o número IP do

default gateway e do servidor DNS (o número IP da interface interna do

computador com o NAT habilitado).

Excluir o endereço IP utilizado pelo servidor da rede Interna (servidor que estará

acessível para clientes da Internet) da faixa de endereços fornecidos pelo NAT,

Page 168: Apostila TCP IP

168

para que este endereço não seja alocado dinamicamente para outro computador

da rede, o que iria gerar um conflito de endereços IP na rede interna.

Configurar uma porta especial no NAT. Uma porta especial é um mapeamento

estático de um endereço público e um número de porta, para um endereço

privado e um número de porta. Esta porta especial faz o mapeamento das

conexões chegadas da Internet para um endereço específico da rede interna.

Com o uso de portas especiais, por exemplo, você pode criar um servidor HTTP

ou FTP na rede interna e torná-lo acessível a partir da Internet.

Nota: Para aprender os passos práticos para a criação de portas especiais no NAT,

consulte o Capítulo 7 do livro: Manual de Estudos Para o Exame 70-216, de minha

autoria.

4. Configurando aplicações e serviços.

Algumas aplicações podem exigir configurações especiais no NAT, normalmente com a

habilitação de determinadas portas. Por exemplo, vamos supor que você está usando o

NAT para conectar 10 computadores de uma loja de jogos, com a Internet. Pode ser

necessária a habilitação das portas utilizadas por determinados jogos, para que estes

possam ser executados através do NAT. Se estas configurações não forem feitas, o NAT

irá bloquear pacotes que utilizem estas portas e os respectivos jogos não poderão ser

acessados.

5. Conexões VPN iniciadas a partir da rede interna.

No Windows 2000 Server não é possível criar conexões VPN L2TP/IPSec, a partir de

uma rede que utilize o NAT. Esta limitação foi superada no Windows Server 2003.

Muito bem, de teoria sobre NAT é isso.

Conclusão

Nesta parte do tutorial fiz uma breve apresentação sobre o serviço de tradução de

endereços – NAT – Network Address Translation. Esta foi a vigésima e última parte,

desta primeira etapa dos tutoriais de TCP/IP. As partes de 01 a 20, constituem o módulo

que eu classifiquei como Introdução ao TCP/IP. O objetivo deste módulo foi apresentar

o TCP/IP, mostrar como é o funcionamento dos serviços básicos, tais como

endereçamento IP e Roteamento e fazer uma apresentação dos serviços relacionados ao

TCP/IP, tais como DNS, DHCP, WINS, RRAS, IPSec, Certificados Digitais, ICS,

compartilhamento da conexão Internet e NAT (assunto desta parte, ou seja Parte 20 do

tutorial).

Page 169: Apostila TCP IP

169

Roteiro para Resolução de Problemas

Introdução:

Prezados leitores, esta é a primeira parte, desta segunda etapa dos tutoriais de TCP/IP.

As partes de 01 a 20, constituem o módulo que eu classifiquei como Introdução ao

TCP/IP. O objetivo deste módulo foi apresentar o TCP/IP, mostrar como é o

funcionamento dos serviços básicos, tais como endereçamento IP e Roteamento e fazer

uma apresentação dos serviços relacionados ao TCP/IP, tais como DNS, DHCP, WINS,

RRAS, IPSec, Certificados Digitais, ICS, compartilhamento da conexão Internet e NAT

(assunto desta parte, ou seja Parte 20 do tutorial). No decorrer de 2004 serão

disponibilizados mais 20 tutoriais de TCP/IP (de 21 a 40), nas quais falarei mais sobre

os aspectos do protocolo em si, tais como a estrutura em camadas do TCP/IP e detalhes

um maior detalhamento sobre cada um dos protocolos que formam o TCP/IP: TCP, IP,

UDP, ARP, ICMP e por aí vai.

Roteiro para detecção e resolução de problemas de rede

Nesta parte do tutorial apresentarei uma seqüência lógica a ser seguida, para a detecção

e resolução de problemas relacionados a conectividade de rede, para estações de

trabalho e servidores, de uma rede baseada no protocolo TCP/IP. A cada passo, eu

acrescentarei comentários, para detalhar os pontos mais importantes.

Situação prática: Um usuário liga para o suporte técnico e informa que não está

conseguindo acessar outros computadores e os servidores da rede. Você vai até a seção

do usuário e faz o logon com a conta Administrador local. Siga os passos indicados a

seguir, para tentar identificar o problema e solucioná-lo:

1. Verificar se o TCP/IP está corretamente instalado no micro:

Abra um Prompt de comando e execute o seguinte comando:

ping 127.0.0.1

Este comando serve para verificar se o protocolo TCP/IP está corretamente instalado e

funcionando no computador. Se o TCP/IP estiver OK, você deverá obter um resultado

semelhante ao indicado a seguir:

F:\>ping 127.0.0.1

Disparando contra 127.0.0.1 com 32 bytes de dados:

Resposta de 127.0.0.1: bytes=32 tempo<1ms TTL=128

Resposta de 127.0.0.1: bytes=32 tempo<1ms TTL=128

Resposta de 127.0.0.1: bytes=32 tempo<1ms TTL=128

Resposta de 127.0.0.1: bytes=32 tempo<1ms TTL=128

Estatísticas do Ping para 127.0.0.1:

Pacotes: Enviados = 4, Recebidos = 4, Perdidos = 0 (0% de perda),

Page 170: Apostila TCP IP

170

Aproximar um número redondo de vezes em milissegundos:

Mínimo = 0ms, Máximo = 0ms, Média = 0ms

F:\>

Se este comando retornar uma mensagem de erro, o problema é com a instalação do

protocolo TCP/IP. Uma opção é acessar as propriedades da conexão de rede local e

remover o protocolo TCP/IP, reiniciar o computador e depois reinstalar o TCP/IP

novamente. Outra opção que pode ser tentada, antes de desinstalar a reinstalar

novamente o TCP/IP é clicar com o botão direito do mouse na conexão de rede local e,

no menu de opções que é exibido, clicar em Reparar.

Outro teste para verificar se o TCP/IP está OK é utilizar o comando ping para ―pingar‖

para o próprio IP do computador. Por exemplo, se você está no micro com IP

10.60.80.150, use o seguinte comando:

Ping 10.60.80.150

Se o TCP/IP estiver corretamente configurado, você deverá obter uma mensagem de

sucesso para este comando ping.

2. Verificar a conectividade com a rede local:

No passo 1 você verificou se o protocolo TCP/IP está corretamente instalado no micro.

O próximo passo é usar o comando ping para verificar se o micro consegue se

comunicar com os outros micros da rede local. Vamos supor que o micro tem o número

IP 10.60.80.25 e que ele faz parte da rede 10.60.80.0. Experimente usar o comando

ping, para testar a conectividade com outro computador da rede, conforme exemplo a

seguir:

ping 10.60.80.134

se o micro estiver conseguindo se comunicar na rede local, você deverá receber um

resultado semelhante ao indicado a seguir:

F:\>ping 10.60.80.134

Disparando contra 10.60.80.134 com 32 bytes de dados:

Resposta de 10.60.80.134: bytes=32 tempo<1ms TTL=128

Resposta de 10.60.80.134: bytes=32 tempo<1ms TTL=128

Resposta de 10.60.80.134: bytes=32 tempo<1ms TTL=128

Resposta de 10.60.80.134: bytes=32 tempo<1ms TTL=128

Estatísticas do Ping para 10.60.80.134:

Pacotes: Enviados = 4, Recebidos = 4, Perdidos = 0 (0% de perda),

Aproximar um número redondo de vezes em milissegundos:

Mínimo = 0ms, Máximo = 0ms, Média = 0ms

F:\>

Page 171: Apostila TCP IP

171

Se o micro não estiver conseguindo se comunicar com a rede local, você receberá uma

mensagem de erro, semelhante a indicada a seguir:

F:\>ping 10.60.80.31

Disparando contra 10.60.80.31 com 32 bytes de dados:

Esgotado o tempo limite do pedido.

Esgotado o tempo limite do pedido.

Esgotado o tempo limite do pedido.

Esgotado o tempo limite do pedido.

Estatísticas do Ping para 10.60.80.31:

Pacotes: Enviados = 4, Recebidos = 0, Perdidos = 4 (100% de perda),

F:\>

Neste caso, podem existir diferentes causas para o problema. Obviamente que, a

primeira coisa a verificar é se o cabo de rede está conectado (pode parecer uma

verificação muito óbvia, mas vocês não imaginam o número de chamados, onde o

problema é simplesmente um cabo de rede desconectado). Estando o cabo de rede

corretamente conectado, a segunda causa mais provável é um número de máscara de

sub-rede incorretamente configurado. No nosso exemplo, o computador faz parte da

rede 10.60.80.0 e usa como máscara de sub-rede: 255.255.255.0. Caso o computador

esteja com uma máscara de sub-rede incorreta, como por exemplo: 255.255.0.0 é como

se ele estivesse em outra rede e ele não conseguirá se comunicar com a rede local.

Nestes casos, você deve acessar as propriedades do TCP/IP e configurar a máscara

corretamente. Se o micro recebe as configurações do TCP/IP via servidor DHCP, você

deve entrar em contato com o administrador da rede e solicitar que ele verifique e

corrija as configurações no servidor DHCP, o qual poderá estar com uma configuração

incorreta, para a máscara de sub-rede a ser fornecida para os micros da rede.

Muito bem, se o comando ping funcionar nesta etapa, significa que o micro está

conseguindo se comunicar com a rede local. O próximo passo é verificar se o roteador

(default gateway) da rede está OK.

3. Verificar se o roteador está disponível e funcionando:

No passo 2 você verificou se o micro está conseguindo se comunicar com a rede local.

O próximo passo é verificar se o Roteador (default gateway) da rede está funcionando.

Normalmente, o IP 1 é usado para o roteador. Por exemplo, na rede 10.60.80.0, o IP do

roteador será: 10.60.80.1. Este não é um padrão obrigatório. Para informações sobre o

número IP do roteador da sua rede, entre em contato com o administrador da rede.

Experimente usar o comando ping, para testar se o roteador está disponível, conforme

exemplo a seguir:

ping 10.60.80.1

se o roteador estiver OK, você deverá receber um resultado semelhante ao indicado a

seguir:

Page 172: Apostila TCP IP

172

F:\>ping 10.60.80.1

Disparando contra 10.60.80.1 com 32 bytes de dados:

Resposta de 10.60.80.1: bytes=32 tempo<1ms TTL=255

Resposta de 10.60.80.1: bytes=32 tempo<1ms TTL=255

Resposta de 10.60.80.1: bytes=32 tempo<1ms TTL=255

Resposta de 10.60.80.1: bytes=32 tempo<1ms TTL=255

Estatísticas do Ping para 10.60.80.1:

Pacotes: Enviados = 4, Recebidos = 4, Perdidos = 0 (0% de perda),

Aproximar um número redondo de vezes em milissegundos:

Mínimo = 0ms, Máximo = 0ms, Média = 0ms

F:\>

Caso o roteador esteja com problemas, você receberá uma mensagem de erro. Neste

caso você deve entrar em contato com o Administrador da rede, para que ele tome as

medidas necessárias, para normalizar o funcionamento do roteador. Lembre-se que o

número IP do roteador é configurado no parâmetro Gateway padrão (Default Gateway),

das propriedades do TCP/IP. Este parâmetro é configurado manualmente, quando você

configura o IP manualmente em cada micro, ou é configurado no servidor DHCP, se a

rede usa um servidor DHCP para fazer as configurações do TCP/IP, das estações de

trabalho.

Quando o roteador está com problemas, você conseguirá se comunicar normalmente

com os demais computadores e servidores da sua rede local, mas não conseguirá acessar

nenhum recurso em redes externas, tais como a Internet ou recursos que estão em

servidores de outras redes da empresa, redes estas em filiais e localidades remotas,

ligadas através de links de WAN. O problema neste caso pode ser com o próprio

roteador ou pode ser que o número IP do Default Gateway esteja incorreto. Neste caso,

você pode usar o comando ping para ver se o roteador está OK e acessar as propriedades

do TCP/IP, para ver se o número IP do Default Gateway está corretamente configurado.

Se o micro estiver sendo configurado via DHCP, você pode usar o comando

ipconfig/all , para exibir qual o número IP do Default Gateway, que está sendo

fornecido pelo DHCP.

4. “Pingar” para um computador de outra rede:

No passo 3 você verificou se está tudo OK com o roteador. O próximo passo é verificar

se você consegue dar um ping para um computador de uma rede remota. Por exemplo,

suponhamos que você esteja na rede 10.60.80.0 e vai usar o seguinte comando ping,

para testar se você consegue se comunicar com um computador da rede 10.60.89.0:

ping 10.60.89.2

se a comunicação estiver OK, você deverá receber uma mensagem, semelhante a

indicada a seguir:

F:\>ping 10.60.89.2

Page 173: Apostila TCP IP

173

Disparando contra 10.60.89.2 com 32 bytes de dados:

Resposta de 10.60.89.2: bytes=32 tempo=37ms TTL=126

Resposta de 10.60.89.2: bytes=32 tempo=36ms TTL=126

Resposta de 10.60.89.2: bytes=32 tempo=35ms TTL=126

Resposta de 10.60.89.2: bytes=32 tempo=35ms TTL=126

Estatísticas do Ping para 10.60.89.2:

Pacotes: Enviados = 4, Recebidos = 4, Perdidos = 0 (0% de perda),

Aproximar um número redondo de vezes em milissegundos:

Mínimo = 35ms, Máximo = 37ms, Média = 35ms

F:\>

Caso você não obtenha uma resposta da máquina remota, pode ser que a máquina

remota esteja desligada ou indisponível na rede.

5. Testar a resolução de nomes:

Os computadores com o Windows XP tem dois nomes: Nome de host e o nome

NetBIos. Por incrível que pareça, em versões anteriores do Windows, estes dois nomes

eram configurados em locais diferentes e, o mais incrível ainda: podiam ser diferentes.

No Windows XP, você configura este nome na guia Identificação de rede, acessada

através do ícone Sistema do Painel de Controle. Obviamente que o nome NetBios e o

nome de host deve ser o mesmo.

Esta confusão de dois nomes tinha a ver mais com as antigas versões do Windows,

principalmente Windows 95/98/Me, as quais são dependentes do WINS para a

resolução de nomes. Já o Windows 2000 e Windows XP se baseiam no DNS, para a

resolução de nomes.

Você pode usar o comando ping para fazer alguns testes e verificar se existe um

problema com a resolução de nomes.

Por exemplo, se você dá um ―ping‖ para o número IP de um computador e obtém uma

resposta positiva, porém ao dar o ping usando o nome do computador, você não obtém

resposta, certamente é um erro de resolução de nomes. Você pode dar um ping usando

apenas o nome de host do computador ou usando o nome completo.

Por exemplo, vamos imaginar um computador com o nome micro01, o qual pertence ao

domínio DNS abc.com.br. O nome de host deste computador é micro01. O nome DNS

completo (FQDN – Full Qualiffied Domain Name) é micro01.abc.com.br. Você pode

usar os comandos a seguir, para dar um ping neste computador:

ping micro01

ou

ping micro01.abc.com.br

Page 174: Apostila TCP IP

174

Quando um usuário consegue acessar um recurso compartilhado, em um micro ou

servidor, usando o número IP, mas não consegue acessar usando o nome, muito

provavelmente é um problema de resolução de nome. Você deve verificar se o número

IP de um ou mais servidores DNS estão corretamente configurados nas propriedades do

TCP/IP. Caso a rede use um servidor DHCP para fazer a configuração do TCP/IP, você

deve entrar em contato com o Administrador da rede, para que ele verifique e corrija, se

for o caso, as configurações do servidor DHCP.

Dica: Pode acontecer de você ter servidores baseados em Linux, UNIX ou Macintosh

em sua rede, servidores estes configurados para compartilhar recursos com clientes

baseados no Windows. Nestas situações, pode ocorrer de os usuários não conseguirem

acessar estes servidores, pelo nome. O problema é que os computadores com o Linux,

UNIX ou Macintosh não irão se registrar, dinamicamente, com o DNS do Windows

2000 Server ou Windows Server 2003. Para solucionar este problema, você deve entrar

em contato com o Administrador da rede e solicitar que ele crie entradas estáticas no

DNS, para os servidores Linux, UNIX ou Macintosh.

A seguir coloco um resumo retirado da ajuda do Windows XP, no qual está o resumo

dos passos a serem utilizados, usando o comando ping, para detectar problemas

relacionados a conectividade de rede, passos estes que foram comentados e

exemplificados neste tutorial:

Para testar uma configuração TCP/IP usando o comando ping, siga as seguintes

etapas:

1. Para obter rapidamente a configuração TCP/IP de um computador, abra o Prompt de

comando e digite ipconfig . Na tela do comando ipconfig, assegure-se de que o

adaptador de rede para a configuração TCP/IP que você está testando não está no estado

Mídia desconectada.

2. No prompt de comando, de um ping no endereço de loopback (o qual a ajuda traduz,

maravilhosamente, como auto-retorno) digitando ping 127.0.0.1.

3. Dê um ping no endereço IP do computador.

4. Dê um ping no endereço IP do gateway padrão.

5. Se o comando ping falhar, verifique se o endereço IP do gateway padrão está correto

e se o gateway (roteador) está operacional.

6. Faça o ping no endereço IP de um host remoto (um host que esteja em uma sub-rede

diferente).

7. Se esse comando falhar, verifique se o endereço IP do host remoto está correto, se o

host remoto está operacional e se todos os gateways (roteadores) entre este computador

e o host remoto estão operacionais.

8. Faça o ping no endereço IP do servidor DNS.

Page 175: Apostila TCP IP

175

9. Se ele falhar, verifique se o endereço IP do servidor DNS está correto, se o servidor

DNS está operacional e se todos os gateways (roteadores) entre este computador e o

servidor DNS estão operacionais.

Observações:

Se o comando ping não for localizado ou falhar, você pode usar o recurso Visualizar

eventos para verificar o log do sistema e procurar problemas relatados pelo serviço

Protocolo Internet (TCP/IP) ou pela instalação do protocolo TCP/IP.

O comando ping usa mensagens de solicitação e resposta de eco do protocolo ICMP. As

diretivas dos filtros de pacotes em roteadores, firewalls ou outros tipos de gateways de

segurança podem impedir o fluxo desse tráfego. Nestas situações o comando ping não

irá retornar uma resposta, não porque o computador de destino esteja com problemas,

mas sim porque o protocolo ICMP, no qual o ping é baseado, está sendo bloqueado nos

roteadores do caminho.

Nota: O comando ipconfig é uma linha de comando equivalente ao comando winipcfg,

que está disponível no Windows Millennium Edition, no Windows 98 e no Windows

95. O Windows XP não inclui um equivalente gráfico ao comando winipcfg; no entanto,

você pode obter a funcionalidade equivalente para exibição e renovação de um endereço

IP abrindo Conexões de rede, clicando com o botão direito do mouse em uma conexão

da rede, clicando em Status e, em seguida, clicando na guia Suporte.

Se usado sem parâmetros, o comando ipconfig exibe o endereço IP, a máscara da sub-

rede e o gateway padrão para todos os adaptadores. Para executar esse comando, abra o

prompt de comando e digite ipconfig. Para abrir Conexões de rede, clique em Iniciar,

clique em Painel de controle e, em seguida, clique duas vezes em Conexões de rede.

Conclusão

Nesta parte do tutorial, a qual inaugura a segunda fase dos Tutoriais de TCP/IP, fase

esta que vai da Parte 21 a Parte 40, falei sobre a detecção e resolução de problemas,

relacionados a conectividade de rede. Apresentei uma seqüência de passos, os quais

podem ser utilizados para, rapidamente, identificar a causa do problema, que está

impedindo a correta comunicação de uma estação de trabalha com a rede local ou com

redes remotas.

Na próxima parte deste tutorial, segundo dentro da filosofia de apresentar ações

práticas, você aprenderá sobre a instalação do Servidor DNS no Windows 2000 Server.

Page 176: Apostila TCP IP

176