14.4 Tunnel
A tunnel is an intermediate system that does not need to understand the contents of transferred data. Even encrypted application data can be transferred through a tunnel. It is used by the SSL or TLS protocols. A tunnel is configured in the Secure option in Figure 14.5.
A tunnel is explained in the following figure:
The client translates a tunnel name into an IP address (1 and 2). The client establishes a TCP connection with the server part of tunnel. Into this created channel, the client usually inserts the CONNECT
command with the DNS name and, optionally, the port of the target server (3). The tunnel translates the target server’s DNS name into the IP address (5 and 6) and establishes a TCP connection with the target server at the port stated in the CONNECT
command.
Now, the tunnel has created two dual carriageway connections. We can imagine the direction of the connection as shown using two pipes in the following figure: