Tunneling¶
Tunneling is the act of running traffic through a logical network tunnel, removing the transparency of the forwarding network and allowing for functionalities such as protocol-support, security or traffic-shaping.
Typically, tunnels are realized by appending a header to a packet, which the transporting network utilizes to route the packet to the other end of the tunnel, where the extra header is removed and the original packet is routed further.
Some useful commands for tunneling in VyOS are listed below:
set interfaces tunnel tun0 encapsulation ipip
set interfaces tunnel tun0 source-address <LOCAL HOST IP>
set interfaces tunnel tun0 remote <REMOTE HOST IP>
set interfaces tunnel tun0 address <TUNNEL ADDRESS/MASK>
The tunnel acts as its own network on the router, and can use a lot of the same functionality that an ethernet interface would use.