Página seguinte Página anterior Índice

4. Este tal de IP

Assim a função da camada IP é descobrir como `rotear' os pacotes para seu destino final. Para tornar isto possível, cada interface na rede precisa de um `endereço IP'. Um endereço IP consiste de quatro números separados por pontos, como `167.216.245.249'. Cada número está entre zero e 255.

Interfaces na mesma rede tendem a ter endereços IP vizinhos. Por exemplo, `167.216.245.250' fica ao lado da máquina com endereço IP `167.216.245.249'. Lembre também que um roteador é um nó com interfaces em mais de uma rede, assim o roteador terá um endereço IP para cada interface.

Assim, a camada IP do kernel do Linux mantém uma tabela de diferentes `rotas', descrevendo como chegar aos diferentes grupos de endereços IP. O mais simples destes é chamado de `rota default' ou `rota padrão': se a camada IP não sabe o que fazer, esta é a rota para a qual enviar os pacotes. Você pode ver uma lista de rotas usando `/sbin/route'.

As rotas podem ou apontar para um link, ou um nó em particular que é conectado a outra rede. Por exemplo, quando você disca para o provedor de Internet, a tua rota default irá apontar para o link do modem, por que é lá onde o mundo inteiro está.

  Rusty's              ISP's  ~~~~~~~~~~~~ 
   Modem               Modem {            }
       o------------------o { The Internet }
                             {            }
                              ~~~~~~~~~~~~  

Mas se você tem uma máquina permanente em sua rede que conecta ao mundo exterior, é um pouco mais complicado. No diagrama abaixo, minha máquina pode falar diretamente às máquinas de Tridge e Paul, e para o firewall, mas precisa saber que os pacotes destinados para o resto do mundo vão para o firewall, que irá então passar os mesmos adiante. Isto significa que você tem duas rotas> uma que diz `se está em minha rede, mande diretamente para ela' e uma rota default que diz `caso contrário, mande para o firewall'.

                         o  Tridge's
                         |    Work Machine      ~~~~~~~~~~~~
  Rusty's                |                     {            } 
   Work Machine o--------+-----------------o--{ The Internet }
                         |            Firewall {            } 
                         |                      ~~~~~~~~~~~~
                         o  Paul's
                              Work Machine

4.1 Grupos de Endereços IP: Máscaras de Rede

Existe mais um último detalhe: existe uma notação padrão para abrupar endereços IP, algumas vezes chamada de `endereço de rede' ou `network address'. Exatamente como um número de telefone pode ser dividido em código de área e o resto, podemos dividir um endereço IP em um prefixo de rede e o resto.

É comum as pessoas falar sobre `a rede 1.2.3', significando todos os 256 endereços de 1.2.3.0 a 1.2.3.255. Ou se esta não for uma rede grande o suficiente, eles podem chamar ela de `rede 1.2', o que significa todos os endereços de 1.2.0.0 a 1.2.255.255.

Normalmente nós não escrevemos `1.2.0.0 - 1.2.255.255'. Em vez disto, nós abreviamos isto para `1.2.0.0/16'. Esta notação esquisita `/16' (que é chamada de `netmask' ou `máscara de rede') pede uma pequena explicação.

Cada número entre os pontos em um endereço IP é na verdade um número de 8 dígitos binários (00000000 a 11111111): escrevemos o mesmo na forma decimal para tornar o mesmo mais legível para humanos. O `/16' significa que os 16 primeiros dígitos binários são o endereço de rede. Em outras palavras, a parte `1.2.' é a rede (lembre: cada dígito representa 8 dígitos binários). Isto significa que qualquer endereço IP começando com `1.2.' é parte da rede: `1.2.3.4' e `1.2.3.50' são, enquanto `1.3.1.1' não.

Para tornar a vida mais fácil, geralmente usamos redes terminando em `/8', `/16' e `/24'. Por exemplo, `10.0.0.0/8' é uma grande rede contendo qualquer endereço de 10.0.0.0 a 10.255.255.255 (mais de 16 milhões de endereços!). 10.0.0.0/16 é menor, contendo somente endereços IP de 10.0.0.0 a 10.0.255.55. 10.0.0.0/24 é ainda menor, contendo endereços de 10.0.0.0 a 10.0.0.255.

Para aumentar a confusão, existe outra forma de escrever netmasks. Podemos escrever elas como endereços IP:

10.0.0.0/255.0.0.0

Finalmente, é importante notar que o endereço IP mais alto em qualquer rede é reservado como sendo o `endereço de broadcast', que pode ser usado para mandar uma mensagem a todos na rede ao mesmo tempo.

Aqui temos uma tabela de máscaras de rede:

Short   Full                    Maximum         Comment
  Form    Form                    #Machines

/8      /255.0.0.0              16,777,215      Used to be called an `A-class'
/16     /255.255.0.0            65,535          Used to be called an `B-class'
/17     /255.255.128.0          32,767
/18     /255.255.192.0          16,383
/19     /255.255.224.0          8,191
/20     /255.255.240.0          4,095
/21     /255.255.248.0          2,047
/22     /255.255.252.0          1,023
/23     /255.255.254.0          511
/24     /255.255.255.0          255             Used to be called a `C-class'
/25     /255.255.255.128        127
/26     /255.255.255.192        63
/27     /255.255.255.224        31
/28     /255.255.255.240        15
/29     /255.255.255.248        7
/30     /255.255.255.252        3


Página seguinte Página anterior Índice 1