The IPIP (IPv4 over IPv4) tunnel is one of the tunnel technologies. Similar to the GRE (Generic Routing Encapsulation) tunnel, the start and end of the IPIP tunnel are manually configured. It serves a virtual PTP link and provides a transmission tunnel for the encapsulated packet. The start and end of the tunnel encapsulate and decapsulated the data packet. The IPIP tunnel encapsulates only the IPv4 data packets and enables the encapsulated data packets to be transmitted over other IPv4 network.
When the IP data packet is transmitted over the IPIP tunnel, the tunnel adds an IP packet header. In the IP packet header, the protocol number is set to 4, the source IP address is set to the source IP address of the tunnel, and the destination IP address is set to the destination IP address of the tunnel.
Outer IP header
|
IP header
|
IP Payload
|
IP Payload: indicates the IP packet payload before the packet entering the tunnel. It is a valid payload of the tunnel packet.
IP header: indicates the IP packet heeder before the packet entering the tunnel.
Outer IP header: indicates the encapsulated outer IP packet header. It is a transmission tool which enables the IP packet to be transmitted over another IP network.
After the packet is encapsulated at the start of the IPIP tunnel, a routing is selected for the packet based on the encapsulated destination IP address and then the packet is sent out from the corresponding network interface. The intermediate equipment forwards the packet as the common IP packet until the packet reaches the end of the tunnel.
Contrary to the encapsulation process, in the decapsulation process, the end of the tunnel first analyzes the outer IP header when it receives the packet. If the destination IP address is the IP address of the end of the tunnel, check the protocol field of the IP packet header. If the protocol field is 4, transmit the packet to the IPIP tunnel for handling. The tunnel removes the outer IP header of the packet and chooses a routing for the packet based on the destination IP address of the decapsulated packet. The subsequent handling is performed based on the routing result.