Ask Your Question

Revision history [back]

Generally: ICMP acts on top of IP, so it does'nt contain TCP header.

BUT the question is tricky in a sense that ICMP packets of some types (those ones reporting different problems, like in your trace - TTL exceeded, Destination unreachable etc.) according to RFC792 must contain some chunk of ORIGINAL datagram causing a problem.

In this case if original datagram was TCP, it's header will be present ICMP packet. It's not used for transport purposes though, but only for diagnostics purposes.

Generally: ICMP acts on top of IP, so it does'nt contain it's own (!) TCP header.

BUT the question is tricky in a sense that ICMP packets of some types (those ones reporting different problems, like in your trace - TTL exceeded, Destination unreachable etc.) according to RFC792 must contain some chunk of ORIGINAL datagram causing a problem.

In this case if original datagram was TCP, it's header will be present ICMP packet. It's not used for transport purposes though, but only for diagnostics purposes.

Generally: ICMP acts on top of IP, so it does'nt doesn't contain it's own (!) TCP header.

BUT the question is tricky in a sense that ICMP packets of some types (those ones reporting different problems, like in your trace - TTL exceeded, Destination unreachable etc.) according to RFC792 must contain some chunk of ORIGINAL datagram causing a problem.

In this case if original datagram was TCP, it's header will be present ICMP packet. It's not used for transport purposes though, but only for diagnostics purposes.

Generally: ICMP acts on top of IP, so it doesn't contain it's own (!) own(!) TCP header.

BUT the question is tricky in a sense that ICMP packets of some types (those ones reporting different problems, like in your trace - TTL exceeded, Destination unreachable etc.) according to RFC792 must contain some chunk of ORIGINAL datagram causing a problem.

In this case if original datagram was TCP, it's header will be present ICMP packet. It's not used for transport purposes though, but only for diagnostics purposes.

Generally: ICMP acts on top of IP, so it doesn't ICMP packets don't contain it's their own(!) TCP header.

BUT the question is tricky in a sense that ICMP packets of some types (those ones reporting different problems, like in your trace - TTL exceeded, Destination unreachable etc.) according to RFC792 must contain some chunk of ORIGINAL datagram causing a problem.

In this case if original datagram was TCP, it's header will be present ICMP packet. It's not used for transport purposes though, but only for diagnostics purposes.

Generally: ICMP acts on top of IP, so ICMP packets don't contain their own(!) TCP header.

BUT the question is tricky in a sense that ICMP packets of some types (those ones reporting different problems, like in your trace - TTL exceeded, Destination unreachable etc.) according to RFC792 must contain some chunk of ORIGINAL datagram causing a problem.

In this case if original datagram was used TCP, it's header will be present ICMP packet. It's not used for transport purposes though, but only for diagnostics purposes.

Generally: ICMP acts on top of IP, so ICMP packets don't contain their own(!) TCP header.

BUT the question is tricky in a sense that ICMP packets of some types (those ones reporting different problems, like in your trace - TTL exceeded, Destination unreachable etc.) according to RFC792 must contain some chunk of ORIGINAL datagram causing a problem.

In this case if original datagram used TCP, it's TCP header will be present ICMP packet. It's not used for transport purposes though, but only for diagnostics purposes.

Generally: ICMP acts on top of IP, so ICMP packets don't contain their own(!) TCP header.

BUT the question is tricky in a sense that ICMP packets of some types (those ones reporting different problems, like in your trace - TTL exceeded, Destination unreachable etc.) according to RFC792 must contain some chunk of ORIGINAL datagram causing a problem.

In this case if original datagram used TCP, it's TCP header will be present ICMP packet. It's not used for transport purposes though, but only for diagnostics purposes.

Generally: ICMP acts on top of IP, so ICMP packets don't contain their own(!) TCP header.

BUT the question is tricky in a sense that ICMP packets of some types (those ones reporting different problems, like in your trace - TTL exceeded, Destination unreachable etc.) according to RFC792 must contain some chunk of ORIGINAL datagram causing a problem.

In this case if original datagram used TCP, it's TCP header will be present ICMP packet. It's It is not used for transport purposes though, but only for diagnostics purposes.

click to hide/show revision 10
No.10 Revision

Generally: ICMP acts on top of IP, so ICMP packets don't contain their own(!) TCP header.

BUT the question is tricky in a sense that ICMP packets of some types (those ones reporting different problems, like in your trace - TTL exceeded, Destination unreachable etc.) according to RFC792 must contain some chunk of ORIGINAL datagram causing a problem.

In this case if original datagram used TCP, it's its TCP header will be present ICMP packet. It is not used for transport purposes though, but only for diagnostics purposes.