ARQUITETURA TCP /IP 24 SUMÁRIO Introdução 25 Instalando e configurando TCP/IP no windows 25 O Processo de Padronização na Internet 27 Arquitetura TCP/IP 27 Revisão de sistemas de Numeração 29 Endereço IP – Lógico 31 Endereço MAC – Físico 36 Tecnologias da camada de interface de rede 37 Protocolos da camada Internet 38 Protocolos da camada de Transporte 41 Subnetting 44 Utilitários do TCP/IP 47 Verificando a comunicação IP 48 Bibliografia 39 Introdução A arquitetura TCP/IP surgiu com a criação de uma rede patrocinada pelo Departamento de Defesa do governo dos Estados Unidos da América (DoD - Department of Defense). Uma das tarefas essenciais 25 dessa rede seria manter comunicados, nem que fosse apenas uma parte, órgãos do governo e universidades, no caso de ocorrência de guerras ou catástrofes que afetassem os meios de comunicação daquele país. Dessa necessidade, surgiu a ARPANET, uma rede que permaneceria intacta caso um dos servidores perdesse a conexão. A ARPANET necessitava então de um conjunto de protocolos que assegurasse tal funcionalidade esperada, mostrando-se confiável, flexível e de fácil implementação. É então desenvolvida a arquitetura TCP/IP, que se torna o conjunto de protocolos padrão. Para encorajar os pesquisadores universitários a adotar o padrão TCP/IP, o DARPA (Defense Advansed Research Projects) criado para administrar o projeto, fez uma implementação de baixo custo, integrando o TCP/IP ao Sistema Operacional Unix da Universidade de Berkeley (BSD) já em uso em várias universidades americanas. A ARPANET cresceu e tornou-se a rede mundial de computadores – Internet, devido a utilização da arquitetura TCP/IP pelos fabricantes de outras redes, com a finalidade da conectividade com a Arpanet. A normalização do TCP/IP chegou após a sua utilização em massa. Hoje, quando se menciona TCP/IP, vem imediata a associação com a Internet, ocorrendo de modo idêntico o inverso: a Internet está diretamente relacionada à arquitetura TCP/IP. O TCP/IP é um conjunto de protocolos projetado para a comunicação entre computadores que se tornou padrão na indústria e principalmente na Internet. Para um computador comunicar-se com outro na Internet, deve ter o TCP/IP instalado. Existem implementações TCP/IP para diversos sistemas operacionais tais como UNIX e Sistemas operacionais microsoft. Instalando e Configurando o TCP/IP no Windows Para instalar e configurar o TCP/IP no Windows NT 4.0, siga os seguintes passos: 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Do menu INICIAR, selecione Configurações, Painel de Controle Duplo click na Rede ( Network) Click em Protocolos (Protocols) Click em Adicionar (Add) Selecione Protocolo TCP/IP (TCP/IP Protocol) e Click OK Tipo de caminho aparece, click em Continue A instalação é feita Click Close, as propriedades do Microsoft TCP/IP aparecem na caixa de diálogo. Entre com o Endereço IP, Máscara de sub-rede e Default gateway Click ok, as modificações são assumidas e é pedido para “reestartar” o computador. Click Sim (Yes). 26 27 O Processo de Padronização na Internet O TCP/IP é um conjunto (ou pilha) de protocolos para a comunicação na Internet. Seu projeto, arquitetura e futuro estão associados com a Internet. Não existem donos da Internet e de suas tecnologias e sim uma organização que dá a direção necessária para o seu desenvolvimento. Internet Society - ISOC A Internet Society (ISOC) foi criada em 1992 e é uma organização mundial responsável pelas tecnologias e aplicações na Internet. Seu propósito principal é encorajar o desenvolvimento e a disponibilidade da Internet. É ao seu turno responsavél por promover o desenvolvimento de padrões e protocolos que permita a Internet funcionar Os padrões para o TCP/IP são publicados em uma série de documentos chamados de RFCs (Request for Comments) . RFCs descrevem o trabalho interno da Internet. Padrões TCP/IP são publicados em RFCs , apesar de nem todas as RFCs especificarem padrões. Qualquer membro da Internet Society pode submeter um documento para publicação como RFC. Os documentos são revistos por especialistas e é dada uma classificação. A classificação especifica se o documento está sendo considerado como padrão. Arquitetura TCP/IP O modelo OSI (Open System Interconnection) consiste de sete camadas. Quando um computador inicia uma transação para executar alguma tarefa em outro computador, sua ação inicial começa na sua camada de aplicação e termina na camada de aplicação do computador de destino. Cada camada na pilha interage apenas com as duas camadas vizinhas, mas ela passa informações para a sua camada correspondente no computador de destino. O TCP/IP, mapeia para somente 04 camadas o modelo conceitual OSI: as camadas de aplicação, tranporte, Internet e Interface de Rede. 28 FTP, SMTP, Telnet, ... Aplicação Apresentação Sessão Aplicação Interface 0- 65536 Transporte 0- 65536 TCP ICMP UDP Transporte IGMP Internet IP Rede ARP Interface de Rede Tecnologias LAN: Ethernet, Token Ring, FDDI Tecnol ogias W AN: Serial Lines, Frame Relay, ATM Enlace Física Camada de Inter-Rede. Esta camada é responsável por colocar e retirar quadros ou frames no fio Camada Internet Protocolos da camada internet encapsulam pacotes enviados pela camada de transporte em pacotes IP e executam todos o roteamento necessário para chegar ao destino ARP(Adress Resolution Protocol) é usado para obter o endereço de hardware (MAC) de hosts( máquina, computador) localizado no mesmo segmento físico de rede. ICMP(Internet Control Message Protocol) envia mensagens e reportam erros a respeito da entrega de pacotes IP (Internet Protocol)é o responsável principal pelo endereçamento e roteamento de pacotes entre hosts e redes. Camada de Transporte A camada de transporte fornece uma sessão de comunicação confiável entre computadores. O método desejado de entrega de dados determina o protocolo de transporte a ser utilizado. Os dois protocolos de transporte são o “ Transmission Control Protocol” e o “User Datagram Protocol” . O TCP fornece uma comunicação orientada a conexão e confiável .É utilizado em aplicações que tipicamente transferem grandes quantidades de dados no tempo e que requerem uma certeza sobre o recebimento dos dados. O UDP fornece uma comunicação sem conexão e não garante que os pacotes serão entregues. As aplicações que usam o UDP tipicamente transferem pequenas quantidades de dados no tempo. A entrega confiável fica sob a responsabilidade da camada de aplicação. Camada de Aplicação Nesta camada é onde as aplicações ganham acesso à rede. Há muitos serviços e utilitários na camada de aplicação tais como o FTP, Telnet, SNMP, DNS , etc. 29 Revisão de sistemas de numeração Revisaremos alguns tópicos de sistemas de numeração de modo a entender por completo os conceitos das outras sessões Sistema Decimal É um sistema de base 10. Isto significa que são necessários 10 dígitos diferentes para que possa representar todas as variáveis possíveis. São eles: 0,1,2,3,4,5,6,7,8,9 No sistema decimal, cada posição de um dígito vale 10 vezes mais do que a posição imediatamente a sua direita. As posições são consideradas, da direita para esquerda, sendo a 1a posição corresponde ao primeiro dígito a direita. A Base do sistema decimal é 10. Ex.: (9 9 9)10 - Na base decimal costuma-se dispensar o indicador de base. 3a 2a 1a posição Sistema Binário É um sistema de base 2. Isto significa que são necessários 2 dígitos para representar todas as variáveis possíveis, quais sejam , 0 e 1. Os computadores utilizam o sistema binário para armazenar informações em sua memória, daí a importância deste sistema. Os dígitos deste sistema de numeração são denominados BIT , do inglês “Binary digit”. O valor relativo do Bit 1, será duas vezes maior do que seu valor na posição imediatamente mais à direita. Exemplo de um número binário: 11011 - Temos 5 dígitos binários ou seja, 5. Utilizando a notação posicional teremos: N = (11011)2 N = 1 x 2 4 + 1 x 2 3 + 0 x 2 2 + 1 x 21 + 1 x 2 0 N = 16 + 8 + 0 + 2 + 1 = (31)10 Sistema Hexadecimal É um sistema de base 16. Isto significa que são necessários 16 dígitos para representar todos os números possíveis em hexadecimal. São utilizados dez número decimais (0 a 9) e as letras A, B, C, D, E e F, que valem respectivamente 10, 11, 12, 13, 14, 15. O valor de um dígito em hexadecimal será dezesseis vezes maior do que o valor do mesmo dígito na posição imediatamente mais a direita. Utilizando a notação posicional: N = (2CA)16 N = 2x162 + Cx161 + Ax160 N = 2x256 + 12x16 + 10x1 = 512 + 192 + 10 = (714) 10 30 Conversão Binário Hexadecimal Obs.: Como 24 = 16, cada dígito hexadecimal representa 4 dígitos binários. Assim teremos: ( 0 )16 = (0000)2 ( 7 )16 = (0111 )2 (E)16 = (1110)2 ( 1 )16 = (0001)2 ( 8 )16 = (1000)2 (F)16 = (1111)2 ( 2 )16 = (0010)2 ( 9 )16 = (1001)2 ( 3 )16 = (0011)2 ( A )16 = (1010)2 ( 4 )16 = (0100)2 ( B )16 = (1011)2 ( 5 )16 = (0101)2 ( C )16 = (1100)2 ( 6 )16 = (0110)2 ( D )16 = (1101)2 Conversão Binário Decimal 1) (101101)2 = ( )10 = 1x25 + 0x24 + 1x23 + 1x22 + 0x21 + 1x20 = 32 + 0 + 8 + 4 + 0 + 1 = (45)10 Conversão Decimal Binário É obtida dividindo-se sucessivamente o número decimal por 2 , até que o quociente seja menor que a Base. Este quociente, será o algarismo mais significativo (da esquerda) do número na nova Base. Daí vai se compondo o numero a partir do último resto até o algarismo menos significativo que é o resto da divisão inicial. Ex.: 1) Converter (27)10 para Binário ( 27 )10 = ( 11011 )2 31 Endereçamento IP - Lógico Cada computador em uma rede TCP/IP é identificado por um endereço lógico, o endereço IP. Um endereço IP é requisitado para cada máquina ou componente de rede que se comunica utilizando o TCP/IP. O endereço IP identifica a localização de um componente de rede da mesma forma que o endereço da rua e o número da casa identifica uma casa em uma cidade. Da mesma forma que o nome da rua e o número da casa identifica uma única residência, o endereço IP deve ser único. Cada endereço IP define o endereço da rede ( nome da rua na cidade) e o endereço da máquina ( numero da casa na rua) . O endereço de rede identifica os componentes que estão localizados no mesmo segmento físico de rede. Todos os componentes no mesmo segmento físico devem ter o mesmo endereço de rede. A identificação de rede deve ser única, ou seja só existe uma rede com esta identificação. O endereço de host identifica as estações de trabalho, servidores, roteadores, ou outros hosts TCP/IP dentro de um segmento de rede. Uma identificação de host deve ser única em uma identificação de rede. (133.120.75.0) 131.107.1.2 133.120.75.2 2 129.102.12.3 129.102.12.1 133.120.75.1 (129.102.12.0) 133.120.75.3 131.107.1.1 131.107.1.3 129.102.12.1 129.102.12.2 (131.107.1.0) O endereço IP possui 32 bits e é composto por 4 campos de 8 bits (1 byte ) chamados de octetos. Os octetos representam números decimais que variam de 0 à 255. Formato Binário Notação Decimal 1000001101. 01101011.00000011.00011000 131.107.3.4 32 Bits Classe B Identificação da Rede Identificação da Máquina w.x.y.z Exemplo : - Endereço IP = 131.107.3.24 - Identificação da Rede : 132.107.0.0 32 Exercícios: 1 – Converter os números binários para o formato decimal: VALOR BINÁRIO VALOR DECIMAL 10001011 10101010 01111111.00000000.00000000.00000001 10111111.11100000.00000111.10000001 2 – Converter os valores de decimal para o formato binário VALOR DECIMAL VALOR BINÁRIO 250 19 131.107.2.89 209.128.255.254 Classes de Endereços A comunidade da Internet dividiu os endereços IP a em 5 classes para acomodar redes de tamanhos variados. As classes de endereços definem quais bits serão usados para representar a identificação da rede e quais bits serão usados para identificar as máquinas. Elas também definem o número de possíveis redes e o número de possíveis hosts por rede. 1 8 9 16 17 24 25 32 8 9 16 17 24 25 32 Classe A 0 1 Classe B 10 1 Rede Legenda: Host 8 9 16 17 24 25 32 Classe C 110 33 Classe A Endereços da classe A são atribuídos para redes com uma quantidade muito grande hosts. O bit de mais alta ordem é sempre 0 (zero). Os próximos 7 bits, completando o 1 º octeto completam a indentificação da rede. Os 24 bits restantes (os últimos 3 octetos) representam a identificação do host. Classe B Endereços da classe B são atribuídos para grandes redes com uma quantidade média de hosts. Os dois de mais alta ordem são sempre 1 0. Os próximos 14 bits (completando os primeiros dois octetos) completam a identificação da rede. Os 16 bits restantes (os últimos 2 octetos) representam a identificação do host. Classe C Endereços da classe C são usados em pequenas redes locais (LANs).. Os três de mais alta ordem são sempre 1 1 0. Os próximos 21 bits (completando os primeiros três octetos) completam a identificação da rede. Os 8 bits restantes (os últimos 2 octetos) representam a identificação do host. Classe D Utilizada para endereço de Multicast. Os quatro primeiros bits estão selecionados (maior ordem) para 1 1 1 0 (um um um zero). Não existe divisão endereço de rede e máquina (host). Classe E Não disponível para uso geral; é reservada para uso o futuro. Os quatro primeiros bits estão setados para 1111. 1- Identificação de Rede não pode ser 127 - 127 é utilizado para funções de lookback 2- Identificação de Rede e de Host não pode ser 255 ( todos bits iguais a 1) - 255 é um endereço de broadcast 3- Identificação de Rede e de Host não pode ser 0 ( todos bits iguais a 1) - 0 significa " esta rede somente". 4- Identificação de Host deve ser único na rede Quantidade de Redes Quantidade de máquinas por rede Valores possíveis para o 1º Byte Classe A 126 ( 27 –1) 16.777.214 ( 224 –2) 1- 126 (00000001 –01111110) Classe B 16.384 (2 14 –1) 65.534 ( 216 –2) 128-191 (10000000 –10111111) Classe C 2.097.152 ( 221-1) 254 ( 28 –2) 192-223 (11000000 –10011111) 34 Atribuição de uma identificação de Rede Um endereço de rede identifica hosts TCP/IP que estão localizados no mesmo segmento físico de rede. Todos os hosts no mesmo segmento físico de rede devem possuir o mesmo endereço de rede para poderem comunicarem-se uns com os outros. Se suas redes estão conectadas por roteadores, uma única identificação de rede é exigida para cada rede de conexão . Redes 1 e 3 representam duas redes roteadas. Rede 2 representa uma rede de conexão entre dois roteadores. A rede 2,por tanto, também exige uma identificação de rede. 1 2 ROTEADOR 3 ROTEADOR 192. 121 .73 . z 124. x . y . z 131.107 . y . z Nota : Se você planeja conectar sua rede a Internet , deve obter uma identificação de rede, de forma a garantir que a identicação da mesma seja única na Internet. ENDEREÇOS NÃO-VÁLIDOS NA INT ERNET Classe A = 10.0.0.0 Classe B = 172.16.0.0 - 172.31.0.0 Classe C = 192.168.1.0 - 192.168. 254.0 Atribuição de uma identificação de Host Uma identificação de host identifica um host dentro de uma rede e deve ser único para a identificação de rede. Todos os hosts TCP/IP, incluindo interfaces de roteadores requerem identificação de rede única. O identificação da interface do roteador é o endereço IP configurado como gateway default quando o TCP/IP é instalado. Por exemplo, para o host na rede 1 com um endereço IP 124.0.0.27. o endereço IP do gateway default é 124.0.0.1. Os seguinte tabela lista o range válido de identificação de host para uma rede privada. 35 Classe Range inicial Range Final A B C w . 0. 0 .1 w . x . 0 .1 w . x . y .1 w. 255. 255. 254 w. x. 255. 254 w. x. y.254 124. 0 .0 . 27 131.107 . 0 . 27 124. 0 .0 . 1 192. 121 .73 . 2 124. 0 .0 . 28 131.107 . 0 . 28 ROTEADOR ROTEADOR 192. 121 .73 . 1 131.107 . 0 . 1 124. 0 .0 . 29 131.107 . 0 . 29 192. 121 .73 . z 124. x . y . z 131.107 . y . z Que é uma Máscara de subrede? Máscara é um número de 32 bits usado para: Separar em um endereço IP a parte que identifica a rede da parte que identifica o host na rede. Especificar se o endereço IP de destino é localizado na rede local ou na rede remota. Cada host em uma rede TCP/IP requer uma máscara de subrede – ou uma máscara de subrede default , que é usada quando uma rede não é dividida em subredes, ou uma máscara de subrede customizada, que é usada quando a rede é dividida em subredes. A máscara de subrede default é usada em redes TCP/IP que não são divididas em subredes. Todos os hosts TCP/IP requerem uma máscara de subrede. A máscara de subrede utilizada depende da classe do endereço IP. Todos os bits que correspondem a identificação da rede são setados para 1. O valor decimal em cada octeto é 255 (11111111). Todos os bits que correspondem a identicação do host são setados para 0. CLASSE BITS USADOS NA MÁSCARA DE SUBREDE NOTAÇÃO DECIMAL CLASSE A 11111111 00000000 00000000 00000000 255. 0 . 0 . 0 CLASSE B 11111111 11111111 00000000 00000000 255. 255. 0 . 0 CLASSE C 11111111 11111111 11111111 00000000 Endereço IP 131.107.16.200 Máscara 255. 255. 0 . 0 Identificação de rede Identificação do host 255. 255 . 255 . 0 Exemplo: Classe B 132.107. y. z w. x .16 .200 36 Determinando o destino de um pacote A operação AND é um processo interno que o TCP/IP usa para determinar se o pacote está destinado para um host que está na rede local ou na rede remota. Quando o TCP/IP é inicializado, o endereço IP do host é ANDed com sua máscara de subrede. Antes de o pacote ser enviado, o endereço IP de destino é ANDed com a mesma máscara de subrede. Se ambos os resultados forem iguais. O endereço IP de destino pertence à rede local, caso contrário o pacote é enviado para um roteador. Endereço IP BIT AND BIT = 1 AND 1 1 1 AND 0 0 0 AND 1 0 0 AND 0 0 10011111 11100000 00000111 10000001 and Máscara = 11111111 11111111 00000000 00000000 10011111 11100000 00000000 00000000 Exercícios: 1. Faça o “e lógico” e responda se o destino do pacote é local ou remoto Endereço IP 10011001 10101010 00100101 10100011 Endereço origem IP destino 11011001 10101010 10101100 11101001 Máscara do 11111111 11111111 00000000 00000000 Máscara host origem do host origem 11111111 11111111 00000000 00000000 resultado resultado Endereço MAC - Físico São também chamados de endereços físicos, de hardware ou de enlace. Os dispositivos de um mesmo segmento de rede comunicam-se diretamente uns com os outros, utilizando o protocolo de camada de enlace de dados (ou seja, a Ethernet). São endereços únicos no mundo, estabelecidos pelo IEEE (Institute of Electrical and Electronics Engineers) que possuem 6 bytes em hexadecimal e são codificados por hardware na placa de rede (Ethernet, Token Ring ...) dos dispositivos pertencentes à rede . Quando um endereço MAC é utilizado como endereço de destino num pacote, este só será codificado pela estação que possuir aquele endereço específico. Exemplo de endereço MAC : 00-00-1D-00-26-A3 00-00-1D - Identifica o fabricante 00-26-A3 - Identifica o número de série 37 Existe um endereço MAC de Broadcast (difusão) que é utilizado por certos protocolos para comunicação com todos os nós de um mesmo segmento de rede . Seu valor é : FF-FF-FF-FF-FF-FF Tecnologias de Camada de Interface de Rede As seguintes tecnologias LAN são suportadas pelo IP (Internet Protocol): IP sobre tecnologias LAN e IP sobre tecnologias WAN IP sobre tecnologias LAN Tecnologias LAN suportadas pelo TCP/IP incluem a Ethernet, Token Ring, ArcNet e FDDI Rede Local Token Ring Rede Local Ethernet IP sobre tecnologias WAN Há duas grandes categorias de tecnologias WAN suportadas pelo TCP/IP: serial Lines e packet switched networks. Serial Lines incluem dial-up analógico, linhas digitais e linhas alugadas. e Packet switched networks incluem Frame-relay, X.25 e ATM Como exemplos de protocolos de serial lines temos o PPP e SLIP. Os roteadores, neste exemplo utilizam protocolo de da camada de interface de rede PPP Modens roteador roteador Rede A Rede B Linha privada de Servidor de dados - 64 kbps Acesso Remoto Linha discada - utilizando protocolo da camada de Estação Remota interface de rede PPP Link dedicado X.25 Internet Roteadores Linha discada Provedor 300 Mbps PPP Modem 38 Protocolos da Camada Internet Adress Resolution Protocol (ARP) Hosts devem conhecer cada endereço de hardware (MAC) dos outros hosts para comunicaremse na rede. A resolução de endereços é um processo de mapeamento de endereços IP dos hosts em seu endereço de Hardware O ARP é responsável por obter o endereço de harware dos hosts TCP/IP em redes baseadas em broadcast (como a rede Ethernet). IP destino = 10.12..4.15 MAC = ??? Resolução de um endereço IP local Antes da comunicação entre dois host ocorrer, deve-se resolver o endereço IP do host de destino para o endereço MAC. O processo de resolução inclui um ARP request e um ARP Reply, como se segue: 1. Quando, através do endereço IP dos hosts origem e destino se determina que o endereço IP de destino está na rede local, o host fonte checa o cache ARP para ver se existe ali o endereço MAC do host de destino. 2. Caso não exista, faz um ARP Request : De quem é este endereço IP e qual o seu endereço MAC? O ARP request é enviado por broadcast para todos os hosts locais tal que todos podem recebê-lo e processá-lo. 3. Cada host na rede local recebe o broadcast. Se não encontra um mapeamento em seu cache ignora o pedido. 4. O host de destino envia um ARP Reply diretamente para o host fonte com o seu endereço MAC e mapeia o host fonte em seu cache ARP. Quando o host fonte recebe o Reply, a comunicação é estabelecida. CACHE ARP 129.102.12. 1 CACHE ARP + 129.102.12.7 080040FFED11 080041FFEF11 3 1 IP =129.102.12.7 MAC = 080040FFED11 IP =129.102.12.10 MAC = 990140eFED12 129.102.12.9 129.102.12.8 F D 4 2 Broa dcas t 39 Resolução de um endereço IP Remoto Antes da comunicação entre dois host ocorrer, deve-se resolver o endereço IP do host de destino para o endereço MAC. O processo de resolução inclui um ARP request e um ARP Reply, como se segue: 1. Quando, através do endereço IP dos hosts origem e destino se determina que o endereço IP de destino está em uma rede remota, o host fonte verifica se existe uma rota para a rede ou host de destino. Se não encontra nenhum mapeamento, o host fonte determina o endereço IP do Gateway default. O Host Fonte então checa o cache ARP para ver se existe ali o endereço MAC do Gateway Default. 2. Caso não exista, faz um ARP Request com o endereço IP do Gateway Default. 3. O Gateway Default envia um ARP Reply diretamente para o host fonte com o seu endereço MAC . 4. O Host fonte envia então o pacote de dados para o Gateway Default para que ele entregue o mesmo à rede de destino do host. CACHE ARP 129.102.12. 1 CACHE ARP + 129.102.12.7 080040FFED11 080041FFEF11 3 IP =129.102.12.7 MAC = 080040FFED11 1 129.102.12.8 IP =129.102.12.10 MAC = 990140eFED12 129.102.12.9 F D 4 Dados 2 Broadc ast IP = 10.12.4.1 MAC = AA0150DFED12 Estrutura de um pacote ARP Apesar de criado para a resolução de endereços IP, a estrutura do pacote ARP pode ser adaptado para outros tipos de resolução. 40 Tipo de Hardware Tipo de Protocolo 08 Tamanho Endereço MAC 06 Tamanho do Endereço IP 04 00 Código de Operação MAC do Host Origem IP do Host Origem MAC do Host Destino IP do Host Destino Internet Control Message Protocol (ICMP) Enquanto o protocolo IP é usado para roteamento inter-rede, o ICMP reporta erros e mensagens de controle em nome do IP. ICMP não torna o IP confiável. Ele simplesmente reporta erros e fornece feedback em condições específicas. As mensagens ICMP são transportadas como datagramas IP e são portanto não confiáveis. Um exemplo do uso do ICMP são as mensagens recebidas quando se efetua um ping na rede. Estrutura de um pacote ICMP Tipo Código Checksum Mensagem Pacote IP Pacote ICMP 41 Internet Protocol (IP) IP é um protocolo sem conexão primariamente responsável pelo endereçamento e roteamento de pacotes entre hosts. Sem conexão significa que uma sessão não é estabelecida antes da troca de dados. Assim sendo, IP é não-confiável e a entrega não é garantida. Ele sempre faz o melhor esforço para entregar o pacote. Ao longo do caminho o pacote pode ser perdido, ser entregue fora da seqüência ou duplicado. Uma confirmação não é exigida quando um dado é recebido. O emissor e o receptor não são informados quando um pacote é perdido ou enviado fora da seqüência. Esta confirmação é responsabilidade da camada de transporte. Os seguintes campos são adicionados no cabeçalho de uma pacote quando ele é enviado pela camada de transporte. IP Origem IP Destino Protocolo de transporte (UDP ou TCP) Checksum TTL Protocolos da Camada de Transporte Que é uma Porta ? As aplicações identificam-se a si mesmas unicamente dentro do computador usando um número de porta do protocolo. Por exemplo, aplicações de um servidor FTP usam um específico número de porta TCP para outras aplicações comunicarem com ele. Portas podem usam qualquer número entre 0 e 65.536 (examine o arquivo %systemroot%\system32\drivers\etc\services). Número de portas de aplicações do lado do cliente são dinamicamente atribuídas pelo sistema operacional quando existe um pedido por um serviço e número de portas para aplicações bem conhecidas( 1-1024) são pré-estabelecidas pelo IANA e não são trocadas. Aplicação FTP Server TFTP Server TCP 20,21 Web Server UDP 29 TCP 80 Interf ace 0- 65536 Transporte 0- 65536 TCP ICMP UDP IGMP Internet IP ARP Interface de Rede Tecnologias LAN: Ethernet, Token Ring, FDDI Tecnologias W AN: Serial Lines, Frame Relay, ATM 42 Console telnet >mkdir - Servidor FTP porta TCP 23 - Servidor Telnet porta TCP 21 Porta origem 1999 Prompt dos >get contas.doc Porta origem 2000 2000 AplicaçãoFTP 23 1999 Aplicação Telnet 21 Transmission Control Protocol (TCP) TCP é um serviço de entrega orientado à conexão e confiável. Os dados são transmitidos em segmentos. Orientado-à-conexão significa uma sessão deve ser estabelecida entre os hosts antes da troca dos dados. A confiança é conseguida pela atribuição de um número de seqüência para cada segmento transmitido. O host que está recebendo sabe se todos os segmentos estão sendo recebidos. Uma mensagem de confirmação é enviada pelo host de destino para o host origem de forma que este possa saber se todos os segmentos estão sendo recebidos. Uma porta TCP fornece uma localização específica para entrega das mensagens. Os números de portas abaixo de 256 são definidas como portas comumente usadas. São exemplos as portas 21 (FTP) e 23 (Telnet). Estrutura de um pacote TCP Porta Origem Porta Destino Número de Seqüência Número do Acknoledgment Tamanho dos dados Reservado Flags Windows CheckSum Urgent Pointer 43 Servidor FTP Cliente FTP Filial C Filial A TDP(21) Dado Roteador Seg 3 Seg 2 Seg 1 Filial B Filial D User Datagram Protocol (TCP) UDP fornece um serviço sem conexão e não-confiável. Faz-se o melhor esforço para a entrega. Isto significa que a chegada de todos os segmentos não é garantida, nem o correto sequenciamento dos pacotes. A entrega confiável deve ficar sob a responsabilidade da camada de aplicação. UDP é usado por aplicações que não requerem uma certeza do recebimento dos dados e que são transmitidos em pequenas quantidades por tempo. Para usar o UDP, a aplicação deve saber o endereço IP e o número da porta da aplicação de destino, uma vez que não existe uma conexão prévia. Uma porta UDP fornece uma localização específica para entrega das mensagens. São exemplos as portas 161 (SNMP) e 15 (NETSTAT). É importante notar que portas UDP são distintas e separadas de portas TCP, apesar de algumas delas usar o mesmo número. Estrutura de um pacote UDP Porta UDP Origem Porta UDP Destino Tamanho da Mensagem Checksum Cliente FTP Servidor TFTP Filial C Filial A Seg 3 Dado UDP(69) Roteador Seg 2 Seg 1 Filial B Filial D 44 Subnetting Uma sub-rede é um segmento físico em um ambiente TCP/IP que usa um conjunto de endereços IP derivado de uma única identificação de rede. Dividindo a rede em subredes requer que cada segmento use uma diferente identificação de rede, ou identificação de subrede. A identificação única de subrede é criada para cada segmento pelo particionamento dos bits da identificação do host em duas partes. Uma parte é usada para identificar o segmento como uma rede única, e a outra parte é usada para identificar os hosts. 1 16 Identificação de rede 17 24 25 ID Subnet 32 ID Host Exemplo de classe B Benefícios: - Diminuir o tráfego na rede, reduzindo o número de Broadcast (em situação normal, o broadcast não passa pelo roteador); Aumentar a quantidade de máquinas em um seguimento de rede (o crescimento da rede não implicará na necessidade de novos pedidos de atribuição de novos endereços IP para uma organização) Misturar diferentes tecnologias, como Ethernet e Token ring. - - Antes de implementar subnetting você necessita determinar suas correntes exigências a planejar futuras exigências. - Determinar o número de segmentos físicos em sua rede. Determinar o número de endereços de host exigidos para cada segmento físico. Baseado em suas exigências, defina: - Uma máscara de subrede para sua rede total - Uma única identificação de rede para cada subnet - Um hange de identificação de hosts para cada subnet Definindo a máscara de Sub-rede para a rede total Para definir uma máscara de sub-rede siga os seguintes passos: 1. Converter a máscara de sub-rede do endereço de rede original para o formato binário 2. Verificar a quantidade de bits necessários para representar suas subredes. Por exemplo, se serão necessárias 6 subredes, o valor de 6 em binário é 110. Então a quantidade de bits necessários serão 3. 3. Converter a quantidade de bits necessários da máscara de sub-rede do byte que estava em zero para 1(da esquerda para direita), e converter para o formato decimal. 45 Exemplo: Definindo máscara de subrede para 6 (seis) subredes na Classe B (endereço w.x.0.0 ) Número de subredes = 6 Classe B Mascara padrão = 255.255.0.0 Valor binário = 6 = 110 (3 bits) Mascara em binário = 11111111 11111111 00000000 00000000 (padrão) Máscara em binário = 11111111 11111111 11100000 00000000 (sub-rede) Máscara de sub-rede = 255 . 255 . 224 . 0 Definindo a Identificação das Subredes As identificações que serão utilizadas pelas subredes poderão ser definidas seguindo os seguintes passos: 1. Usando a mesma quantidade de bits da mascara de subrede, liste todas as possíveis combinações. 2. Elimine a combinação com 000 pois simboliza a máscara de sub-rede padrão e 111 porque é a atual máscara de sub-rede. 3 . Converta para decimal os endereços de cada sub-rede. Exemplo: Identicação de rede Classe B (w. x. 0. 0) - Máscara de sub-rede padrão 255.255.0.0 Nova Máscara de sub-rede (6 subredes) = 255.255.224.0 w . x . 00000000. 0 w . x . 00100000. 0 w . x . 01000000. 0 w . x . 01100000 .0 w . x . 10000000 .0 w . x . 10100000. 0 w . x . 11000000. 0 w . x . 11100000. 0 Invalido w. x. 32. 0 w. x. 64. 0 w. x. 96.0 w. x. 128.0 w. x. 160.0 w. x. 192.0 w. x. 224.0 Invalido Identificação das máquinas nas subredes A lista de valores de identificação das máquinas serão os seguintes: Bits 00000000 00100000 01000000 01100000 10000000 10100000 Decimal 0 32 64 96 128 160 Início Invalido w.x.32.1 w.x.64.1 w.x.96.1 w.x.128.1 w.x.160.1 Final Invalido w.x.63.254 w.x.95.254 w.x.127.254 w.x.159.254 w.x.191.254 46 11000000 11100000 192 224 w.x.192.1 Invalido w.x.223.254 Invalido Nova máscara = 255.255.224.0 w.x.32.0 w.x.128.0 w.x.64.0 Router w.x.96.0 w.x.160.0 w.x.192.0 Tabelas de Conversão Classe A ( w.0.0.0), máscara padrão (255.0.0.0) Nº de Subredes (2n –2) 0 2 6 14 30 62 126 254 Nº de bits exigidos 1 2 3 4 5 6 7 8 Máscara de subrede Invalido 255.192.0.0 255.224.0.0 255.240.0.0 255.248.0.0 255.252.0.0 255.254.0.0 255.255.0.0 Nº de máquinas por subrede Invalido 4.194.302 2.097.150 1.048.574 524.286 262.142 131.070 65.534 Classe B ( w.x.0.0), máscara padrão (255.255.0.0) Nº de Subredes (2n –2) 0 2 6 14 30 62 126 254 Nº de bits exigidos Máscara de subrede Nº de máquinas por subrede 1 2 3 4 5 6 7 8 Invalida 255.255.192.0 255.255.224.0 255.255.240.0 255.255.248.0 255.255.252.0 255.255.254.0 255.255.255.0 Invalida 16.382 8.190 4.094 2.046 1.022 510 254 Classe C ( w.x.y.0), máscara padrão (255.255.255.0) Nº exigido de Subredes Invalido 1-2 3-6 7-14 Nº de bits exigidos Máscara de sub-rede Nº de máquinas por subredes 1 2 3 4 Invalido 62 30 14 Invalido 255.255.255.192 255.255.255.224 255.255.255.240 47 15-30 31-62 Invalido Invalido 5 6 7 8 255.255.255.248 255.255.255.252 Invalido Invalido 6 2 Invalido Invalido Utilitários TCP/IP ARP - Address Resolution Protocol Comando relacionado à cache ARP arp –a w.x.y.z (verifica se um deteminado IP já foi resolvido dinamicamente) arp –s w.x.y.z. MAC (mapeamento estático) arp –g (verifica o cache) Ping Verifica se um host está disponível na rede. ping w.x.y.z Ipconfig Verifica a configuração TCP/IP tais como o endereço IP, máscara de sub-rede e default gateway. ipconfig ( no windows 95 utilizar: winipcfg) Tracert Verifica a rota para um host remoto tracert w.x.y.z Route Comando utilizado para visualizar ou modificar a tabela de roteamento local Netstat Exibe estatísticas de protocolos e o estado corrente das conexões TCP/IP Verificando Comunicação IP 1. Ping 127.0.0.1 (endereço de loopback) para verificar que o TCP/IP foi instalado e carregado corretamente. Se não obtiver sucesso: verifique se o TCP/IP foi restartado após o TCP/IP instalado e configurado. 2. Ping seu próprio endereço IP para verificar se foi configurado corretamente. Em caso de insucesso: Verifique se o endereço IP foi digitado corretamente (no painel de controle de rede) 3. Ping o gateway default para se o gateway default está funcionado corretamente e se a comunicação está disponível na rede local. Em caso de insucesso : Verifique se está usando um endereço IP e uma máscara corretamente 4. Ping um host remoto para verificar a conexão para a WAN. Em caso de insucesso: Verifique se o IP do gateway default está digitado corretamente Esteja certo que o host remoto está funcional Verifique se o link entre os hosts está funcional. Bibliografia - Arnett, Matthew, Flnt – Desvendando o TCP/IP – Editora Campus – 1996. 48 - Course Number 688 – Internetworking with Microsoft TCP/IP in Microsoft Windows NT 4.0 (Microsoft) Internet 49