Você está na página 1de 44

Endereçamento e Roteamento IP

Redes TCP/IP

O objetivo deste módulo é explicar como funciona a atribuição de endereços IP com


classe e sem classe e como configurar logicamente tabelas de roteamento.

Obs. Corrigido em 19/04/2008

1
Topologia Internet

• Internet - WAN

Gateway ou roteador

Rede Física internet Rede Física

Rede Física Rede Física

Edgard Jamhour

O protocolo IP define uma arquitetura de rede formada pela interligação de redes físicas.
Na topologia IP, a rede física é normalmente uma rede IP, formada por Hubs ou
Switches. Como veremos mais adiante no curso, atualmente, esse conceito é um pouco
mais complexo devido a introdução do endereçamento privado. Mas neste capítulo,
iremos considerar que todos os endereços IP são únicos (públicos).

Os roteadores são utilizados para interligar as redes físicas entre si. Eles oferecem
múltiplos caminhos para interconectar as redes físicas. O caminho é escolhido de acordo
com informações previamente configuradas nos roteadores, denominadas “tabelas de
roteamento”.

As tabelas de roteamento indicam para cada roteador como ele deve encaminhar um
pacote a fim de que este chegue a uma certa rede física de destino. Na Internet, as tabelas
de roteamento são preenchidas automaticamente, através de protocolos de roteamento
padronizados, como o BGP (Border Gateway Protocol) e o OSPF (Open Shortest Path
First).

2
Notação Decimal Pontuada

2726252423222120 2726252423222120 2726252423222120 2726252423222120

10000000 00001010 00000010 00011110 notação


binária

27=128 23+21=10 21=2 24+23+22+21=30

notação decimal
128.10.2.30 pontuada

Edgard Jamhour

O protocolo IPv4 (Internet Protocol version 4), atualmente utilizado na Internet, define
endereços de 32 bits. Os endereços de 32 bits correspondem a quatro octetos (bytes). Na
notação decimal pontuada, cada um desses octetos é representado por um número
decimal, calculado como se cada octeto fosse independente dos demais.

A figura ilustra a representação do endereço IP 128.10.2.30. Um endereço IP identifica


um computador, mas também permite identificar a qual rede o computador pertence.

De fato, a parte mais significativa do endereço IP corresponde ao identificador de rede


(ou prefixo), e a parte menos significativa ao identificador de host.

A quantidade exata de bits que corresponde ao identificador de rede é variável.


Atualmente, existem duas estratégias para determinar o tamanho desse identificador:

a)Endereços IP com classe


• O identificador de rede (prefixo) é determinado pelo valor do endereço IP
b)Endereços IP sem classe
• O identificador de rede (prefixo) independe do valor do IP e é determinado
por um outro número, denominado máscara de sub-rede.

3
Endereços IP
• Endereço IP: Indentificador de Rede + Indentificador de HOST

Endereço IP de 32 bits

Id rede Id de host
(prefixo)

host
Rede fisica Rede física
internet

hosts com o
hosts com mesmo
identificadores identificador de
de rede rede.
distintos.
Rede física Rede Física
Edgard Jamhour

Numa rede IP, a forma de atribuição dos endereços está diretamente relacionada a
topologia da rede. Independente da estratégia utilizada para determinar o tamanho do
identificador de rede, a forma padrão de atribuir endereços IP a uma rede deve obedecer
as seguintes regras:

1) Computadores e interfaces de equipamentos de rede numa mesma rede física (LAN)


devem ter o mesmo identificador de rede.

2) Redes físicas distintas devem possuir identificadores de rede distintos.

É importante observar que na nomenclatura da arquitetura TCP/IP o termo sub-rede é


comumente usado como sinônimo de LAN ou rede física.

É possível fazer uma rede funcionar sem respeitar as regras acima. Contudo, essa prática
seria muito imprópria, pois levaria a um aumento de complexidade desnecessário nas
tabelas de roteamento de computadores e roteadores.

4
Classes de Endereçamento IP

Classe Octetos Número de Endereços por Faixa de Endereços


Prefixos Prefixo

A (0) R H H H 128 16.777.216 1.0.0.0


127.255.255.255
B (10) R R H H 16.384 65.536 128.0.0.0
191.255.255.255
C (110) R R R H 2.097.152 256 192.0.0.0 até
223.255.255.255
D (1110) ---- 268.435.456 224.0.0.0 até
239.255.255.255
Res. (1111) reservado reservado 240.0.0.0 até
255.255.255.254

Edgard Jamhour

O método antigo usado para determinar o tamanho do identificador de rede era baseado
na tabela mostrada pela figura.

O método dividia o espaço de endereçamento IP em 4 classes, denominadas A,B,C e D.


As classes A,B e C são de endereços unicast, isto é, elas são usadas para atribuir
endereços para computadores individuais. Quando o endereço de destino de um pacote é
do tipo unicast, apenas um computador em toda a rede deverá recebê-lo. A classe D é de
endereços multicast, que é utilizada para atribuir endereços para grupos de
computadores. Quando o endereço de destino de um pacote é do tipo multicast, o mesmo
pode ser lido por múltiplos computadores ou dispositivos de rede que compartilham o
mesmo endereço.

Apenas as classes de A até C possuem o conceito de identificador de rede. Nesse caso, o


tamanho do identificador é definido para cada classe. Na classe A o identificador tem 8
bits (1 byte). Na classe B, 16 bits e na classe C, 24 bits. Para determinar em qual classe
um endereço pertence é necessário examinar os primeiros bits do endereço, conforme
indicado na figura.

Mais simples do que identificar os primeiros bits do endereço é localizar em que faixa o
endereço se encontra. Por exemplo, um endereço em que o primeiro octeto está entre 1 e
127 é um classe A (exemplo, 10.32.1.2). Um endereço onde o primeiro octeto está entre
128 e 191 é um classe B (exemplo, 130.10.1.2), e assim por diante.

5
Endereços IP com Classe
10.x.x.x

...

16 milhões A
172.68.x.x
...

65 mil B
200.134.51.x
...

255 C
Edgard Jamhour

O conceito de endereçamento com classes foi criado em uma época em que a rede
Internet era muito pequena. O método de divisão adotado é muito rígido, e leva a um
grande desperdício de endereços.

Uma rede classe A representa uma rede física com 16 milhões de endereços.
Considerando as tecnologias de rede atualmente utilizadas, esse número não faz muito
sentido. No início da história da rede IP, contudo, acreditava-se que a Internet seria
formada por um pequeno número de redes, e desejou-se limitar o tamanho das tabelas de
roteamento nos roteadores que, nos anos 70, tinham capacidade de processamento e
memória muito limitada. Na concepção original, a rede Internet poderia interconectar
redes maiores, de diferentes tecnologias, que não necessariamente seguissem a filosofia
das LANs. Inicialmente, a classe B foi a classe mais usada para atribuir endereços IP
para as redes que se conectam a internet. Por volta de 1992, contudo, metade das classes
B disponíveis já havia sido utilizada, e os prefixos das classes C passaram a ser
utilizados.

O problema dessa estratégia de alocação é que a quantidade de prefixos de classe B é


limitada (16384). Além disso, ao atribuir uma classe B para uma universidade com 10
mil computadores, por exemplo, os 55 mil endereços restantes serão perdidos.

O método também é muito rígido, pois não é possível criar redes com tamanhos
intermediários entre as classes.

6
Exemplo de Endereçamento
identificador de rede identificador do host

200.0.0.2 200.0.0.3 200.0.0.4 200.0.0.5

sub-rede
200.0.0
200.0.0.1

roteador

200.0.1.1
sub-rede
200.0.1

200.0.1.2 200.0.1.3 200.0.1.4 200.0.1.5


O roteador possui dois endereços IP, um para cada rede.

Edgard Jamhour

A figura mostra um exemplo de alocação de endereços classe C. No exemplo, duas redes


LANs (ou sub-redes) foram conectadas: a sub-rede 200.0.0 e a sub-rede 200.0.1. Por que
o prefixo 200.0.0 pertence a classe C, ele define um bloco de endereços que vai do
200.0.0.0 até o 200.0.0.255.

O primeiro e o último endereço desses blocos são não podem ser usados com endereços
de unicast (o primeiro é usado para identificar a rede e o último é um endereço de
broadcast para todos os computadores da rede). Similarmente, a sub-rede 200.0.1 define
o bloco de endereços 200.0.1.0 até 200.0.1.255.

Observe que o roteador possui dois endereços IP, um para cada uma de suas interfaces.
Cada interface do roteador pertence a sub-rede ao qual ele está conectado e deve,
portanto, ter um endereço unicast do bloco que define a sub-rede. O endereço do roteador
pode ser qualquer endereço do bloco. Uma boa prática, contudo, consiste em atribuir o
primeiro endereço unicast válido do bloco para o roteador.

Antes que um computador envie um pacote par outro, ele precisa decidir se o destinário
está na mesma rede que ele ou não. Se não estiver, ele envia o pacote para o roteador da
rede. Para tomar esta decisão, basta ao computador verificar se o endereço do
destinatário está contido no bloco de endereços que define sua própria sub-rede.

7
Limitações do IP com classe

Universidade A Instituto B

... ...
2000 computadores 200 computadores

Edgard Jamhour

Os endereços IP com classe implicam em um grande desperdício de endereços. A classe


mais utilizada até o início dos anos 90 era a classes B. Todavia, quando a quantidade de
prefixos disponíveis nessa classe começou a decair drasticamente com o crescimento da
Internet, os prefixos classe C começaram a ser utilizados.

Para ilustrar como as classes implicam em desperdício de endereços, e porque o uso das
classes C foi prejudicial, considere o cenário acima. Imagine que você precisa conectar
duas redes de tamanhos distintos, uma com 2000 computadores e outra com 200,
utilizando a tecnologia IP.

O primeiro passo é escolher um identificador de rede para cada uma das sub-redes. Para a
sub-rede com duzentos computadores, uma identificador pertencente a classe C é
suficiente. A rede precisa de 200 endereços para os computadores e um endereço para
Interface interna do roteador. Uma classe C possui 254 endereços unicast válidos. Os 53
endereços restantes estão perdidos, pois eles não podem ser alocados a nenhuma outra
rede. Para a rede com 2000 computadores, o desperdício tende a ser muito maior. Duas
soluções possíveis são utilizar uma classe B (nesse caso a perda de endereços seria na
ordem de 63534). Ou oito prefixos de classes C, o que diminuiria a perda para 32
endereços, mas prejudicaria o desempenho da rede, como veremos a seguir.

8
Limitações do IP com Classe
Universidade A Universidade A

253 computadores
...

...
...

2000 computadores
253 computadores

OITO CLASSES C UMA CLASSE B


2024 endereços 65536 endereços
Edgard Jamhour

A figura ilustra as duas opções para escolher as classes do identificador de rede para a
sub-rede com 2000 computadores (Universidade). A direita, a opção de escolher uma
classe B é a mais simples. Utilizar uma classe B implica em que 65234 endereços seriam
perdidos. Isto é, eles ficariam reservados para uso pela matriz em uma expansão futura.

O lado esquerdo ilustra a opção de escolher oito classes C. O problema de adotar esta
opção, é que a matriz seria realmente dividida em diversas sub-redes que precisariam ser
interconectados por um ou mais roteadores. Ou seja, a escolha de classes menores
implica em um incômodo para o administrador de rede, pois ele precisa adaptar a
topologia de sua rede a escolha dos identificadores. Outro problema mais significativo é
que o número de entradas na tabela de roteamento dos demais roteadores da Internet
seria desnecessariamente maior. Enquanto basta uma entrada para representar a rede com
o prefixo de classe B são necessárias oito entradas para representar a mesma rede com os
prefixos de classe C.

9
Endereços IP sem classe
• Classless Inter-Domain Routing (CIDR)
– Introduzido em 1993, modificou a forma como o tamanho do prefixos de
rede em um endereço IP é determinado.
• O CIDR adota o conceito de máscara de subrede de tamanho
variável, que permite definir prefixos de qualquer tamanho
– VLSM (Variable Length Subnet Masking)

IP (32 bits)

Máscara de Subrede (32 bits)

Edgard Jamhour

A maneira como o tamanho do prefixo de rede de um endereço IP é determinado foi


alterado em 1993. A fim de flexibilizar a atribuição de endereços IP na Internet foi
introduzido o conceito de CIDR (Classless Inter-Domain Routing).

Essa nova estratégia permite definir prefixos de qualquer tamanho, pela introdução do
conceito de máscara de sub-rede. A máscara de sub-rede é um número que acompanha
um endereço IP e indica qual parte do endereço deve ser interpretado como um prefixo
de rede. Em sua forma mais geral, uma máscara de sub-rede é um número de 32 bits. Na
forma mais compacta, a máscara de sub-rede é apenas um número que indica quantos
bits mais significativos do endereço IP devem ser usados como prefixo de rede. Essas
formas de representação serão discutidas mais adiante neste capítulo.

O conceito de máscara de sub-rede também é referenciado na literatura como VLSM


(Variable Length Subnet Masking). Este termo é utilizado para distinguir do conceito de
máscaras padronizadas para as classes A, B e C, que seriam representadas da seguinte
forma:

Classe A: (prefixo de 8 bits) - máscara 255.0.0.0 ou /8


Classe B: (prefixo de 16 bits) - máscara 255.255.0.0 ou /16
Classe C: (prefixo de 24 bits) - máscara 255.255.255.0 ou /24

10
Máscara de Subrede
• A Máscara de Subrede
– 32 bits em notação decimal pontuada.
• bits 1 indicam o endereço da subrede
• bits 0 o endereço do host.
• Máscaras Default:
– classe A: 255.0.0.0 ou /8 ou
• 11111111.00000000. 00000000. 00000000.
– classe B: 255.255.0.0 ou /16 ou
• 11111111. 11111111. 00000000. 00000000.
– classe C: 255.255.255.0 ou /24 ou
• 11111111. 11111111. 11111111. 00000000.

Edgard Jamhour

Em sua forma mais geral, a máscara de sub-rede é um número de 32 bits, representado


em notação decimal pontuada, de forma semelhante ao IP.

Como seu próprio nome diz, este número funciona como uma máscara para o IP, no
sentido em que se fizemos um “E” lógico bit-a-bit entre um endereço IP e sua máscara,
obteremos como resultado o prefixo de rede do endereço IP.

Para obter esse efeito, a máscara de subrede adota o seguinte princípio: se um bit da
máscara é 1, então o bit correspondente no endereço IP pertence ao prefixo de rede. Se
um bit da máscara de subrede é 0, então o bit correspondente pertence ao identificador de
host.

A forma mais recomendada para utilizar a máscara de subrede é fazer com que os bits
mais significativos da máscara sejam iguais a 1. Nesse formato, uma máscara de subrede
pode ser representado de forma compacta, utilizando o formato “/” seguido o tamanho do
prefixo. Esse princípio é ilustrado utilizando as máscaras default, na figura acima.

11
SubRedes
200.0.0.0/27

200.0.0.0/25 200.0.0.0/26 200.0.0.0


(32 IPs)
200.0.0.0/24 200.0.0.0 200.0.0.0 200.0.0.31
200.0.0.0 (64 IPs)
200.0.0.32/27
(128 IPs) 200.0.0.63
200.0.0.32
(32 IPs)
200.0.0.64/26 200.0.0.63
200.0.0.127
(256 IPs) 200.0.0.64

200.0.0.128/25 (64 IPs)


200.0.0.128
200.0.0.127

(128 IPs)
200.0.0.255 /24 = 255.255.255.0
/25 = 255.255.255.128
/26 = 255.255.255.192
200.0.0.255 /27 =255.255.255.224

Edgard Jamhour

Na nomenclatura do IP, uma subrede corresponde a um bloco de endereços. Esses


endereços devem ser atribuídos, supostamente, a computadores conectados mesma LAN.
O “nome da subrede” corresponde ao primeiro endereço do bloco, acompanhado pela
máscara de subrede.

Por exemplo, a subrede de classe C 200.0.0.0/24 define um bloco de 256 endereços que
vai de 200.0.0.0 até 200.0.0.255. O primeiro e últimos endereços de um bloco não podem
ser usados como “unicast”. O primeiro endereço é usado para identificar a rede, e o
último significa um broadcast para o bloco.

As máscaras de tamanho variável permitem definir redes de qualquer tamanho. Uma


maneira de ilustrar esse conceito, é mostrar como a subrede de classe C 200.0.0.0/24
pode ser transformado em vários blocos de endereços independentes.

O processo de divisão de um bloco de endereços em subredes menores é bastante


simples. Cada vez que aumentamos o tamanho da máscara em 1 bit, criamos duas
subredes com a metade do tamanho do bloco de endereços original. Por exemplo, a
máscara /25 permite dividir a subrede 200.0.0.0/24 nas subredes 200.0.0.0/25 e
200.0.0.128/25, cada uma delas com 128 endereços. Observe que o último endereço de
cada bloco continua sendo sempre um broadcast para a subrede.

12
SuperRedes
200.0.0.0/24
200.0.0.0/23
200.0.0.0
(256 IPs) 200.0.0.0 200.0.0.0/22
200.0.0.255
200.0.0.0
200.0.1.0/24 (512 IPs)
200.0.1.0 /24 = 255.255.255.0
(256 IPs) /23 = 255.255.254.0
200.0.1.255 200.0.1.255 /22 = 255.255.252.0

(1024 IPs)

200.0.2.0/24
200.0.2.0/23
200.0.2.0
(256 IPs) 200.0.2.0
200.0.2.255
200.0.4.255
200.0.3.0/24 (512 IPs)
200.0.3.0
(256 IPs)
200.0.3.255 200.0.3.255

Edgard Jamhour

As máscaras de tamanho variável permitem também agrupar subredes para formar


superedes. O termo super-rede é as vezes utilizado para designar o bloco de endereços
formado pela agregação de subredes de tamanho menor.

Uma condição para criação das super-redes é que os blocos de endereços que serão
agrupados devem ser contíguos. Por exemplo, considere 4 subredes pertencentes a classe
C: 200.0.0.0/24, 200.0.1.0/24, 200.0.2.0/24 e 200.0.3.0/24. Observe que esses quatro
blocos são contíguos pois o último endereço de um bloco é seguido imediatamente pelo
primeiro endereço do bloco seguinte.

O processo de agrupamento de subredes é igualmente simples. Cada vez que diminuímos


o tamanho da máscara de subrede em 1 bit, criamos um super-rede que tem o dobro do
tamanho da rede original.

Na prática, o conceito de super-redes é bastante útil para diminuir o número de entradas


nas tabelas de roteamento dos roteadores na Internet. Considere, por exemplo, o cenário
anterior no qual havíamos atribuídos 8 prefixos de classe C para uma Universidade com
2024 computadores. Utilizando o conceito de super-rede, toda a Universidade pode ser
representado por um único prefixo de tamanho /21.

13
Máscaras em Notação Decimal Pontuada
• Por default, a máscara de uma rede classe C é
– 255.255.255.0.
– 11111111. 11111111. 11111111. 00000000.
• Para dividir a rede em 2 subredes, utiliza-se a máscara:
– 255.255.255.128
– 11111111. 11111111. 11111111. 10000000.
• Para dividir a rede em 4 subredes, utiliza-se a máscara:
– 255.255.255.192
– 11111111. 11111111. 11111111. 11000000.
• Para dividir a rede em 8 subredes, utiliza-se a máscara:
– 255.255.255.224
– 11111111. 11111111. 11111111. 11100000.
• Para dividir a rede em 16 subredes, utiliza-se a máscara:
– 255.255.255.240
– 11111111. 11111111. 11111111. 11110000.

Edgard Jamhour

As máscaras de subrede podem ser representadas em notação decimal pontuada,


conforme mostra a figura acima. A máscara /25 corresponde a uma seqüência de 25 bits
com valor 1, seguidos por 7 bits de valor 0. Os octetos da máscara que são formados
apenas por números 1 recebem a representação decimal 255. Como o último octeto da
máscara possui apenas um bit com valor 1, determina-se a representação decimal deste
octeto calculando-se: 27 = 128. A máscara /25 em notação decimal pontuada torna-se
255.255.255.128.

Para a máscara /26, temos dois bits iguais a 1, sendo que a representação decimal do
último octeto é 27 + 26= 128 + 64 = 192.

O mesmo princípio aplica-se para máscaras menores. Por exemplo, um máscara /17
possui os dois primeiros octetos completos e apenas um bit igual a um no penúltimo
octeto da máscara. Seu valor é portanto: 255.255.128.0. Uma máscara /18 é representado
por 255.255.192.0.

Similarmente, um /9 é representado por 255.128.0.0 e um /10 por 255.192.0.0. Pode-se


definir máscaras ainda menores.

Como veremos adiante, uma máscara importante é a /0, a qual corresponde a


representação decimal 0.0.0.0.

14
Exemplo de Atribuição de Endereços
subrede 3 subrede 2

r3 r2

... ...

50 computadores 50 computadores

200.1.1.0/24 r1

...

100 computadores

subrede1
Edgard Jamhour

Para ilustrar como a estratégia CIDR beneficia ambos, a rede do usuário e os roteadores
da Internet, considere o problema de atribuição de endereços IP para o cenário ilustrado
na figura.

Uma empresa deseja conectar-se a Internet, e para isso obteve junto as autoridades de
registro de endereços da Internet o prefixo de rede 200.1.1.0/24. Apesar de ter recebido
um único prefixo, a empresa precisa interligar três sub-redes, uma com 100
computadores e duas com 50 computadores.

O prefixo 200.1.1.0/24 corresponde a um bloco de 256 endereços, sendo, a princípio


possível conectar a todos os computares. Consideremos inicialmente, uma subdivisão
desse bloco com um máscara /25. Teremos dois prefixos com 128 endereços:
200.1.1.0/25 e 200.1.1.128/25.

O primeiro desses blocos é suficiente para atender a subrede1, com 100 computadores.
Para as duas subredes distantes, dividiremos novamente o prefixo 200.1.1.128 em dois
blocos com 64 endereços:
200.1.1.128/26 e 200.1.1.192/26

15
Exemplo de Atribuição de Endereços
200.1.1.129 200.1.1.193
subrede 3 subrede 2
200.1.1.128/26 200.1.1.192/26

r3 r2

... 200.1.1.0/24 ...


200.1.1.194 200.1.1.243
200.1.1.130 200.1.1.179

r1

...
200.1.1.1 200.1.1.2 200.1.1.101
subrede 1
200.1.1.0/25
Edgard Jamhour

A figura mostra como ficaria a distribuição dos endereços IPs após a divisão em blocos.
A divisão definiu 3 prefixos de rede:

subrede 1: 200.1.1.0/25 (128 endereços)


-Define a faixa de endereços unicast de 200.1.1.1 até 200.1.1.126
subrede 3: 200.1.1.128/26 (64 endereços)
-Define a faixa de endereços unicast de 200.1.1.129 até 200.1.1.190
subrede 2: 200.1.1.192/26 (64 endereços)
-Define a faixa de endereços unicast de 200.1.1.193 até 200.1.1.254

Em todas as subredes, a interface do roteador conectado a subrede recebe o primeiro


endereço unicast do bloco. Os demais computadores recebem os demais endereços do
bloco.

É importante observar que os roteadores da Internet não precisam saber dessa divisão
feita pela empresa. Os roteadores da Internet continuam a ver todas as três subredes
como uma única rede com prefixo 200.1.1.0/24, cujo único ponto de acesso é o roteador
r1.

16
Endereços IP especiais
• Não podem ser atribuídos a nenhuma estação:

– Primeiro endereço do bloco de subrede


• Identificador da subrede
– Último endereço do bloco de subrede
• Broadcast para a subrede
– 127.0.0.0/8:
• Bloco de endereços de loopback
– 0.0.0.0:
• Identificador da Internet
• Endereço de Inicialização (DHCP)
– 255.255.255.255:
• Broadcast para todas as redes

Edgard Jamhour

Além da classe D, que deve ser utilizada apenas para endereços de multicast, existem
outros endereços IP que não podem ser utilizados no modo unicast, isto é, como endereço
de computadores individuais. Conforme vimos, independente do tamanho do prefixo de
rede, o primeiro e o último endereços de um bloco de endereços são sempre reservados.
O primeiro endereço, juntamente com a máscara de subrede, é utilizado para identificar a
subrede. O último endereços de um bloco sempre representa um broadcast para o bloco.

A IANA (Internet Assigned Number Authority), responsável pela regulamentação de


como os endereços IP são utilizados, definiu também que todo o bloco de endereços
127.0.0.0/8 (isto é de 127.0.0.0 até 127.255.255.255) correspondem a endereços de
loopback, isto é, eles endereçam processo internos ao computador e não podem ser
utilizados para encaminhar pacotes pela rede. Experimente pingar qualquer endereço
dessa faixa no seu computador, e você verá que todos irão responder, pois eles
representam o seu próprio computador.

O endereço 0.0.0.0, além de representar a rede Internet, é usado pelos computadores para
informar que eles não tem um endereço IP válido (por exemplo, durante o processo de
inicialização via DHCP). Um pacote com o endereço de destino 255.255.255.255
representa broadcast para todas as subredes, independentemente do seu prefixo.

17
Loopback = Transmissão Local
• Os pacotes IP com endereço de loopback não são enviados para
camadas inferiores da pilha TCP/IP.
– Eles são tratados localmente pela própria estação
• Recomendação do IETF: 127.0.0.0/8 é reservado para loopback

127.0.0.1

processo processo
A B

porta A porta B

Transporte

Rede

Enlace

Física
Edgard Jamhour

Os endereços de loopback representam sempre uma comunicação no interior do sistema


operacional do computador. Esses endereços indicam que o pacote não deve ser
encapsulado pela camada de enlace, mas ser encaminhado diretamente para o outro
processo, conforme ilustrado pela figura.

Em teoria, se você fizer um ping para o seu próprio computador usando seu endereço
unicast, o pacote deveria descer até a camada de enlace, para depois retornar para as
camadas superiores. Os endereços de loopback eliminam esse problema, pois introduzem
endereços com um comportamento especial.

Na prática, os sistemas operacionais implementam um redirecionamento do pacotes


enviados para o endereço de unicast do computador para o loopback, para evitar o
desperdício de colocar um pacote na rede, que será lido pelo próprio computador.

18
Mapeamento de Endereços
• Um computador com uma única interface de rede é dito “single-
homed”
– Interface de rede = NIC - Network Interface Card.
• Um computador com múltiplas interface de rede é dito “multi-homed”
– Um roteador pode ser considerado como um computador especializado,
do tipo multi-homed.
• Na arquitetura TCP/IP, cada uma das interfaces de rede possui 2
endereços:
– um endereço físico (MAC) e um endereço IP.

Endereços de 48 bits
(6 bytes)

MAC (00-60-08-16-85-B3)
NIC
IP (200.0.0.1)

Edgard Jamhour

O endereço IP não identifica, de fato, um computador, mas sim sua interface de rede. Um
computador com múltiplas interfaces de rede (dito multi-homed) terá múltiplos
endereços IP, um para cada Interface.

Em inglês, as interfaces de rede são referenciadas como NIC (Network Interface Card).
Atualmente, é cada vez mais raro ver “placas de rede”, pois atualmente elas são
implementadas “on-board”, isto é, juntamente com a placa mãe do computador. Observe
que um computador com uma interface Ethernet e outra Wi-Fi possuirá dois endereços
IP, se ambas as interfaces estiverem ativas ao mesmo tempo.

Cada uma das interfaces de rede do computador possui dois endereços: o endereço IP e o
endereço físico (denominado MAC address, de acordo com a nomenclatura proposta pelo
padrão IEEE 802). O IEEE 802 propõe uma subdivisão da camada de enlace do modelo
OSI em duas subcamadas: MAC (Medium Access Control) e LLC (Logic Link Control).
A camada MAC é dependente da tecnologia e o LLC não (isto é, o LLC é comum a todas
as tecnologias). O endereço físico é considerado parte da sub-camada MAC, daí a
denominação.

19
Endereço MAC
• O padrão IEEE 802 define 2 formas de
endereçamento MAC
– endereços administrados localmente
• Quem instala a placa de rede.
– endereços universais
• Pelo fabricante.

1 2 3 4 5 6

Código do Número de
Frabricante Série

Edgard Jamhour

Os endereços MAC (6 bytes) são bem maiores que os endereços IP (4 bytes). Apesar do
tamanho, os endereços MAC não tem relação com a topologia da rede, como os
endereços IP.

Na verdade, sua relação é com o fabricante da interface de rede. As interfaces de rede,


presentes no computador já vem com um endereço MAC pré-definido, formado pelo
código do fabricante seguido de um número de série.

Muitos drivers de interface de rede permitem alterar o endereço MAC. Se o usuário não
quiser correr o risco de entrar em conflito com o endereço MAC de algum outro
computador de sua rede, ele deve tomar o cuidado de utilizar a faixa de endereços dita:
administrada localmente.

Os casos onde a administração local dos endereços é necessária ou vantajosa é


absolutamente rara. Nenhuma aplicação de usuário utiliza o endereço MAC para
endereçar outro computador. A forma de endereçar os computadores, na arquitetura
TCP/IP é sempre feita utilizando-se o endereço IP. Cabe ao próprio sistema operacional
do transmissor descobrir o endereço MAC do destinatário antes de fazer o
encapsulamento de um pacote dentro de um quadro.

20
Filtragem de Endereços

IP
REDE
MAC INTERRUPÇÃO

FÍSICA

MACD = PLACA DE REDE LOCAL


MACD = BROADCAST (FF.FF.FF.FF.FF.FF)

MACD MACO IPO IPD DADOS CRC


Edgard Jamhour

O tratamento dos endereços MAC e IP não estão apenas em camadas distintas do modelo
OSI, eles são tratados por processadores distintas.

A interface de rede do computador possui se próprio processador para interpretar os


quadros de forma independente da CPU principal do computador. Isto é necessário, pois
a interface de rede está sendo constantemente bombardeada por quadros, que muitas
vezes não devem ser interpretados pelo computador.

A placa de rede só irá incomodar a CPU principal do computador em três situações


específicas. A primeira é se o endereço MAC de destino do quadro coincidir com o
endereços MAC da interface de rede. O segundo é se o endereço MAC de destino for um
broadcast, isto é, o endereço MAC especial FF.FF.FF.FF.FF.FF (todos os bits iguais a 1).
O terceiro é se o endereço MAC de destino for um MAC de multicast, de um grupo ao
qual a interface de rede também pertença. O tópico de multi-cast será discutido mais
adiante no curso.

Nessas situações, a interface de rede gera uma interrupção, e envia o pacote para a
camada de rede, para que ele seja processado.

21
Relação entre IP e MAC

endereço IPA Estação A Estação B endereço IPB

endereço NIC NIC endereço físico


físico MACA MACB

datagrama

MACB MACA IPA IPB Dados

quadro

Edgard Jamhour

Quando A e B estiverem na mesma rede física, a relação entre os endereços MAC e IP é


de um para um. Isto é, um quadro enviado de uma estação A para uma estação B irá
conter os endereços MAC e IP de B e A.

Como veremos adiante, se eles estiverem em redes físicas diferentes, isto é, separados
por um roteador, o endereço MAC do roteador irá aparecer, eventualmente, no lugar dos
endereços MAC de B e A.

Em todos esses casos, o computador A não conhece previamente o endereço MAC de B.


Para manter a independência da arquitetura TCP/IP em relação a tecnologia da camada
de enlace, a identificação do endereços de destino é feita sempre em termos de endereço
IP.

Quando o pedido de envio de um pacote destinado ao endereço IPB chega na camada de


rede do computador A, um mecanismo extra é utilizado a fim de descobrir o endereço
MAC de B. Este mecanismo é baseado em um protocolo de camada 3, denominado ARP:
Address Resolution Pprotocol.

22
Address Resolution Protocol - ARP
• O ARP é um protocolo que efetua a descoberta do endereço MAC de
um computador a partir do endereços IP.
– As mensagens são passadas para a camada de rede especificando o
destinatário através do endereço IP.
– O protocolo ARP precisa determinar o endereço MAC do destinatário para
a camada de enlace de dados.

Rede IP ORIGEM IP DESTINO Dado

Enlace de Dados Tipo MAC de MAC de Dado ECC


LLC +MAC Destino Origem

Edgard Jamhour

O protocolo ARP (Address Resolution Protocol) é utilizado para resolução de endereços


MAC para IP. O protocolo foi originalmente desenvolvido para operar apenas com o
Ethernet, mas foi posteriormente expandido para operar com outras tecnologias de
camada 2.

Este protocolo é baseado em duas mensagens. A estação transmissora envia uma


mensagem denominada ARP Request informando o endereço IP do destinatário e
solicitando seu endereço MAC. A estação que tiver o endereço IP responde com um
mensagem de ARP Reply informando seu endereço MAC.

É importante observar que todo este processo ocorre efetivamente antes que o primeiro
pacote enviado pelas camadas superiores seja efetivamente transmitido. Isto é, o pedido
de envio de um pacote IP fica congelado até que o protocolo ARP termine o processo de
descoberta.

Esse processo é bastante custoso, e como veremos adiante, seu custo é minimizado com o
uso de um mecanismo de cache de endereços MAC.

23
ARP

qual o MAC do IP 200.0.0.2 ? o MAC do IP 200.0.0.2 é C ?

ARP ARP
REQUEST REPLY

A B C

200.0.0.3 200.0.0.4 200.0.0.2

Edgard Jamhour

A mensagem ARP request é uma mensagem enviada em broadcast, isto é, seu endereço
MAC de destino é FF.FF.FF.FF.FF. Todos os computadores que estiverem em uma
mesma rede física recebem todas as mensagens de ARP Request enviadas. Isso ocorre
mesmo que os computadores estejam ligados em um Switch. Os computadores que
recebem a mensagem ARP mas não possuem o endereço IP solicitado ignoram a
mensagem. Somente o computador com o IP solicitado envia o ARP Reply em unicast.

O protocolo ARP possui os seguintes campos principais:

Tipo de Hardware: especifica a tecnologia da camada de Enlace. Atualmente várias


opções são suportadas, como Ethernet, ATM, FrameRelay e HDLC.
Tipo de Protocolo: especifica a tecnologia da camada de Rede. No caso a arquitetura
TCP/IP, o protocolo IPv4.
Tamanho do Endereço de Hardware: 6 bytes no caso do MAC
Tamanho do Endereço de Protocolo: 4 bytes para o IPv4
Tipo de Mensage: Arp Request e Arp Reply, entre outras.
Endereço de Hardware do Transmissor: MAC do transmissor
Endereço de Protocolo do Transmissor: IP do transmissor
Endereço de Hardware do Alvo: MAC que precisa ser descoberto
Endereço de Protocolo do Alvo: IP do computador de destino

24
ARP
• O protocolo ARP compara o endereço IP de todos os datagramas
enviados na ARP Cache.
– Se ele for encontrado, o endereço MAC é copiado da cache.
– Se não, um pacote ARP Request é enviado em broadcast para subrede.
• Se o destinatário final for um endereço IP externo, o ARP resolve o endereço
para o roteador ao invés do destinatário final.

ARP Cache
endereço IP endereço MAC tipo
200.0.0.1 00-60-08-16-85-B3 dinâmico
200.0.0.3 00-60-08-16-85-ca dinâmico

Edgard Jamhour

O envio de mensagens em broadcast é altamente prejudicial ao desempenho da rede. Na


presença desse tipo de mensagem, os switches se comportam de forma idêntica aos Hubs,
ou seja, uma mensage ARP recebida em uma porta é transmitida para todas as demais.

Uma rede com muitos computadores pode apresentar um alto nível de mensagens em
broadcast. Essas mensagens provocam o congestionamento da rede, e levam ao natural
decréscimo no desempenho da rede.

Além disso as mensagens em broadcast não são filtradas pelas interfaces de rede dos
computadores, e seu conteúdo precisa ser interpretado pela CPU do computador,
roubando tempo de processamento das aplicações dos usuários.

Para reduzir a quantidade de mensagens ARP geradas, uma processo de cache é


utilizado. Todo endereço MAC descoberto é armazenado na cache ARP, com um certo
tempo de vida (geralmente 5 minutos). Antes de enviar uma mensagem ARP, o sistema
operacional consulta a cache, e só envia a mensagem caso não encontre o endereço IP do
destinatário nessa tabela.

25
O ARP só funciona na rede local

ARP request o roteador não propaga broadcast

Edgard Jamhour

Por default, as mensagens em broadcast não atravessam roteadores. Apesar de ser


possível configurar roteadores para encaminharem mensagens em broadcast, isto não é
feito (certamente não pelos roteadores da Internet).

Dessa forma, as mensagens ARP não atravessam roteadores, e um computador não é


capaz de determinar o endereço MAC de um computador que esteja localizado em uma
outra rede física. Na verdade, ele não precisa. Quando um computador constrói um
quadro, ele só irá tentar localizar o endereço MAC do destinatário caso ele possua o
mesmo prefixo de rede que ele. Se ele possuir um outro prefixo de rede, o quadro deverá
ser encaminhado para um roteador.

Dessa forma, uma mensagem ARP ainda é enviada, mas não para localizar o MAC do
computador de destino, mas para localizar o MAC do roteador.

26
Detecção de Endereços IP Duplicados

qual o MAC do IP 200.0.0.2 ? o MAC do IP 200.0.0.2 é C ?

ARP ARP
REQUEST REPLY

A B C

200.0.0.2 200.0.0.4 200.0.0.2

Edgard Jamhour

O ARP é utilizado para identificar se existem IP’s duplicados.

Quando o endereço IP de uma maquina é configurado, ela envia uma mensagem ARP
perguntando o MAC desse IP. Se alguém responder, então o endereço já existe.

O computador que teve seu endereço duplicado também consegue determinar que houve
duplicação de endereço, pois seu endereço IPv4 irá aparecer no campo “endereço de
protocolo do transmissor” na mensagem ARP request recebida.

O mecanismo não funciona, evidentemente, para detectar endereços IPs duplicados em


outras redes físicas, uma vez que as mensagens ARP Request não podem atravessar os
roteadores. Na verdade, o processo de usar endereços IP duplicados na Internet é,
atualmente, um mecanismo bastante usado, conhecido como endereçamento privado.
Esta forma de endereçamento será estudada mais adiante no curso.

27
Roteamento
comunicação intra-
rede.

REDE
internet

REDE

REDE
REDE

comunicação inter-
redes

Edgard Jamhour

Ao analisar o funcionamento do protocolo ARP, fica claro que o modo de funcionamento


do encaminhamento de pacotes no interior de uma rede física difere da forma como eles
são encaminhados entre redes físicas distintas.

O processo de comunicação intra-rede, isto é, entre dois computadores com o mesmo


prefixo de rede, situados na mesma rede local, não envolve roteadores.

O processo de comunicação inter-rede, por outro lado, é totalmente intermediado pelos


roteadores.

Quem decide se um pacote irá ou não passar por roteadores é o próprio computador
transmissor. Ele faz isso analisando endereço do destinatário e comparando com o seu
próprio prefixo. Se o prefixo do destinatário for igual ao seu a comunicação é intra-rede,
se for diferente, é inter-rede.

28
Roteamento
• Comunicação intra-rede
– Os endereço FÍSICO de destino é o endereço MAC do computador de
destino.
• Comunicação inter-redes
– O endereço FÍSICO de destino é o endereço MAC do roteador ligado a
mesma rede física que a estação transmissora.

INTRA-REDE
MAC MAC IP IP DADOS
DESTINO ORIGEM ORIGEM DESTINO

INTER-REDES
MAC MAC IP IP DADOS
ROTEADOR ORIGEM ORIGEM DESTINO

Edgard Jamhour

A maneira como o computador constrói um quadro depende da comunicação ser intra-


rede ou inter-rede.

Se a comunicação é intra-rede, o computador determina o endereço MAC do destinatário


utilizando o protocolo ARP, e constrói um quadro com o endereço físico de destino
endereçando diretamente o destinatário.

Se a comunicação é inter-rede, o computador determina o endereço MAC do roteador da


sua rede, também utilizando o protocolo ARP, e constrói um quadro com o endereço
físico do roteador, ao invés do endereço físico do destinatário.

Em ambos os casos, o endereço IP de destino é sempre o do computador para quem o


pacote deve ser enviado. Outro aspecto importante, é que o IP do roteador nunca aparece
nos pacotes.

29
Comunicação Inter-Redes
• O endereço IP de origem e de destino se mantém os mesmos durante
todos os saltos de um pacote através de vários roteadores.
• O endereço MAC é modificado para endereçar os elementos
participantes de cada salto.

200.0.0.2/24 Router 1 Router 2 210.1.2.3/24

emissor receptor

MAC1 MAC2 MAC3 MAC4 MAC5 MAC6

Edgard Jamhour

Durante o processo de encaminhamento de um pacote, numa transmissão inter-redes, os


endereços MAC de origem e destino são alterados de maneira a refletir o enlace por onde
o quadro está sendo encaminhado. A tecnologia Ethernet nem sempre é utilizado nos
enlaces ponto a ponto dos roteadores, mas nesse exemplo, vamos supor que todos os
enlaces são Ethernet.

No exemplo da figura, o emissor encaminha o primeiro quadro para o endereço MAC do


roteador 1 (MAC2). Quando o roteador 1 encaminha o quadro para o roteador 2, os
endereços físicos de origem e destino são respectivamente MAC3 e MAC4 . Quando o
roteador 2 entrega o quadro para o receptor, os endereços físicos de origem e destino são,
respectivamente, MAC5 e MAC6.

Observe que o emissor não precisa conhecer o endereço MAC do destinatário, e que o
receptor, ao receber o quadro, não sabe qual o endereço MAC do transmissor. Numa
comunicação inter-redes, são os endereços IPs os responsáveis por pelo endereçamento
fim-a-fim. Os endereços físicos são responsáveis pelos endereçamentos no interior dos
enlaces.

30
Comunicação Inter-Redes

B A IPA IPD D C IPA IPD


B C

IPB IPC

A D

IPA IPD

Edgard Jamhour

A figura o processo de encapsulamento de um pacote, quando este atravessa um roteador.

Antes de enviar o pacote, se o endereço MAC já não estiver em sua cache ARP, o
computador A enviar uma mensagem ARP Request em broadcast a fim de determinar o
endereço MAC do roteador. Após descobrir o endereço, o computador criará um quadro
onde o endereço de destino é o endereço MAC da interface do roteador que está do seu
lado da rede.

Quando o roteador receber o quadro, ele extrai o pacote e se preparar para construir um
novo quadro. Ao analisar o endereço de destino do pacote, o roteador determinar que
precisar descobrir o endereço MAC do computador IPD. Para isso, ele envia uma
mensagem ARP request em broadcast por sua interface C, a fim de determinar o MAC de
IPD.

Após descobrir o endereço MAC ele criar um novo quadro, que tem o seu próprio MAC
como origem e o endereço MAC do computador IPD no destino.

31
Exemplo
segundo salto:
primeiro salto:
IP origem: 10.0.0.2 terceiro salto:
IP origem: 10.0.0.2
IP destino: 30.0.0.2 IP origem: 10.0.0.2
IP destino: 30.0.0.2
endereço físico de origem: C IP destino: 30.0.0.2
endereço físico de origem: A
endereço físico de destino: D endereço físico de origem: E
endereço físico de destino: B
endereço físico de destino: F

quadro
quadro quadro

rede 10.0.0.0 rede 20.0.0.0 roteador rede 30.0.0.0


roteador

emissor IP: 20.0.0.3 receptor


endereço físico: D
IP: 30.0.0.3
IP: 10.0.0.2 endereço físico: E IP: 30.0.0.2
endereço físico: A endereço físico: F

IP: 10.0.0.3 IP: 20.0.0.2


endereço físico: B endereço físico: C

Edgard Jamhour

A figura ilustra o processo de construção de quadros durante a transmissão de um pacote


do computador com IP 10.0.0.2 para o computador com IP 30.0.0.2.

O que se deve ter em mente neste processo é que os endereços físicos da camada de
enlace (os endereços MAC) não tem significado global. De fato, nunca ser verá um
quadro que aponte para um endereço MAC que pertença a uma outra rede. O termo
protocolo de enlace á bastante apropriado neste cenário, pois os quadros são utilizados
apenas para transportar um pacote no interior de um enlace.

A fim de atravessar um roteador, um novo quadro deve ser criado para percorrer o
próximo enlace, e assim, sucessivamente, até o pacote chegar no seu destino final.

32
Tabela de Roteamento
• FORMATO GERAL

• REDE DESTINO: 200.1.2.0 255.255.255.0


• GATEWAY ou NEXT-HOP: 200.1.2.1
• INTERFACE: eth0 ou 200.1.2.5
• CUSTO: 1

200.1.2.0/24
200.1.2.0 ENDEREÇO DE BASE

PROPRIEDADE:
O resultado de um E-BINARIO de
qualquer endereço da rede
200.1.2.255 com a máscara resulta sempre no
endereço de base.

Edgard Jamhour

Durante o processo de transmissão de um pacote por uma rede WAN, tanto os


computadores quanto os roteadores precisam determinar se um pacote pode ser entregue
diretamente, ou se deve ser encaminhado para outro roteador. Também é preciso
conhecer o endereço IP dos roteadores neste processo. O processo de encaminhamento
de pacotes IP é denominado roteamento.

Todas as informações necessárias para um computador ou roteador executar a operação


de roteamento estão contidas em uma tabela, denominada “tabela de roteamento”.

Uma tabela de roteamento contém múltiplas entradas, cada uma delas correspondendo as
redes que um computador ou roteador tem acesso. Cada uma dessas estradas é composta
por quatro campos:

Rede de destino: identifica um destino acessível pelo computador ou roteador


Gateway: identifica para qual (interface de) roteador o pacote deve ser encaminhado para
chegar a rede de destino.
Interface: indica por qual das interfaces do dispositivo o pacote deve ser enviado. A
interface pode ser identificada por um endereço IP ou por um nome lógico, dependendo
do sistema operacional do dispositivo.
Custo: permite criar classificar múltiplos caminhos para um mesmo destino.

33
Rede de Destino
• Formada por um endereço de base e uma máscara de subrede.
Exemplos:

– 200.134.51.0 (MASCARA 255.255.255.0):


• Rota para os computadores:
– 200.134.51.0 a 200.134.51.255
– 200.134.0.0 (MASCARA 255.255.0.0):
• Rota para os computadores:
– 200.134.0.0 a 200.134.255.255.
– 200.134.51.6 (MASCARA 255.255.255.255):
• Rota para o computador:
– 200.134.51.6.
– 0.0.0.0 (MASCARA 0.0.0.0)
• Rota para todos os computadores
– 0.0.0.0 até 255.255.255.255

Edgard Jamhour

Uma rede de destino pode ter múltiplos tamanhos. Ela pode ser tão grande quanto a
Internet (0.0.0.0/0), ou tão pequena quanto um simples computador (200.134.51.6/32).

Uma rede de destino é sempre descrita por um endereço de base (o primeiro endereço de
um bloco de endereços) e um máscara de subrede, que determinar o tamanho do bloco.
Por exemplo, a rede 200.134.51.0/24 (isto é, com máscara 255.255.255.0) define um
bloco de endereços que vai de 200.134.51.0 até 200.134.51.255.

Quando um computador ou roteador precisa encaminhar um pacote, ele procura uma


entrada na tabela de roteamento cujo campo rede de destino represente um bloco que
contém o endereço de destino do pacote. Se a operação “E” lógico bit-a-bit entre o
endereço de destino e a máscara da rede de destino resultarem no endereço de base da
rede, então, o endereço pertence ao bloco. Se não, o computador ou roteador irá testar
uma nova entrada na tabela.

Por exemplo, se pegarmos o endereço 200.134.51.34 e fizermos um “E” lógico com


255.255.255.0 (isto é, zerarmos os últimos 8 bits) obteremos 200.134.51.0.

34
Exemplo de Tabelas de Roteamento

200.17.98.1
REDE 200.17.98.0/24

A INTERNET

roteador roteador
1 2

200.134.51.1

10.0.0.2/30
10.0.0.1/30

200.134.51.25 B
REDE 200.134.51.0/24

Edgard Jamhour

Para ilustrar o conceito das tabelas de roteamento, considere o cenário mostrado pela
figura. Todos os dispositivos presentes na figura, isto é, os computadores e os roteadores
possuem tabelas de roteamento.

A princípio, todas as tabelas de roteamento deverão possuir três entradas, uma para cada
rede mostrada na figura. As redes são:

200.17.98.0/24, 200.134.51.0/24 e 0.0.0.0/0

O enlace entre os roteadores 1 e 2 também é uma rede, mas geralmente, não vale a pena
representá-la na tabela de roteamento, uma vez que é possível acessar aos roteadores
pelas outras interfaces. De fato, no caso de um enlace ponto-a-ponto, pode-se utilizar
endereços não únicos, do tipo privado. Como vermos adiante no curso, a IANA define
como endereços privados alguns prefixos de rede, que podem ser usados livremente sem
necessidade de registro junto as autoridades. Os endereços privados não são roteáveis na
Internet, isto é, os roteadores da Internet não possuem rotas para endereços privados.

A máscara /30 é ideal para atribuir endereços a enlaces ponto-a-ponto, pois ela define um
bloco com apenas 4 endereços (sendo apenas dois endereços de unicast).

35
Tabela do computador B

Rede Destino Gateway Interface Custo


200.134.51.0/24 não tem eth0 ou 200.134.51.25 1
200.17.98.0/24 200.134.51.1 eth0 ou 200.134.51.25 1
0.0.0.0/0 200.134.51.1 eth0 ou 200.134.51.25 1

roteador
1

200.134.51.1

200.134.51.0/24

eth0
200.134.51.25 B

Edgard Jamhour

A figura ilustra como seria a tabela de roteamento do computador B. A tabela possui três
entradas, uma para cada rede acessível pelo computador.

A primeira rota indica como o computador deve proceder para encaminhar pacotes para a
sua própria rede. Neste caso, como o campo gateway não é necessário. Muitos sistemas
operacionais representam a condição de encaminhamento para rede local de formas
diferentes. O Windows Vista, por exemplo, indica “sem vínculo” nesse campo. O Linux,
utilizar 0.0.0.0 para indicar que o gateway não é necessário.

O campo interface nesse caso, é idêntico para todas as entradas da tabela uma vez que
computador possui apenas uma interface de rede. Novamente, a forma de representação
desse campo é bastante variável. O nome lógico “eth0” é comumente utilizado pelo
Linux para designar a primeira (ou única) interface de rede do tipo Ethernet do
computador. O sistema Windows Vista, por outro lado, utiliza o endereço IP da interface
nesse campo.

O custo neste caso é sempre 1, pois não existem caminhos alternativos para as redes
listadas na tabela. Nesse caso, qualquer valor de custo seria válido.

36
Seqüência de Análise da Rota

• 1) DA ROTA MAIS ESPECÍFICA PARA A ROTA MAIS GENÉRICA


– ROTA MAIS ESPECÍFICA:
• ROTA COM MENOS ZEROS NA MÁSCARA

• 2) DA ROTA COM MENOR CUSTO PARA ROTA DE MAIOR CUSTO

• 3) ORDEM DAS ROTAS NA TABELA

Edgard Jamhour

Se analisarmos a tabela de roteamento do computador B, encontraremos um problema de


conflito, pois a rede Internet engloba as outras duas redes. Isto é, qualquer endereço de
destino que seja testado pelo computador estará contido na rota para rede Internet,
inclusive os endereços locais.

Felizmente, esse problema não ocorre, pois existe uma convenção sobre ordem em que as
entradas da tabela de roteamento devem ser testadas. Essa convenção é baseada em duas
regras importantes e uma opcional.

A primeira regra diz que uma rota mais específica deve ser sempre testada antes de uma
rota menos específica. Por esse conceito, a rota para Internet é sempre a última a ser
testada. Por exemplo, a rota para 200.134.51.0/24 deve ser testada sempre antes da rota
0.0.0.0/0, pois ela representa um bloco de endereços menor.

A segunda regra diz que se houver empate em relação ao tamanho da máscara, o campo
de custo deve ser utilizado. Nesse caso, uma rota de custo menor deve ser sempre testada
primeiro.

A terceira regra é simplesmente uma forma de desempate para as duas primeiras regras, e
pode ser implementada de diferentes formas de acordo como o desenvolvedor do sistema
operacional.

37
Tabela do Roteador 1

Rede Destino Gateway Interface Custo


200.134.51.0/24 não tem 200.134.51.1 0
200.17.98.0/24 não tem 200.17.98.1 0
0.0.0.0/0 10.0.0.2 10.0.0.1 1

REDE 200.17.98.0/24 REDE 0.0.0.0/0

200.17.98.1 roteador roteador


1 2

200.134.51.1

10.0.0.2/30
REDE 200.134.51.0/24
10.0.0.1/30
Edgard Jamhour

A figura ilustra como seria a tabela de roteamento do roteador 1.

As duas primeiras rotas são ditas rotas locais, pois o roteador possui uma de suas
interfaces diretamente conectada a uma dessas redes. Novamente, nesses casos, nenhum
gateway é necessário. Em muitos sistemas, as rotas locais são indicadas com custo 0,
pois sabe-se que não pode existir uma rota alternativa com custo mais baixo.

Para que o roteador 1 possa encaminhar um pacote para Internet, ele precisa enviá-lo
para o roteador 2. Isto é indicado pela terceira regra da tabela.

38
Tabela do Roteador 2

Rede Destino 10.0.0 Interface Custo


200.134.51.0/24 10.0.0.1 10.0.0.2 1
200.17.98.0/24 10.0.0.1 10.0.0.2 1
0.0.0.0/0 10.0.0.6 10.0.0.5 1

10.0.0.5/30 10.0.0.6/30

REDE 200.17.98.0/24 INTERNET

200.17.98.1 roteador roteador


1 2

200.134.51.1

10.0.0.2/30
REDE 200.134.51.0/24
10.0.0.1/30
Edgard Jamhour

A figura ilustra como seria a tabela de roteamento do roteador 2.

Observe como foram definidos os endereços IP dos enlaces que conectam o roteador 2
com o roteador 1 e com o roteador do provedor de acesso a Internet. O endereços dos
roteadores conectados a um mesmo enlace precisam necessariamente possuir o mesmo
prefixo de rede.

O enlace do roteador 2 com o roteador 1 corresponde a pequena rede 10.0.0.0/30. A


máscara /30 possui apenas 2 bits para identificar os hosts e corresponde, portanto, a um
bloco de apenas 22=4 endereços: 10.0.0.0 a 10.0.0.3. Como o primeiro e últimos
endereços do bloco não podem ser usados, os roteadores receberam os endereços 10.0.0.1
e 10.0.0.2. A máscara /30 recebe a representação 255.255.255.252 em notação decimal
pontuada.

De maneira similar, o enlace entre o roteador 2 e o roteador do provedor da Internet


corresponde a rede 10.0.0.4/30, que compreende os endereços 10.0.0.4 a 10.0.0.7.

39
Rota Default e Gateway Default

Rede Destino Gateway Interface Custo


200.134.51.0/24 não tem eth0 ou 200.134.51.25 1
200.17.98.0/24 200.134.51.1 eth0 ou 200.134.51.25 1
0.0.0.0/0 200.134.51.1 eth0 ou 200.134.51.25 1

O roteador 1 é o gateway default para


roteador a rede 200.134.51.1 pois ele é o
1 caminho para todas as demais redes
200.134.51.1

200.134.51.0/24

eth0
200.134.51.25 B

Edgard Jamhour

Em muitos sistemas operacionais, é comum que o usuário tenha que fornecer um


endereço IP denominado gateway ou roteador padrão. Na prática, o termo gateway
padrão é usado para designar o roteador que dá acesso a Internet. Normalmente, este
roteador é o único roteador que precisa ser conhecido pelo computador.

A tabela de roteamento do computador é gerada automaticamente a partir de três


informações básicas: O IP do computador, a máscara de subrede e o gateway padrão.

Por exemplo, a primeira entrada da tabela de roteamento do computador B corresponde a


rota para sua rede local. Ela é definida fazendo-se um “E” lógico entre o IP
200.134.51.25 e a máscara de subrede /24, resultado no identificador de rede do
computador 200.134.51.0/24.

A terceira entrada da tabela de roteamento é criado a partir da informação sobre o


gateway padrão. Essa rota costuma ser referenciada como rota padrão (ou default) e é a
rota para Internet.

A segunda entrada na tabela de roteamento é desnecessária, pois pode-se considerar que


a rede 200.17.98.0/24 faz parte da Internet, uma vez que ela é acessada pelo mesmo
roteador. Essa rota pode ser eliminada.

40
Múltiplas Rotas e Custos
Rede Destino Gateway Interface Custo
0.0.0.0/0 10.0.0.6 10.0.0.5 1 (10)
0.0.0.0/0 10.0.0.2 10.0.0.1 2 (2)
200.134.51.0/24 10.0.0.6 10.0.0.5 2 (11)
200.134.51.0/24 10.0.0.2 10.0.0.1 1 (1)
200.17.98.0/24 Não tem 200.17.98.1 0

10.0.0.5/30 10.0.0.6/30
REDE 200.17.98.0/24
INTERNET
10 Mbps
R1 R2

100 Mbps 100 Mbps


10.0.0.1/30 R3

10.0.0.2/30
REDE 200.134.51.0/24
Edgard Jamhour

As tabelas de roteamento permitem representar mais de uma rota para um mesmo


destino. Quando o sistema operacional encontra duas entradas para o mesmo destino, ele
sempre selecionará a rota de menor custo. Rotas que não sejam as de menor custo só são
consideradas em caso de falha da rota principal, que ocorre, por exemplo, devido ao
rompimento de um enlace ou falha no hardware ou software de um roteador.

Existem basicamente duas estratégias para definir custos. É primeira é baseado na


contagem do número de saltos (isto é, passagens por um roteador) que um pacote deverá
percorrer até chegar a rede de destino. Esse estratégia, é apropriada apenas em ambientes
onde as velocidades dos enlaces são muito similares.

A segunda estratégia consiste em atribuir custos para os enlaces de maneira inversamente


proporcional a sua velocidade. Geralmente, o custo do enlace é calculado dividindo-se a
maior velocidade de enlace de toda a rede pela velocidade do enlace. Na figura, por
exemplo, os enlaces de 100Mbps teriam custo 1 e o enlace de 10Mbps teriam custo 10.

A tabela mostrada na figura corresponde ao roteador 1. Os valores de custo sem


parênteses foram calculados em hops e os entre parênteses usando a velocidade dos
enlaces.

41
Roteamento com Subredes

200.1.2.1

REDE 200.1.2.0/25
10.0.0.5/30
200.1.2.2 10.0.0.6/30

A INTERNET

roteador roteador
1 2

200.1.2.129

10.0.0.2/30
10.0.0.1/30

200.1.2.130 B
REDE 200.1.2.128/25

Edgard Jamhour

Nos exemplos anteriores foram considerados apenas redes com máscaras padrão, isto é,
mascaras cujo tamanho é multiplo de 8 bits.

Vamos agora considerar a construção de tabelas de roteamento com máscaras de


tamanho variável. Nesse caso, suponha que roteador um conecta duas subredes formadas
pela partição de um bloco de endereços de classe C: 200.1.2.0/24.

A partição do bloco classe C gerou duas subredes de tamanho idêntico (128 endereços):

200.1.2.0/25 (com endereços entre 200.1.2.0 e 200.1.2.255)


200.1.2.128/25 (com endereços entre 200.1.2.128 e 200.1.2.255)

É importante notar, nesse caso, que o roteador 2 não precisa levar em conta a divisão do
bloco C em duas subredes. Como o caminho para chegar as duas sub-redes é idêntico,
isto é, passar pela interface 10.0.0.1 do roteador 1, basta uma única rota para endereçar as
duas redes. As tabelas de roteamento para este cenário estão ilustradas na seqüência deste
capítulo.

42
Tabelas de Roteamento
Computador A
Rede Destino Gateway Interface Custo
200.1.2.0/25 não tem 200.1.2.2 0
0.0.0.0/0 200.1.2.1 200.1.2.2 1

Roteador 1
Rede Destino Gateway Interface Custo
200.1.2.0/25 não tem 200.1.2.1 0
200.1.2.128/25 não tem 200.1.2.129 0
0.0.0.0/0 10.0.0.2 10.0.0.1 1

Roteador 2
Rede Destino Gateway Interface Custo
200.1.2.0/24 10.0.0.1 10.0.0.2 1
0.0.0.0/0 10.0.0.6 10.0.0.5 1

Edgard Jamhour

A tabela correspondente ao computador A utiliza o conceito de rota padrão. Como a


maioria dos computadores, o computador possui apenas duas rotas: uma rota para sua
rede local e outra para Internet.

O roteador 1 possui três rotas, duas locais e uma para Internet.

O roteador 2 possui apenas duas rotas, uma rota para subrede 200.1.2.0/24 e outra para
Internet. Observe que o roteador 2 não precisa conhecer a subdivisão feita sobre o bloco
de endereços classe C. Tudo o que ele precisa saber é que se o endereço de destino
estiver compreendido entre 200.1.2.1 e 200.1.2.254 ele deverá enviar o pacote para a
interface 10.0.0.1 do roteador 1.

Cabe ao roteador 1, nesse caso, decidir para qual das subredes (200.1.2.0/25 ou
200.1.2.128/25) o pacote deverá ser enviado.

Esse processo de agregação de rotas é muito importante para o desempenho da Internet.


Ele permite esconder dos roteadores da Internet as inúmeras subdivisões em redes feitas
dentro de empresas e provedores de acesso a Interent.

43
Conclusão
• Endereçamento baseado em classes

• Endereçamento sem classes (CIDR e VLSM)

• ARP (Address REsolution Protocol)

• Tabelas de roteamento

• Agregação de rotas

Edgard Jamhour

Neste capítulo vimos como a interpretação dos endereços IP foi alterado pelo IANA nos
anos 90. No modelo inicial, dito com classes, o tamanho do prefixo de rede era
determinado pelos primeiros bits do próprio endereço IP, e apenas três tamanhos de rede
estavam disponíveis. No modelo atual, dito sem classe (ou CIDR), o tamanho do prefixo
de um endereço independe de seu valor, e é determinado por um outro número
denominado máscara de subrede que deve acompanhar cada endereço IP. As máscaras de
subrede podem definir qualquer tamanho de prefixo e, por isso, recebem a denominação
de VLSM (Variable Length Subnet Mask).

A integração entre o protocolo IP e a camada de enlace subajacente é feita com o auxílio


do protocolo ARP (Address Resolution Protocol). Este protocolo é responsável por
descobrir o endereço MAC do host de destino a partir do endereço IP. Por ser baseado
em broadcast, o ARP é um dos grandes vilões do desempenho da rede e uma das
motivações para introdução do conceito de VLANs que será estudado mais adiante no
curso.

Finalmente, vimos que todos os elementos envolvidos numa comunicação IP


(computadores e roteadores) possuem tabelas de roteamento. Vimos também que o
conceito de VLSM permite agregar rotas para diminuir o número de entradas nas tabelas
dos roteadores da Internet.

44

Você também pode gostar