Cabeçalho do pacote IP: formato, campos
⚡ Resumo Inteligente
O cabeçalho IP é o metadado colocado no início de cada pacote IP, contendo campos como versão, comprimento do cabeçalho, comprimento total, tempo de vida (TTL), protocolo, checksum e os endereços de origem e destino que os roteadores leem para entregar os dados.

O que é cabeçalho IP?
O cabeçalho IP é uma informação adicional presente no início de um pacote IP. Ele exibe informações como a versão do IP, o comprimento do pacote, a origem e o destino.
O formato do cabeçalho IPv4 tem de 20 a 60 bytes de comprimento e contém as informações necessárias para roteamento e entrega. Ele consiste em campos como Versão, Comprimento do Cabeçalho, Comprimento Total, Identificação, Flags, Checksum, endereço IP de origem e endereço IP de destino. Juntos, esses campos fornecem os dados essenciais necessários para a comunicação. transmit o pacote é transmitido de forma confiável de um host para outro.
Componentes/campos do cabeçalho IPv4
O diagrama abaixo mostra o formato completo do cabeçalho IPv4, com cada campo desenhado em sua posição e largura de bits corretas:
A seguir, estão os vários componentes/campos do cabeçalho do pacote IP:
- Versão: O primeiro campo do cabeçalho IP é um indicador de versão de 4 bits. No IPv4, o valor desses quatro bits é definido como 0100, que representa o número 4 em binário. Se o roteador não suportar a versão especificada, o pacote será descartado.
- Comprimento do cabeçalho da Internet: O comprimento do cabeçalho da Internet, abreviado como IHL, tem 4 bits. Também é chamado de HELEN (Header Length). Este componente IP indica quantas palavras de 32 bits estão presentes no cabeçalho.
- Tipo de serviço: O tipo de serviço também é chamado de serviços diferenciados. Code Ponto de acesso direto (DSCP). Este campo fornece informações sobre a qualidade de serviço para streaming de dados ou chamadas VoIP. Os três primeiros bits são os bits de prioridade. Ele também especifica como um datagrama deve ser tratado.
- Comprimento total: O comprimento total é medido em bytes. O tamanho mínimo de um datagrama IP é de 20 bytes e o máximo é de 65,535 bytes. O parâmetro HELEN e o Comprimento Total podem ser usados para calcular o tamanho da carga útil. Todos os hosts devem ser capazes de ler datagramas de 576 bytes. No entanto, se um datagrama for muito grande para os hosts na rede, o método de fragmentação é amplamente utilizado.
- Identificação: A identificação é um campo usado para identificar exclusivamente os fragmentos de um datagrama IP. Alguns recomendam o uso desse campo para outros fins, como adicionar informações ao pacote. tracing.
- Sinalizadores de IP: O parâmetro `flags` é um campo de três bits que ajuda a controlar e identificar fragmentos. As configurações possíveis são: o bit 0 é reservado e deve ser definido como zero; o bit 1 significa não fragmentar; e o bit 2 significa mais fragmentos.
- Deslocamento de fragmento: O deslocamento de fragmento representa o número de bytes de dados à frente de um fragmento específico no datagrama em questão. É especificado em unidades de 8 bytes e tem um valor máximo de 65,528 bytes.
- Tempo de Viver: Este é um campo de 8 bits que indica o tempo máximo que um datagrama pode permanecer no sistema da internet. A cada processamento de um datagrama, seu valor de TTL é decrementado em um. Quando o valor de TTL chega a zero, o datagrama é descartado para evitar a entrega indefinida de pacotes. O valor de TTL pode variar de 0 a 255.
- Protocolo: Este campo do cabeçalho IPv4 indica qual protocolo de internet é transportado na última parte do datagrama. Por exemplo, o número 6 é usado para indicar TCP e 17 para indicar o protocolo UDP.
- Soma de verificação do cabeçalho: O próximo componente é um campo de checksum de cabeçalho de 16 bits, usado para verificar se há erros no cabeçalho. O cabeçalho IP é comparado com o valor do seu checksum. Quando o checksum do cabeçalho não corresponde, o pacote é descartado.
- Endereço de Origem: O endereço de origem é um endereço de 32 bits da origem usada para o pacote IPv4.
- Endereço de destino: O endereço de destino também tem 32 bits e armazena o endereço do destinatário.
- Opções de IP: Este é um campo opcional do cabeçalho IPv4, usado quando o valor de IHL (Internet Header Length) é definido como maior que 5. Ele contém valores e configurações relacionados à segurança, registro de rota, carimbo de data/hora e opções semelhantes. A lista de opções geralmente termina com um marcador de Fim da Lista de Opções (EOL).
- Data: Este campo armazena os dados da camada de protocolo que repassou os dados para a camada IP.
Como calcular o comprimento do cabeçalho IPv4
O campo Internet Header Length (IHL) informa ao roteador exatamente o comprimento do cabeçalho, permitindo que ele saiba onde o cabeçalho termina e os dados começam. Como o campo tem apenas 4 bits de largura, ele não armazena o comprimento diretamente em bytes. Em vez disso, ele conta o cabeçalho em palavras de 32 bits, onde cada palavra equivale a 4 bytes.
Para converter o valor IHL em bytes, multiplique-o por 4:
- Mínimo: O menor valor IHL legal é 5, portanto 5 × 4 = 20 bytes. Este é um cabeçalho sem opções.
- Máximo: O maior valor de IHL é 15, portanto 15 × 4 = 60 bytes. Os 40 bytes extras contêm campos opcionais.
Considere um exemplo prático. Se um pacote chega com um valor IHL de 6, o comprimento do cabeçalho é 6 × 4 = 24 bytes, o que significa que 4 bytes de opções estão presentes após o cabeçalho padrão de 20 bytes. Para encontrar o tamanho da carga útil, subtraiatract o comprimento do cabeçalho do campo Comprimento Total. Se o Comprimento Total for 1,500 bytes e o cabeçalho tiver 24 bytes, então a carga útil será 1,500 − 24 = 1,476 bytes.
Esse cálculo é importante durante a fragmentação, pois um roteador precisa saber o tamanho do cabeçalho para determinar a quantidade de dados que cada fragmento pode transportar sem exceder o limite máximo da rede. Transmission Unidade (MTU).
Cabeçalho IPv4 vs IPv6
O cabeçalho IPv6 foi redesenhado para ser mais simples e rápido de processar do que o cabeçalho IPv4. Ele usa um comprimento fixo e move opções raramente usadas para cabeçalhos de extensão separados, permitindo que os roteadores encaminhem pacotes na velocidade da linha. A tabela abaixo compara os dois cabeçalhos campo por campo:
| Característica | Cabeçalho IPv4 | Cabeçalho IPv6 |
|---|---|---|
| Tamanho do cabeçalho | 20 a 60 bytes (variável) | 40 bytes (fixo) |
| Número de campos | 13 campos mais opções | 8 campos |
| Comprimento do endereço | Origem e destino de 32 bits | Origem e destino de 128 bits |
| Soma de verificação do cabeçalho | Presente | Removido |
| Campos de fragmentação | No cabeçalho base (Identificação, Flags, Offset) | Movido para um cabeçalho de extensão de fragmento |
| Opções | Transportado dentro do cabeçalho | Transportado em cabeçalhos de extensão |
| Campo de comprimento | Comprimento total (cabeçalho mais dados) | Comprimento da carga útil (somente carga útil) |
Como o IPv6 descarta o checksum e as opções de comprimento variável, seu cabeçalho contém menos campos e pode ser processado em hardware sem recálculo por salto.
Por que o cabeçalho IP é importante
Cada campo no cabeçalho IP existe para que roteadores e hosts possam encaminhar um pacote por diversas redes sem uma conexão permanente entre elas. O cabeçalho é o que torna a comutação de pacotes possível.
- Roteamento: O endereço de destino indica a cada roteador para onde encaminhar o pacote, enquanto o endereço de origem permite o retorno de respostas e mensagens de erro.
- Prevenção de loops: O campo Tempo de Vida (Time to Live) é decrementado a cada salto, de modo que um pacote roteado incorretamente é descartado em vez de ficar circulando pela internet indefinidamente.
- Entrega de acordo com o protocolo correto: O campo Protocolo informa ao host receptor se a carga útil deve ser entregue via TCP, UDP ou outro protocolo.
- Integrity e remontagem: O checksum protege o cabeçalho contra corrupção, e os campos Identification, Flags e Fragment Offset permitem que um datagrama fragmentado seja reconstruído na ordem correta.
Para engenheiros de rede, ler esses campos em um TCP / IP A captura costuma ser a maneira mais rápida de diagnosticar pacotes descartados, loops de roteamento e configurações incorretas. Endereços IP.

