Apa itu GRE Tunnel?

Ciao^^, sudah beberapa bulan saya tidak menulis artikel, terhitung sejak artikel terakhir yaitu tentang FTK Imager xD. Dan pada kali ini kita akan membahas tentang GRE Tunnel, lalu kita juga akan cari tau bedanya GRE Tunnel dengan VPN biasa.

Apa itu GRE Tunnel?

Generic Routing Encapsulation (GRE) merupakan tunneling protocol untuk mengenkapsulasi paket data lalu dikirim menggunakan satu routing protocol didalam paket protokol lainnya. Biasanya dipakai buat link virtual point-to-point.

Kalau dilihat lebih detail, GRE Tunnel akan menambahkan 4-byte header pada paket ip yang akan dikirim, biasa disebut sebagai GRE Header. Ohh yaa, GRE Tunnel dikembangkan oleh Cisco, bukan berarti vendor lain tidak bisa menggunakan GRE Tunnel yaa :D.

Bedanya GRE dengan VPN?

Konsep GRE Tunnel hampir sama seperti VPN, yaitu menghubungkan network yang berbeda menggunakan Tunnel. GRE Tunnel menghubungkan bagian 1 dari netork dengan bagian network lainnya. Biasanya penggunakan GRE adalah untuk membuat tunnel melewati internet agar network yang kita tuju bisa langsung terhubung.

Banyangin ada banyak router yang harus kita lewati untuk mengubungkan network tujuan kita, dibalik itu router didepan kita menggunakan Protocol RIP pada mekanisme routingnya, dimana HOP akan dihitung sebagai metricnya. Tapi kalau kita membuat tunnel dengan network tujuan kita, dia akan membuat virtual link, nah virtual link ini juga berguna untuk mengurangi hitungan HOP pada routing kita atau bahkan kita bisa melewati RIP ditengah-tengah router yang menuju network tujuan kita, dan bahkan kita bisa menjalankan OSPF di tunnel tersebut.

Perbedaan mendasar

Dan perbedaan yang lain antara GRE dan VPN biasa adalah, GRE dapat meng-forward data dari jaringan network yang tidak terhubung melalui single tunnel, yang dimana VPN tidak bisa melakukan ini. GRE juga dapat melakukan Multicast traffic forwarding, jadi kita tidak perlu ganti type LAN kita kalau kita ingin nambahi Multicast traffic xD. (Biasanya kita butuh multicast untuk Hello paket, yang dimana tidak semua VPN mengizinkan)


Implementasi Basic GRE Tunnel di Cisco - GNS3

pada kali ini saya akan coba menggunakan GRE Tunnel di router Cisco, untuk topology bisa lihat dibawah ya guys.

alt

Assign IP Address

R1

R1(config)#interface serial 0/0
R1(config-if)#ip address 10.0.0.1 255.255.255.252
R1(config-if)#no shutdown
R1(config-if)#interface fastEthernet 0/0
R1(config-if)#ip address 172.16.15.126 255.255.255.128
R1(config-if)#no shutdown

R2

R2(config)#interface serial 0/1
R2(config-if)#ip address 10.0.0.2 255.255.255.252
R2(config-if)#no shutdown
R2(config)#interface serial 0/2
R2(config-if)#ip address 10.0.3.1 255.255.255.252
R2(config-if)#no shutdown

R3

R3(config)#interface serial 0/0
R3(config-if)#ip address 10.0.3.2 255.255.255.252
R3(config-if)#no shutdown
R3(config-if)#interface fastEthernet 0/0
R3(config-if)#ip address 172.16.20.126 255.255.255.128
R3(config-if)#no shutdown

Setting Routing - (OSPF)

Untuk routing, kalian bebas mau menggunakan static atau dinamis, untuk sekarang saya akan menggunakan routing dinamis dengan protocol OSPF (karna udh terbiasa xD).

R1

R1(config)#router ospf 5
R1(config-router)#network 172.16.15.0 0.0.0.127 area 3
R1(config-router)#network 10.0.0.0 0.0.0.3 area 3

R2

R2(config)#router ospf 5
R2(config-router)#network 10.0.0.0 0.0.0.3 area 3
R2(config-router)#network 10.0.3.0 0.0.0.3 area 3

R3

R3(config)#router ospf 5
R3(config-router)#network 172.16.20.0 0.0.0.127 area 3
R3(config-router)#network 10.0.3.0 0.0.0.3 area 3

Kalau sudah, akan muncul loading done yang artinya proses advertise sudah selesai^^. Sekarang kita test koneksi antar router sebagai syarat agar GRE Tunnel bisa digunakan.

alt

Setting GRE Tunnel

Konsep menggunakan GRE Tunnel ada membuat interface tunnel disetiap sisi router yang akan dihubungkan, dalam case ini kita akan menghubungkan R1 <-> R3. Maka kita akan membuat interface tunnel pada R1 dan R3.

R1

R1(config)#interface tunnel 0
R1(config-if)#ip address 10.100.100.1 255.255.255.252
R1(config-if)#tunnel source serial 0/0
R1(config-if)#tunnel destination 10.0.3.2
R1(config-if)#tunnel mode gre ip

R3

R3(config)#interface tunnel 0
R3(config-if)#ip address 10.100.100.2 255.255.255.252
R3(config-if)#tunnel source serial 0/0
R3(config-if)#tunnel destination 10.0.0.1
R3(config-if)#tunnel mode gre ip
  • tunnel source : asal keluarnya trafik data, bisa pilih ip atau interface.
  • tunnel destination : tujuan trafik yang akan di forward, ip tujuan pada interface terkait
  • tunnel mode : mode tunnel yang akan digunakan, karna kita pakai gre jadi kita gunakan gre dengan ipv4

Assign OSPF pada interface tunnel

Terakhir, kita butuh memasukkan interface tunnel kedalam router ospf agar bisa interface bisa UP dan terhubung.

R1

R1(config)#interface tunnel 0
R1(config-if)#ip ospf 5 area 3

R3

R3(config)#interface tunnel 0
R3(config-if)#ip ospf 5 area 3

alt

Kalau sudah, disini saya test scan traffic yang lewat pada jalur R2 <-> R3. Kita bisa lihat pada header terdapat 2 ip header, yaitu Outer IP Header dan Original IP Header.

alt

PENTING!! GRE Tunnel tidak meng-enkripsi data (plain text), jadi jika ingin menambah keamanan kita bisa menggunakan IPSec dan GRE Tunnel.

Sekian artikel dari saya semoga bermanfaat, Peace.