IP Tunneling ICMP vs Tunneling TCP?

0

Alguém poderia explicar a diferença entre o encapsulamento de dados IP usando pacotes ICMP e tunelamento de dados TCP via ICMP?

Obviamente, sei que isso será algo relevante para as diferentes camadas OSI, mas o que realmente é feito em uma camada diferente?

Eu entendo um pouco o conceito geral de tunelamento, mas não "tunelamento de IP ou TCP por ICMP", o que realmente está acontecendo?

    
por Shane 08.01.2012 / 18:18

1 resposta

0

Tunneling IP data using ICMP packets

Pacotes ICMP são usados para encapsular datagramas IP. Esse datagrama IP pode ser: um pacote UDP, parte de um segmento TCP, parte de uma unidade de dados de protocolo SCTP / GRE / MPLS ou qualquer outro protocolo superior à camada 2.

Tunneling TCP data via ICMP

Os pacotes ICMP são usados para encapsular segmentos TCP, ou datagramas IP que consistem apenas em segmentos TCP.

Uma solicitação de eco ICMP permite que o remetente especifique uma carga útil. Um "hack" do ICMP poderia, por exemplo, explorar esse fato e colocar um pacote TCP no payload. Algo na ponta receptora teria que saber disso e jogar o jogo também. Se você for criativo com os outros tipos de solicitação do ICMP, provavelmente poderá fazer muito.

Um ótimo exemplo de torcer um protocolo para um uso que não era pretendido é iodine ( link ) que túneis IP sobre solicitações de DNS.

(Nota: observe que há um "campo de protocolo" no cabeçalho IP que identifica qual o protocolo da camada superior está sendo transportado. TCP é o protocolo nº 6, GRE é o protocolo nº 47, etc. ( link )

    
por 18.07.2012 / 22:37