Redes de Computadores Curso de Eng. Informática Curso de Eng. de Electrónica e Computadores Trabalho de Laboratório Nº7 Divisão das redes de classe A, B e C em sub-redes 2004/2005 Redes de Computadores Trabalho nº7 1 Objectivo • Identificar razões para usar uma máscara de sub-rede • Distinguir entre uma máscara de sub-rede por omissão e uma máscara de sub-rede personalizada • Identificar os requisitos que determinam a máscara de sub-rede, a quantidade de sub-redes e de hosts por sub-rede • Determinar as sub-redes utilizáveis e os hosts utilizáveis em cada sub-rede • Utilizar o processo AND para determinar se um endereço IP de destino é local ou remoto • Identificar endereços IP válidos e inválidos para hosts, com base no número de rede e na máscara de sub-rede 2 Introdução Este laboratório aborda os conceitos básicos das máscaras de sub-rede IP e o seu uso nas redes TCP/IP. A máscara de sub-rede pode ser usada para dividir uma rede existente em sub-redes. Algumas das principais razões para a utilização de sub-redes são as seguintes: • Reduzir a dimensão dos domínios de broadcast, o que cria redes menores com menos tráfego • Permitir que LANs em diferentes localizações geográficas comuniquem através de routers • Oferecer maior segurança separando uma rede local de outra Os routers separam as sub-redes e determinam quando um pacote pode ir de uma sub-rede para outra. Cada router por onde passa um pacote é considerado um salto. As máscaras de sub-rede ajudam as estações de trabalho, os servidores e os routers numa rede IP a determinar se o host de destino do pacote está na sua própria rede ou noutra rede. Este trabalho de laboratório relembra o conceito de máscara de sub-rede por omissão e, em seguida inside sobre as máscaras de sub-rede personalizadas. As máscaras de sub-rede personalizadas usam mais bits que as máscaras de subrede por omissão, tomando esses bits emprestados à parte de host do endereço IP. Isso divide um endereço IP em três partes: • O endereço de rede original • O endereço da sub-rede, formado pelos bits emprestados • O endereço de host, formado pelos bits deixados após o empréstimo para as sub-redes 2.1 A estrutura dos endereços IP Se uma organização tiver um endereço de rede IP de classe A, o primeiro octeto (8 bits) é atribuído e não mudará. A organização pode usar os restantes 24 bits para definir até 16.777.214 hosts na sua rede. É uma quantidade enorme de hosts. Não é possível colocar todos estes hosts numa rede física sem os separar com routers e sub-redes. É comum que uma estação de trabalho esteja numa rede ou sub-rede e que um servidor esteja noutra. Quando a estação de trabalho precisa recuperar um arquivo no servidor, ela tem de usar a 2 Redes de Computadores Trabalho nº7 sua máscara de sub-rede para determinar a rede ou sub-rede onde está o servidor. A finalidade de uma máscara de sub-rede é ajudar hosts e routers a determinar o local da rede onde um host de destino pode ser encontrado. Consulte a tabela abaixo para relembrar as seguintes informações: • As classes de endereço IP • As máscaras de sub-rede por omissão • A quantidade de redes que podem ser criadas em cada classe de endereço de rede • A quantidade de hosts que podem ser criados em cada classe de endereço de rede Classe de endereço Intervalo decimal do 1o octeto Bits de ordem superior do 1o octeto ID de rede/host (N = Rede, H = Host) Máscara de sub-rede por omissão A 1 – 126 * 0 N.H.H.H 255.0.0.0 B 128 – 191 10 N.N.H.H 255.255.0.0 C 192 – 223 110 N.N.N.H 255.255.255.0 D 224 – 239 1110 Reservado para multicasting E 240 – 254 11110 Experimental, usado para pesquisas Quantidade de redes Hosts por rede (endereços utilizáveis) 126 (27 – 2) 16.382 (214 – 2) 2.097.150 (221 – 2) 16.777.214 (224 – 2) 65.534 (216 – 2) 254 (28 – 2) * O endereço de classe A, 127, não pode ser usado e é reservado para funções de loopback e diagnóstico. 2.2 O processo AND Os Hosts e routers usam o processo AND para determinar se um host de destino está na mesma rede ou não. O processo AND é efectuada sempre que um host pretende enviar um pacote para outro host numa rede IP. Se se desejar ligar a um servidor, é necessário conhecer o endereço IP do servidor ou o nome do host (por exemplo, http://www.cisco.com). Se for usado o nome do host, um servidor DNS (Domain Name Server) converterá esse nome em endereço IP. Inicialmente, o host de origem comparará (AND) o seu próprio endereço IP com sua máscara de sub-rede. O resultado do AND é a identificação da rede onde se encontra o host de origem. Em seguida, comparará o endereço IP de destino com sua própria máscara de sub-rede. O resultado do 2.º AND será a rede onde está o host de destino. Se o endereço de rede de origem e o endereço de rede de destino forem os mesmos, eles poderão comunicar-se directamente. Se os resultados forem diferentes, então eles estarão em diferentes redes ou sub-redes. Se for este o caso, o host de origem e o host de destino precisarão comunicar-se através de routers ou poderão não ser capazes de se comunicarem de todo. O AND depende da máscara de sub-rede. As máscaras de sub-rede são sempre formadas por uns. Uma máscara de sub-rede por omissão para uma rede de classe C é 255.255.255.0 ou 11111111.11111111.11111111.00000000. Ela é comparada ao endereço IP de origem bit a bit. O primeiro bit do endereço IP é comparado com o primeiro bit da máscara de sub-rede, o segundo bit com o segundo e assim por diante. Se ambos os bits tiverem o valor de 1, o resultado do AND será 1. Se os bits tiverem o valor de 0 e 1, ou dois zeros, então o resultado do AND será zero. Basicamente, isso significa que a combinação de dois 1s resulta em 1, e as demais resultam sempre em 0. O resultado do AND é a identificação do número de rede ou de sub-rede onde está o endereço de origem ou destino. 3 Redes de Computadores Trabalho nº7 2.3 Exemplos de aplicação 2.3.1 Duas redes de classe C usando a máscara de sub-rede padrão Este exemplo mostra como uma máscara de sub-rede por omissão de classe C pode ser usada para determinar em que rede está o host. Uma máscara de sub-rede por omissão não divide um endereço em sub-redes. Se for usada a máscara de sub-rede por omissão a rede não está dividida em sub-redes. O host X, com o endereço IP 200.1.1.5 (rede 200.1.1.0), quer enviar um pacote para o host Z, que tem o endereço IP 200.1.2.8 (rede 200.1.2.0). Todos os hosts em todas as redes estão ligados a hubs ou switches e, depois, a um router. Lembre-se de que num endereço de rede de classe C, os três primeiros octetos (24 bits) são atribuídos ao endereço da rede. Então, estas duas redes de classe C são diferentes. O último octeto (8 bits) é deixado para os hosts permitindo que cada rede de classe C poderá ter até 254 hosts (28 = 256 – 2 = 254). Interface do router Interface do router IP 200.1.1.1 IP 200.1.2.1 O processo AND ajuda o pacote a sair do host 200.1.1.5 na rede 200.1.1.0 para o host 200.1.2.8 na rede 200.1.2.0, usando as seguintes etapas: 1. O host X compara seu próprio endereço IP com sua própria máscara de sub-rede, usando o processo AND. Endereço IP do Host X 200.1.1.5 11001000.00000001.00000001.00000101 Máscara de sub-rede 255.255.255.0 11111111.11111111.11111111.00000000 Resultado do AND (200.1.1.0) 11001000.00000001.00000001.00000000 Nota: O resultado do processo AND é o endereço de rede da origem, host X, que é 200.1.1.0. 2. Em seguida, o host X compara o endereço IP de destino, host Z, com sua própria máscara de sub-rede, usando o processo AND. Endereço IP do host Z 200.1.2.8 11001000.00000001.00000010.00001000 Máscara de sub-rede 255.255.255.0 11111111.11111111.11111111.00000000 Resultado do AND (200.1.2.0) 11001000.00000001.00000010.00000000 4 Redes de Computadores Trabalho nº7 Nota: O resultado do AND é o endereço de rede do host Z, neste caso, 200.1.2.0. 3. O host X compara os resultados do AND das etapas 1 e 2 e percebe que são diferentes. O host X sabe agora que o host Z não está na sua rede local (LAN). Por isso, precisa enviar o pacote para o seu gateway por omissão, que é o endereço IP da interface do router, 200.1.1.1, na rede 200.1.1.0. Em seguida, o router repete o processo AND para determinar para que interface deve enviar o pacote. 2.3.2 Uma rede de classe C com sub-redes, usando uma máscara de subrede personalizada Este exemplo usa um único endereço de rede de classe C (200.1.1.0) e mostra como uma máscara de sub-rede de classe C personalizada pode ser usada para determinar em que sub-rede um host está e para encaminhar os pacotes de uma sub-rede para outra. Lembre-se de que num endereço de rede de classe C, os três primeiro octetos (24 bits) são atribuídos ao endereço da rede. Isso deixa um octeto (8 bits) para hosts. Assim, cada rede de classe C poderá ter até 254 hosts (28 = 256 – 2 = 254). Em determinadas situações pode ser desejável ter um total combinado de hosts, estações de trabalho e servidores, inferior a 254 numa única rede. Isto pode acontecer por questões de segurança ou para reduzir o tráfego. O cumprimento deste requisito pode ser obtido criando duas sub-redes e separando-as com um router. Neste caso, criam-se domínios de broadcast independentes, menores, e pode melhorar-se o desempenho da rede e aumentar a segurança. Isto é possível porque essas sub-redes ficaram separadas por um ou mais routers. Considere que serão necessárias pelo menos duas sub-redes e que haverá pelo menos 50 hosts em cada sub-rede. Devido há existência de um único endereço de rede de classe C, só os 8 bits do quarto octeto estarão disponíveis para um total de 254 possíveis hosts. Portanto, será necessário criar uma máscara de sub-rede personalizada. A máscara de sub-rede personalizada será usada para tomar bits emprestados da parte do endereço que representa o host. As etapas seguintes ajudam a criar as sub-redes personalizadas: 1. A primeira etapa para criar as sub-redes é determinar quantas são necessárias. Neste caso são duas. Para determinar quantos bits devem ser emprestados da parte do endereço da rede que representa o host, adiciona-se os valores dos bits da direita para a esquerda até que o total seja maior ou igual ao número necessário de sub-redes. Adicionar o bit um (1) e o bit dois (2) totaliza o valor três. Esse valor é maior que a número necessário para as duas subredes que queremos criar. Então vamos tomar emprestados pelo menos dois bits do endereço de host, começando do lado esquerdo do octeto que o contém. Endereço de rede: 200.1.1.0 Bits do endereço de host do 4º octeto: 1 Valores dos bits de endereço do host (a partir da direita) 1 128 64 1 1 1 1 1 1 32 16 8 4 2 1 Nota: Outra maneira de calcular a quantidade de bits a serem emprestados para as sub-redes é elevar 2 à quantidade de bits emprestados. O resultado deve ser superior ao número necessário para redes. Por exemplo, se forem emprestados 2 bits, o cálculo é 2 elevado a 2, igual a 4. Como a quantidade de sub-redes necessárias é 2, esse valor deve ser adequado. 2. Depois de saber quantos bits devem ser emprestados, tomamos esses bits da esquerda do endereço do host, o quarto octeto. Cada bit tomado do endereço do host diminui o número de bits para os hosts. Embora a quantidade de sub-redes aumente, o número de hosts por 5 Redes de Computadores Trabalho nº7 sub-rede diminui. Como é necessário tomar dois bits emprestados do lado esquerdo, esse novo valor deve aparecer na máscara de sub-rede. A máscara de sub-rede por omissão anterior era 255.255.255.0 e a nova máscara de sub-rede personalizada é 255.255.255.192. O 192 é resultado da adição dos dois primeiros bits da esquerda, 128 + 64 = 192. Esses bits agora passam a 1s e fazem parte da máscara de sub-rede. Restam 6 bits para os endereços IP do host, ou 26 = 64 hosts por sub-rede. Bits emprestados do 4º octeto para a sub-rede: 1 Valores dos bits para subrede: (a partir da esquerda) 1 0 0 0 0 0 0 128 64 32 16 8 4 2 1 Com estas informações, podemos construir a tabela seguinte. Os dois primeiros bits são o valor binário da sub-rede. Os últimos 6 bits são os bits do host. Tomando 2 bits emprestados dos 8 bits do endereço do host, podem-se criar 4 sub-redes (22) com 64 hosts cada uma. As 4 redes criadas ficam assim: • A rede 200.1.1.0 • A rede 200.1.1.64 • A rede 200.1.1.128 • A rede 200.1.1.192 A rede 200.1.1.0 é considerada não utilizável, a menos que o dispositivo de rede suporte o comando IOS ip subnet-zero, que permite utilizar a primeira sub-rede. Número da sub-rede Valor binário dos bits da sub-rede emprestados Valor decimal dos bits da subrede Valores binários possíveis dos bits de host (intervalo) (6 bits) Intervalo decimal de sub-rede/host Sub-rede 0 00 0 000000–111111 0–63 Não 1.ª sub-rede 01 64 000000–111111 64–127 Sim 2.ª sub-rede 10 128 000000–111111 128–191 Sim 3.ª sub-rede 11 192 000000–111111 192–254 Não Pode ser usado? Observe que a primeira sub-rede começa sempre com 0 e, neste caso, aumenta em 64, que é a quantidade de hosts em cada sub-rede. Uma forma de se determinar o número de hosts em cada sub-rede ou o início de cada sub-rede é elevar 2 ao número de bits de host restantes. Como tomamos emprestados dois dos 8 bits para sub-redes e restaram 6 bits, o número de hosts por sub-rede será 26 ou 64. Outra forma de se calcular o número de hosts por sub-rede, ou o incremento de uma sub-rede para a próxima, é subtrair o valor decimal da máscara de sub-rede (192 no quarto octeto) de 256, que é a quantidade máxima de possíveis combinações de 8 bits. O resultado é 64. Isso significa começar a primeira rede em 0 e somar 64 para cada sub-rede adicional. Por exemplo, se a segunda sub-rede for usada, a rede 200.1.1.64 não poderá ser usada como ID do host, pois o ID da rede 64 tem somente zeros na parte que representa o host. 6 Redes de Computadores Trabalho nº7 Outra forma comum de se representar uma máscara de sub-rede é usar a “/número” (/#), onde o # após a barra representa a quantidade de bits utilizados na máscara (rede e subrede combinadas). Por exemplo, um endereço de rede de classe C como 200.1.1.0, com uma máscara de sub-rede por omissão (255.255.255.0), seria escrito como 200.1.1.0 /24, indicando que são 24 bits usados para a máscara. A mesma rede, quando dividida em subredes usando-se dois bits de host emprestados para as sub-redes, seria escrita como 200.1.1.0 /26. Isso indica que 24 bits são usados para a rede e 2 bits para a sub-rede. A máscara de sub-rede personalizada seria representada por 255.255.255.192 em formato decimal pontuado. Uma rede de classe A, 10.0.0.0, com uma máscara por omissão (255.0.0.0) seria escrita como 10.0.0.0 /8. Se 8 bits (o octeto seguinte) estivessem sendo usados para as subredes, ela seria escrita como 10.0.0.0 /16. Isso representaria uma máscara de sub-rede personalizada de 255.255.0.0 em formato decimal pontuado. O número com “barra” após o número da rede é um método abreviado de indicar a máscara de sub-rede que está a ser usada. 7 Redes de Computadores Trabalho nº7 3 Questões finais a. Uma empresa solicitou e recebeu o endereço de rede de classe C, 197.15.22.0. A rede física será dividida em 4 sub-redes que serão interligadas por routers. Pelo menos 25 hosts serão necessários em cada sub-rede. É necessário usar uma máscara de sub-rede personalizada de classe C e um router entre as sub-redes, a fim de encaminhar os pacotes de uma sub-rede para outra. Pretende-se determinar a quantidade de bits que precisam ser emprestados da parte do endereço da rede que representa o host e a quantidade de bits restantes para os endereços de host. Nota: Haverá 8 sub-redes possíveis, das quais 6 poderão ser usadas. Preencha a tabela seguinte e responda às perguntas. Número da sub-rede Valor binário dos bits da sub-rede emprestados Bits da sub-rede em decimal Valores binários possíveis dos bits de host (intervalo) (5 bits) Intervalo decimal de sub-rede/host Pode ser Usado? Sub-rede 0 1.ª sub-rede 2.ª sub-rede 3.ª sub-rede 4.ª sub-rede 5.ª sub-rede 6.ª sub-rede 7.ª sub-rede OBSERVAÇÕES: ___________________________________________________________________ ___________________________________________________________________ ___________________________________________________________________ ___________________________________________________________________ ___________________________________________________________________ ___________________________________________________________________ ___________________________________________________________________ Use a tabela que acaba de ser criada para ajudar a responder às seguintes questões: 1. Que octeto(s) representa(m) a parte de rede de um endereço IP de classe C? ____________________________________________________ 8 Redes de Computadores Trabalho nº7 2. Que(is) octeto(s) representa(m) a parte de host de um endereço IP de classe C? ____________________________________________________ 3. Qual é o equivalente binário do endereço da rede de classe C na situação apresentada? 197.15.22.0 Endereço de rede em binário: __________ __________ __________ __________ 4. Quantos bits de ordem superior foram tomados emprestados dos bits de host no quarto octeto? _______________________________________________________ 5. Qual é a máscara de sub-rede que deve ser usada? Mostre a máscara de sub-rede em decimal e binário. Máscara de sub-rede em decimal: _________ __________ __________ _________ Máscara de sub-rede em binário: _________ __________ __________ _________ 6. Qual é o número máximo de sub-redes que podem ser criadas com essa máscara de sub-rede? ________________________________________________________ 7. Qual é o número máximo de sub-redes utilizáveis que podem ser criadas com essa máscara? _______________________________________________________ 8. Quantos bits restam no 4.º octeto para IDs de hosts? _____________________ 9. Quantos hosts por sub-rede podem ser definidos com essa máscara de sub-rede? ___________________________________________________________________ 10. Qual é o número máximo de hosts que podem ser definidos para todas as sub-redes na situação apresentada? Considere que o maior e o menor número para sub-redes e o maior e o menor ID para hosts de cada sub-rede não podem ser usados. ___________________________________________________________________ 11. 197.15.22.63 é um endereço IP de host válido para esta situação? ___________ 12. Justifique? _______________________________________________________ 13. 197.15.22.160 é um endereço IP de host válido para esta situação? __________ 14. Justifique? _______________________________________________________ 15. O host A tem um endereço IP 197.15.22.126. O host B tem um endereço IP 197.15.22.129. Esses hosts estão na mesma sub-rede? _______ Porquê ? ___________________________________________________________________ ___________________________________________________________________ ___________________________________________________________________ ___________________________________________________________________ ___________________________________________________________________ b. Dado um endereço de rede de classe A, 10.0.0.0 /24, responda às seguintes perguntas 9 Redes de Computadores Trabalho nº7 1. Quantos bits foram tomados emprestados à parte do endereço que representa o host? ___________ 2. Qual é a máscara de sub-rede para esta rede? Decimal pontuado __________________________________________________ Binário ______________ ______________ ______________ ______________ 3. Quantas sub-redes utilizáveis existem? ____________________________________ 4. Quantos hosts utilizáveis existem por sub-rede? ____________________________ 5. Qual é o intervalo de hosts da sub-rede utilizável No. dezasseis? _______________ 6. Qual é o endereço de rede da sub-rede utilizável No. dezasseis? ________________ 7. Qual é o endereço de broadcast da sub-rede utilizável No. dezasseis? ____________ 8. Qual é o endereço de broadcast da última sub-rede utilizável? _________________ 9. Qual é o endereço de broadcast da rede principal? ___________________________ c. A Empresa ABC adquiriu o endereço de classe B, 172.16.0.0. A empresa precisa criar um esquema de sub-redes para oferecer o seguinte: • 36 sub-redes com pelo menos 100 hosts • 24 sub-redes com pelo menos 255 hosts • 10 sub-redes com pelo menos 50 hosts Não será necessário fornecer um endereço para a ligação WAN, pois ele será obtido através do fornecedor de serviços de Internet. Considerando este endereço de rede de classe B e estes requisitos responda às seguintes perguntas 1. Quantas sub-redes são necessárias para esta rede? ___________________________ 2. Qual é a quantidade mínima de bits que podem ser emprestados? _______________ 3. Qual é a máscara de sub-rede para esta rede? _______________________________ Decimal pontuado __________________________________________________ Binário ______________ ______________ ______________ ______________ Formato com barra _________________________________________________ 4. Quantas sub-redes utilizáveis existem? ____________________________________ 5. Quantos hosts utilizáveis existem por sub-rede? ____________________________ 10 Redes de Computadores Trabalho nº7 6. Complete a tabela a seguir considerando as 3 primeiras e as 4 últimas sub-redes Número da sub-rede ID da sub-rede Intervalo de hosts ID de broadcast 7. Qual é o intervalo de hosts da sub-rede dois? _______________________________ 8. Qual é o endereço de broadcast da 126.ª sub-rede? __________________________ 9. Qual é o endereço de broadcast da rede principal? ___________________________ d. Uma Academia clássica adquiriu o endereço de classe C, 192.168.1.0. A academia precisa criar sub-redes para oferecer segurança de baixo nível e controle de broadcast na LAN. Não é necessário fornecer um endereço para a ligação WAN. Ele é obtido através do fornecedor de serviços de Internet. A LAN consiste do seguinte, sendo que cada item precisa da sua própria sub-rede: • Sala de aula n.º 1 28 nós • Sala de aula n.º 2 22 nós • Laboratório de computadores 30 nós • Instrutores 12 nós • Administração 8 nós Considerando este endereço de rede de classe C e estes requisitos responda às seguintes perguntas : 1. Quantas sub-redes são necessárias para esta rede? ___________________________ 2. Qual é a máscara de sub-rede para esta rede? 3. Decimal pontuado ______________________________________________ 4. Binário _____________ _____________ _____________ _____________ 5. Formato com barra _____________________________________________ 6. Quantos hosts utilizáveis existem por sub-rede? ____________________________ 11 Redes de Computadores Trabalho nº7 7. Complete a seguinte tabela: Número da sub-rede ID da sub-rede Intervalo de hosts ID de broadcast 8. Qual é o intervalo de hosts da sub-rede seis? _______________________________ 9. Qual é o endereço de broadcast da 3.ª sub-rede? ____________________________ 10. Qual é o endereço de broadcast da rede principal? ___________________________ 12