Could someone please explain the difference between tunnelling IP data using ICMP packets and tunnelling TCP data via ICMP?
Obviously I know this is going to be something relevant to the different OSI layers, but what actually is it which is done at a different layer?
I slightly understand the general concept of tunnelling, but not "tunnelling IP or TCP over ICMP", what is actually happening?