Introdução
Você já parou para pensar como é que o seu
computador ou o seu smartphone consegue acessar páginas na Web
ou receber um arquivo que você decidiu baixar? Ou, ainda, na rede
da empresa que você trabalha, como o seu PC consegue se comunicar
com a máquina de alguém em outro andar? Isso acontece
porque, tanto em redes locais quanto na rede mundial de computadores, a
internet, cada dispositivo conectado tem um endereço
único: o IP, sigla para Internet Protocol. A seguir, você
descobrirá o que é endereço IP e
verá características relacionadas, como classes IP e
máscaras de sub-rede.
Antes de começarmos, é válido frisar que este
texto trata do IPv4. Se você procura informações
sobre a versão mais recente deste protocolo, acesse a
matéria O que é IPv6?.
TCP/IP
Há várias formas de estabelecer comunicação
entre computadores. No entanto, os protocolos TCP/IP (sigla para
Transmission Control Protocol/Internet Protocol) são a base para
internet e para a grande maioria das redes locais (dentro de um
prédio, por exemplo).
Em poucas palavras, o TCP/IP é um conjunto de protocolos, isto
é, de padrões de comunicação. Grossamente
falando, é como se fosse uma linguagem: se todos os computadores
"falam" este idioma e respeitam suas regras, conseguem se comunicar e
trocar informações.
Apesar de a sigla TCP/IP fazer referência a dois protocolos -
Transmission Control Protocol e Internet Protocol -, o conjunto conta
ainda com vários outros padrões, cada um sendo
responsável por uma determinada tarefa.
Para facilitar a compreensão do TCP/IP, esta família de
protocolos é organizada em camadas. Essencialmente, há
cinco delas:
5 - Camada Aplicação: onde estão as
aplicações (programas) que fazem uso da rede.
Contém protocolos como HTTP (Hypertext Transfer Protocol), DNS
(Domain Name System) e FTP (File transfer Protocol);
4 - Camada Transporte: onde estão os protocolos
responsáveis pelo envio/recebimento de dados, como o TCP em si e
o UDP (User Datagram Protocol);
3 - Camada Rede: onde há o estabelecimento da rede em si, com
endereçamento dos dispositivos conectados e tarefas de
roteamento, por exemplo. É nesta camada que se encontra o
Internet Protocol;
2 - Camada Link: onde estão tecnologias de rede (como Ethernet
e 802.11) e os drivers que
permitem que os dispositivos conectados se comuniquem;
1 - Camada Física: onde estão os componentes
físicos, como modems, cabos e conectores de rede.
Vale frisar que, dependendo da literatura, é possível
encontrar quatro camadas em vez de cinco. Além disso, há
também um esquema alternativo chamado Modelo OSI (Open Systems
Interconnection), que é organizado em sete camadas e
também tem a função de descrever um conjunto de
protocolos, mas o faz de maneira um pouco mais complexa.
Como você já sabe, cada protocolo tem uma
função específica. O HTTP, por exemplo, faz a
comunicação entre um computador cliente (como o seu) e um
servidor na internet para que você possa visualizar
páginas de sites. Já o FTP especifica um padrão
para transferências de arquivos de uma máquina para outra.
Mas, neste texto, vamos conhecer detalhes do Internet Protocol, mais
precisamente, do endereço IP.
O endereço IP
Quando você quer enviar uma carta a alguém, você...
Ok, você não envia mais cartas; prefere e-mail ou deixar
um recado no Facebook. Vamos
então melhorar este exemplo: quando você quer enviar um
presente a alguém, você obtém o endereço da
pessoa e contrata os Correios ou uma transportadora para entregar.
É graças ao endereço que é possível
encontrar exatamente a pessoa a ser presenteada. Também é
graças ao seu endereço - único para cada
residência ou estabelecimento - que você recebe suas contas
de água, aquele produto que você comprou em uma loja
on-line, enfim.
Na internet, o princípio é o mesmo. Para que o seu
computador seja encontrado e possa fazer parte da rede mundial de
computadores, necessita ter um endereço único. O mesmo
vale para websites, como o InfoWester:
este fica em um servidor, que por sua vez precisa ter um
endereço para ser localizado na internet. Isto é feito
pelo endereço IP (IP Address), recurso que também
é utilizado para redes locais, como a existente na empresa que
você trabalha, por exemplo.
O endereço IP é uma sequência de números
composta de 32 bits. Esse valor consiste em um conjunto de quatro
sequências de 8 bits. Cada uma destas é separada por um
ponto e recebe o nome de octeto ou simplesmente byte, já que um
byte é formado por 8 bits. O número 172.31.110.10
é um exemplo. Repare que cada octeto é formado por
números que podem ir de 0 a 255, não mais do que isso.
A divisão de um IP em quatro partes facilita a
organização da rede, da mesma forma que a divisão
do seu endereço em cidade, bairro, CEP, número, etc,
torna possível a organização das casas da
região onde você mora. Neste sentido, os dois primeiros
octetos de um endereço IP podem ser utilizados para identificar
a rede, por exemplo. Em uma escola que tem, por exemplo, uma rede para
alunos e outra para professores, pode-se ter 172.31.x.x para
uma rede e 172.32.x.x para a outra, sendo que os dois últimos
octetos são usados na identificação de
computadores.
Classes de endereços IP
Neste ponto, você já sabe que os endereços IP podem
ser utilizados tanto para identificar o seu computador dentro de uma
rede, quanto para identificá-lo na internet.
Se na rede da empresa onde você trabalha o seu computador tem,
como exemplo, IP 172.31.100.10, uma máquina em outra rede pode
ter este mesmo número, afinal, ambas as redes são
distintas e não se comunicam, sequer sabem da existência
da outra. Mas, como a internet é uma rede global, cada
dispositivo conectado nela precisa ter um endereço único.
O mesmo vale para uma rede local: nesta, cada dispositivo conectado deve
receber um endereço único. Se duas ou mais máquinas
tiverem o mesmo IP, tem-se então um problema chamado "conflito
de IP", que dificulta a comunicação destes dispositivos e
pode inclusive atrapalhar toda a rede.
Para que seja possível termos tanto IPs para uso em redes locais
quanto para utilização na internet, contamos com um esquema
de distribuição estabelecido pelas entidades
IANA (Internet Assigned Numbers Authority)
e ICANN (Internet Corporation for Assigned Names and Numbers)
que, basicamente, divide os endereços em três classes principais e mais duas
complementares. São elas:
Classe A: 0.0.0.0 até 127.255.255.255 - permite até 128 redes,
cada uma com até 16.777.214 dispositivos conectados;
Classe B: 128.0.0.0 até 191.255.255.255 - permite até 16.384
redes, cada uma com até 65.536 dispositivos;
Classe C: 192.0.0.0 até 223.255.255.255 - permite até
2.097.152 redes, cada uma com até 254 dispositivos;
Classe D: 224.0.0.0 até 239.255.255.255 - multicast;
Classe E: 240.0.0.0 até 255.255.255.255 - multicast reservado.
As três primeiras classes são assim divididas para atender
às seguintes necessidades:
- Os endereços IP da classe A são usados em locais onde
são necessárias poucas redes, mas uma grande quantidade
de máquinas nelas. Para isso, o primeiro byte é utilizado
como identificador da rede e os demais servem como identificador dos
dispositivos conectados (PCs, impressoras, etc);
- Os endereços IP da classe B são usados nos casos onde a
quantidade de redes é equivalente ou semelhante à
quantidade de dispositivos. Para isso, usam-se os dois primeiros bytes
do endereço IP para identificar a rede e os restantes para
identificar os dispositivos;
- Os endereços IP da classe C são usados em locais que
requerem grande quantidade de redes, mas com poucos dispositivos em
cada uma. Assim, os três primeiros bytes são usados para
identificar a rede e o último é utilizado para
identificar as máquinas.
Quanto às classes D e E, elas existem por motivos especiais: a
primeira é usada para a propagação de pacotes
especiais para a comunicação entre os computadores,
enquanto que a segunda está reservada para
aplicações futuras ou experimentais.
Vale frisar que há vários blocos de endereços
reservados para fins especiais. Por exemplo, quando o endereço
começa com 127, geralmente indica uma rede "falsa", isto
é, inexistente, utilizada para testes. No caso do
endereço 127.0.0.1, este sempre se refere à
própria máquina, ou seja, ao próprio host,
razão esta que o leva a ser chamado de localhost.
Já o endereço 255.255.255.255 é utilizado para
propagar mensagens para todos os hosts de uma rede de maneira
simultânea.
Endereços IP privados
Há conjuntos de endereços das classes A, B e C que
são privados. Isto significa que eles não podem ser utilizados na
internet, sendo reservados para aplicações locais.
São, essencialmente, estes:
- Classe A: 10.0.0.0 à 10.255.255.255;
- Classe B: 172.16.0.0 à 172.31.255.255;
- Classe C: 192.168.0.0 à 192.168.255.255.
- Classe B: 172.16.0.0 à 172.31.255.255;
- Classe C: 192.168.0.0 à 192.168.255.255.
Suponha então que você tenha que gerenciar uma rede com
cerca de 50 computadores. Você pode alocar para estas
máquinas endereços de 192.168.0.1 até
192.168.0.50, por exemplo. Todas elas precisam de acesso à
internet. O que fazer? Adicionar mais um IP para cada uma delas?
Não. Na verdade, basta conectá-las a um servidor ou
equipamento de rede - como um roteador - que receba a conexão
à internet e a compartilhe com todos os dispositivos conectados
a ele. Com isso, somente este equipamento precisará de um
endereço IP para acesso à rede mundial de computadores.
Máscara de sub-rede
As classes IP ajudam na organização deste tipo de
endereçamento, mas podem também representar
desperdício. Uma solução bastante interessante
para isso atende pelo nome de máscara de sub-rede, recurso onde
parte dos números que um octeto destinado a identificar
dispositivos conectados (hosts) é "trocado" para aumentar a
capacidade da rede. Para compreender melhor, vamos enxergar as classes
A, B e C da seguinte forma:
- A: N.H.H.H;
- B: N.N.H.H;
- C: N.N.N.H.
- B: N.N.H.H;
- C: N.N.N.H.
N significa Network (rede) e H indica Host. Com o uso de
máscaras, podemos fazer uma rede do N.N.H.H se "transformar" em
N.N.N.H. Em outras palavras, as máscaras de sub-rede permitem
determinar quantos octetos e bits são destinados para a
identificação da rede e quantos são utilizados
para identificar os dispositivos.
Para isso, utiliza-se, basicamente, o seguinte esquema: se um octeto
é usado para identificação da rede, este
receberá a máscara de sub-rede 255. Mas, se um octeto
é aplicado para os dispositivos, seu valor na máscara de
sub-rede será 0 (zero). A tabela a seguir mostra um exemplo
desta relação:
Classe
|
Endereço
IP
|
Identificador
da rede
|
Identificador
do computador
|
Máscara
de sub-rede
|
A
|
10.2.68.12
|
10
|
2.68.12
|
255.0.0.0
|
B
|
172.31.101.25
|
172.31
|
101.25
|
255.255.0.0
|
C
|
192.168.0.10
|
192.168.0
|
10
|
255.255.255.0
|
Você percebe então que podemos ter redes com
máscara 255.0.0.0, 255.255.0.0 e 255.255.255.0, cada uma
indicando uma classe. Mas, como já informado, ainda pode haver
situações onde há desperdício. Por exemplo,
suponha que uma faculdade tenha que criar uma rede para cada um de seus
cinco cursos. Cada curso possui 20 computadores. A
solução seria então criar cinco redes classe C?
Pode ser melhor do que utilizar classes B, mas ainda
haverá desperdício. Uma forma de contornar este problema
é criar uma rede classe C dividida em cinco sub-redes. Para
isso, as máscaras novamente entram em ação.
Nós utilizamos números de 0 a 255 nos octetos, mas estes,
na verdade, representam bytes (linguagem binária). 255 em
binário é 11111111. O número zero, por sua vez,
é 00000000. Assim, a máscara de um endereço classe
C, 255.255.255.0, é:
11111111.11111111.11111111.00000000
Perceba então que, aqui, temos uma máscara formada por 24
bits 1: 11111111 + 11111111 + 11111111. Para criarmos as
nossas sub-redes, temos que ter um esquema com 25, 26 ou mais bits,
conforme a necessidade e as possibilidades. Em outras
palavras, precisamos trocar alguns zeros do último octeto por 1.
Suponha que trocamos os três primeiros bits do último octeto
(sempre trocamos da esquerda para a direita), resultando em:
11111111.11111111.11111111.11100000
Se fizermos o número 2 elevado pela quantidade de bits
"trocados", teremos a quantidade possível de sub-redes. Em nosso
caso, temos 2^3 = 8. Temos então a possibilidade de criar
até oito sub-redes. Sobrou cinco bits para o
endereçamento dos host. Fazemos a mesma conta: 2^5 = 32. Assim,
temos 32 dispositivos em cada sub-rede (estamos fazendo estes cálculos sem considerar
limitações que possam impedir o uso de todos os hosts e
sub-redes).
11100000 corresponde a 224, logo, a máscara resultante é
255.255.255.224.
Perceba que esse esquema de "trocar" bits pode ser empregado
também em endereços classes A e B, conforme a necessidade.
Vale ressaltar também que não é possível
utilizar 0.0.0.0 ou 255.255.255.255 como máscara.
Nenhum comentário:
Postar um comentário