Na Internet, os computadores  comunicam entre eles graças ao protocolo IP (Internet    Protocol), que utiliza endereços numéricos, chamados endereços    IP, compostos por 4 números inteiros (4 bytes)    entre 0 e 255 e notados sob a forma xxx.xxx.xxx.xxx. Por exemplo, 194.153.205.26    é um endereço IP com forma técnica.      
Estes endereços servem para os computadores da rede para    comunicarem entre eles, assim cada computador de uma rede possui um endereço IP    único nessa rede.      
É o ICANN (Internet Corporation for Assigned Names    and Numbers, substituindo o IANA, Internet Assigned Numbers Agency,    desde 1998) que está encarregado de atribuir endereços IP públicos, isto é,  os endereços IP dos computadores directamente ligados à rede pública de Internet.     
Decodificar um endereço IP
Um endereço IP é um endereço 32    bits, geralmente notado sob a forma de 4 números inteiros separados    por pontos. Distinguem-se, com efeito, duas partes no endereço IP :      
- uma parte dos números à esquerda designa a rede e chama-se ID de rede (em inglês netID),
- Os números à direita designam os computadores desta rede e chamam-se ID de hóspede (em inglês host-ID).
Repare no exemplo abaixo:      

 
Tomemos a rede de esquerda: 194.28.12.0. Contém os computadores    seguintes :      
- 194.28.12.1 a 194.28.12.4
- 178.12.77.1 a 178.12.77.6
Imagine uma rede notada 58.0.0.0. Os computadores desta rede    poderão ter os endereços IP que vão de 58.0.0.1 a  58.255.255.254. Trata-se de atribuir os números de modo  a  que haja uma organização na hierarquia dos computadores e    dos servidores.      
Assim, quanto mais pequeno for o número de bits reservado à    rede, mais esta pode conter computadores.     
Com efeito, uma rede notada 102.0.0.0 pode conter computadores    cujo endereço IP pode variar entre 102.0.0.1 e 102.255.255.254 (256*256*256-2=16777214    possibilidades), enquanto uma rede notada 194.26 poderá conter apenas    computadores cujo endereço IP esteja compreendido entre 194.26.0.1    e 194.26.255.254 (256*256-2=65534 possibilidades), é a noção    de classe de endereço IP.      
Endereços específicos
Quando se anula a parte host-id, isto é, quando se substituem   os bits reservados às máquinas da rede por zeros (por    exemplo 194.28.12.0), obtém-se o que chamamos de endereço rede.    Este endereço não pode ser atribuído a nenhum dos computadores    da rede.      
Quando a parte netid é anulada, quer dizer, quando os bits    reservados à rede são substituídos por zeros, obtém-se    o endereço máquina. Este endereço representa    a máquina especificada pelo host-ID que se encontra na rede corrente.      
Quando todas as bits da parte host-id são de    1, o endereço obtido chama-se  endereço de divulgação    (em inglês broadcast). Trata-se de um endereço    específico, permitindo enviar uma mensagem a todas as máquinas    situadas na rede especificada pelo netID.     
Pelo contrário, quando todos os bits da parte    netid são 1, o endereço obtido constitui o endereço    de divulgação limitada (multicast).    
Por último, o endereço 127.0.0.1   chama-se endereço de defeito (em inglês    loopback), porque designa a máquina local    (em inglês localhost).      
As classes de redes
Os endereços IP estão repartidos por classes, de    acordo com o número de bytes que representam a rede.     
Classe A
Num endereço IP de classe A, o primeiro byte representa    a rede.      
O bit de peso forte (o primeiro bit, o da    esquerda) está a zero, o que significa que há 27    (00000000 à 01111111) possibilidades de redes, quer dizer 128 possibilidades.    Contudo, a rede 0 (bits que valem 00000000) não existe e o número    127 é reservado para designar a sua máquina.      
As redes disponíveis em classe A são por conseguinte    as redes que vão de 1.0.0.0 a 126.0.0.0 (os últimos bytes    são zeros que indicam que se trata de redes e não de computadores!)      
Os três bytes à direita representam os computadores    das redes, a rede pode por conseguinte conter um número de computador    igual a:     
224-2 = 16777214 computadores.
224-2 = 16777214 computadores.
Um endereço IP de classe A, binário, parece-se com isto :      
| 0 | xxxxxxx | xxxxxxxx | xxxxxxxx | xxxxxxxx | 
| Rede | Computadores | |||
Classe B
Num endereço IP de classe B, os dois primeiros bytes    representam a rede.     
Os dois primeiros bits são 1 e 0, o que significa    que há 214 (10 000000 00000000 do 111111 11111111) possibilidades    de redes, quer dizer de 16384 redes possíveis. As redes disponíveis    em classe B são por conseguinte as redes que vão de 128.0.0.0    a 191.255.0.0   
 Os dois bytes de direita representam os computadores da rede.    A rede pode por conseguinte conter um número de computadores igual a:    
216-21 = 65534 computadores.
216-21 = 65534 computadores.
Um endereço IP de classe B, binário, assemelha-se a isto:      
 
| 10 | xxxxxx | xxxxxxxx | xxxxxxxx | xxxxxxxx | 
| Rede | Computadores | |||
Classe C
Num endereço IP de classe C, os três primeiros    bytes representam a rede. Os três primeiros bits são 1,1    e 0, que significa que há 221 possibilidades de redes, quer dizer 2097152. As redes disponíveis em classe C são por conseguinte    as redes que vão de 192.0.0.0  a 223.255.255.0       
O byte de direita representa os computadores da rede, a rede    pode por conseguinte conter:    
28-21 = 254 Computadores
28-21 = 254 Computadores
Um endereço IP de classe C, binário, assemelha-se a isto :      
 
| 110 | xxxxx | xxxxxxxx | xxxxxxxx | xxxxxxxx | 
| Rede | Computadores | |||
Atribuição dos endereços IP
O objectivo da divisão dos endereços IP em três    classes A, B e C, é facilitar a investigação de um computador  na rede. Com efeito, com esta notação é possível    procurar inicialmente a rede que se deseja atingir  e seguidamente procurar    um computador . Assim, a atribuição dos endereços    IP faz-se de acordo com a dimensão da rede.      
 
| Classe | Número de redes possíveis | Números máximo de computadores em cada uma | 
|---|---|---|
| A | 126 | 16777214 | 
| B | 16384 | 65534 | 
| C | 2097152 | 254 | 
Os endereços de classe A são reservados especialmente para as grandes    redes, enquanto se atribuirão os endereços de classe C a   pequenas redes de empresa, por exemplo.      
Endereços IP reservados
 Acontece frequentemente numa empresa ou uma organização    que um só  computador esteja ligdo à Internet, é por seu intermédio que os outros computadores da rede acedem à Internet (fala-se geralmente    de proxy ou ponte estreita).      
Neste caso, o único computador ligado à Internet tem necessidade de reservar um endereço IP junto do ICANN. Contudo,    os outros computadores têm na mesma necessidade de um endereço    IP para poderem   comunicar entre eles internamente.     
Assim, o ICANN reservou um punhado de endereços em cada    classe para permitir afectar um endereço IP aos computadores de uma rede    local ligada à Internet sem correr o risco de criar uma confusão de endereços    IP na rede das redes. Trata-se dos endereços seguintes :    
- Endereços IP privados de classe A: 10.0.0.1 a 10.255.255.254, permitindo a criação de vastas redes privadas que compreendem milhares de computadores.
- Endereços IP privados de classe B: 172.16.0.1 à 172.31.255.254, permitindo criar redes privadas de média dimensão.
- Endereços IP privados de classe C: 192.168.0.1 à 192.168.0.254, para instalação de pequenas redes privadas.
Máscaras de subrede
Máscara de subrede
Para compreender o que é uma máscara, talvez seja interessante    consultar a secção “mecânico” que fala das máscaras em    binário     
Resumindo, fabrica-se uma máscara contendo 1 nos luagres dos bits que desejamos conservar, e 0 para os que queremos anular.Uma vez criada esta máscara, basta fazer    um ET lógico entre o valor que se deseja mascarar e a máscara, para deixar intacta a parte que deseja e anular o resto.     
Assim, uma máscara rede (em inglês    netmask) apresenta-se sob a forma de 4 bytes separados por pontos (como um    endereço IP), compreende (na sua notação binária)    dos zeros a nível das bits do endereço IP que quer-se    anular (e do 1 a nível dos que deseja-se conservar).     
Interesse de uma máscara de subrede
O primeiro interesse de uma máscara de subrede é    permitir identificar simplesmente a rede associada a um endereço IP.     
Com efeito, a rede é determinada por diversos bytes    do endereço IP (1 byte para os endereços de classe A, 2 para os    endereços de classe B, e de 3 bytes para a classe C). Ora, uma rede é    notada tomando o número de bytes que a carateriza, seguidamente completando com zeros. A rede associada ao endereço 34.56.123.12 é por exemplo    34.0.0.0, porque se trata de um endereço IP de classe A.      
Para conhecer o endereço da rede associada ao endereço    IP 34.56.123.12, basta então aplicar uma máscara    cujo primeiro byte comporta apenas  1 (quer dizer, 255 em notação    decimal), seguidamente 0 sobre os bytes seguintes.     
A máscara é: 11111111.00000000.00000000.00000000
A máscara associada ao endereço IP 34.208.123.12 é por conseguinte 255.0.0.0.
O valor binário de 34.208.123.12 é: 00100010.11010000.01111011.00001100
Um ET lógico entre o endereço IP e a máscara dá assim o resultado seguinte :
Isto é, 34.0.0.0. Trata-se da rede associada ao endereço 34.208.123.12
A máscara é: 11111111.00000000.00000000.00000000
A máscara associada ao endereço IP 34.208.123.12 é por conseguinte 255.0.0.0.
O valor binário de 34.208.123.12 é: 00100010.11010000.01111011.00001100
Um ET lógico entre o endereço IP e a máscara dá assim o resultado seguinte :
00100010.11010000.01111011.00001100 E 11111111.00000000.00000000.00000000 = 00100010.00000000.00000000.00000000
Isto é, 34.0.0.0. Trata-se da rede associada ao endereço 34.208.123.12
Generalizando, é possível obter as máscaras    que correspondem a cada classe de endereço:      
- Para um endereço de Classe A, só o primeiro byte deve ser conservado. A máscara possui a forma seguinte 11111111.00000000.00000000.00000000, quer dizer 255.0.0.0 em notação decimal;
- Para um endereço de Classe B, os dois primeiros bytes devem ser conservados, o que dá a máscara seguinte 11111111.11111111.00000000.00000000, correspondente a 255.255.0.0 em notação decimal;
- Para um endereço de Classe C, com o mesmo raciocínio, a máscara possuirá a forma seguinte 11111111.11111111.11111111.00000000, quer dizer 255.255.255.0 em notação decimal
Criação de subredes
Retomemos o exemplo da rede 34.0.0.0, e suponhamos que desejamos    que os dois primeiros bits do segundo byte permitam designar a rede.        
A máscara a aplicar será então:
quer dizer 255.192.0.0
A máscara a aplicar será então:
11111111.11000000.00000000.00000000
quer dizer 255.192.0.0
Se se aplicar esta máscara, ao endereço 34.208.123.12    obtém-se :      
34.192.0.0
Realmente há 4 casos possíveis    para o resultado máscara de um endereço IP de um computador da rede    34.0.0.0      
- Ou os dois primeiros bits do segundo byte são 00, neste caso o resultado é 34.0.0.0
- Ou os dois primeiros bits do segundo byte são 01, neste caso o resultado é 34.64.0.0
- Ou os dois primeiros bits do segundo byte são 10, neste caso o resultado é 34.128.0.0
- Ou os dois primeiros bits do segundo byte são 11, neste caso o resultado é 34.192.0.0
Esta máscara divide por conseguinte uma rede de classe A (que    pode admitir 16.777.214 computadores) em 4 subredes - daí o nome de máscara    de subrede - que pode admitir 222 computadores, quer dizer 4.194.304    computadores.      
Pode ser interessante observar que nos dois casos, o número    total de computadores é o mesmo, quer dizer 16.777.214 computadores (4 x    4194304 - 2 = 16777214).     
O número de subredes depende do número de bits    atribuídos a mais à rede (aqui 2). O número    de subredes é por conseguinte:      
| números de bits | números subredes | 
|---|---|
| 1 | 2 | 
| 2 | 4 | 
| 3 | 8 | 
| 4 | 16 | 
| 5 | 32 | 
| 6 | 64 | 
| 7 | 128 | 
| 8 (impossível para uma classe C) | 256 | 
 
 
 
Existe um padrão para IP de roteadores ??