Generic Routing Encapsulation protocol can be used as logical point-to-point links, encapsulating most any traffic over a tunnel as unicast. The unicast feature being useful over IPSEC as IPSEC only works over unicast traffic.
Assuming all destinations are routable
– creating a basic GRE Tunnel
over the following topology:
Simple Topology–
R1–
R1#conf t Enter configuration commands, one per line. End with CNTL/Z. R1(config)#int tunnel 100 R1(config-if)#tunnel source loopback 0 R1(config-if)#tunnel destination 10.35.0.1 *Mar 1 00:01:05.803: %LINEPROTO-5-UPDOWN: Line protocol on Interface Tunnel100, changed state to up
R3–
R3#conf t Enter configuration commands, one per line. End with CNTL/Z. R3(config)#interface tunnel 100 R3(config-if)#ip address 172.16.0.2 255.255.255.252 R3(config-if)#tunnel source loopback 0 R3(config-if)#tunnel destination 10.15.0.1 *Mar 1 00:12:56.219: %LINEPROTO-5-UPDOWN: Line protocol on Interface Tunnel100, changed state to up
Gateway of last resort is not set 172.16.0.0/30 is subnetted, 1 subnets C 172.16.0.0 is directly connected, Tunnel100 10.0.0.0/8 is variably subnetted, 4 subnets, 2 masks C 10.10.0.0/24 is directly connected, FastEthernet0/0 C 10.15.0.1/32 is directly connected, Loopback0 O 10.20.0.0/24 [110/20] via 10.10.0.2, 00:11:28, FastEthernet0/0 O 10.35.0.1/32 [110/21] via 10.10.0.2, 00:11:28, FastEthernet0/0 R1#ping 172.16.0.2 <-- R3 Tu100 interface Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 172.16.0.2, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 12/22/32 ms R1#traceroute 172.16.0.2 <-- R3 Tu100 interface Type escape sequence to abort. Tracing the route to 172.16.0.2 1 172.16.0.2 44 msec 40 msec 40 msec R1#traceroute 10.35.0.1 <-- R3 Lo0 interface Type escape sequence to abort. Tracing the route to 10.35.0.1 1 10.10.0.2 40 msec 8 msec 12 msec 2 10.20.0.2 16 msec 36 msec 24 msec