OSPF on gre-tunnel with Fortigate
GRE (Generic Routing Encapsulation) tünel, farklı ağ protokollerini internet üzerinden doğrudan taşımak için kullanılan bir tünelleme protokolüdür. GRE, özellikle iki uzak ağ arasında sanal bir noktadan noktaya bağlantı oluşturmak için kullanılır.
GRE tüneli nasıl çalışır sorusuna gelince, işleyişi genel olarak şu adımlardan oluşur:
1. Kapsülleme: Gönderen cihaz, orijinal veri paketini GRE protokolü kullanarak kapsüller. Bu başlıklar, paketin GRE tüneli üzerinden doğru şekilde yönlendirilmesi için gerekli bilgileri içerir.
2. Taşıma: Kapsüllenmiş paket, internet üzerinden alıcı cihaza taşınır. Bu süreçte paket GRE tünelinin iki ucunu temsil eden iki cihaz arasında yönlendirilir. Paket, tünelin başlangıç ve bitiş noktalarını belirten IP adreslerine sahip olur.
3. Kapsülden Çıkarma: Alıcı cihaz, kapsüllenmiş paketi alır ve GRE başlıklarını çıkarır, böylece orijinal veri paketini elde eder. Sonrasında bu paket, yerel ağda uygun hedefe yönlendirilir.
GRE tüneli, farklı ağların birbirleriyle güvenli olmayan bir ortam üzerinden güvenli olmayan bir şekilde haberleşmesini sağlar. GRE, herhangi bir şifreleme veya kimlik doğrulama mekanizması içermez; bu nedenle güvenliği artırmak için genellikle IPsec gibi şifreleme protokolleri ile birlikte kullanılır. GRE tünellemesi, özellikle site-to-site VPN (Sanal Özel Ağ) bağlantıları kurmak ve farklı ağ teknolojilerini entegre etmek için yaygın olarak kullanılır.
OSPF (Open Shortest Path First), geniş ölçekli IP ağlarında dinamik olarak en kısa yolu bulmak ve veri paketlerini bu yollar üzerinden yönlendirmek için kullanılan bir ağ yönlendirme protokolüdür. Link-state (bağlantı durumu) bir protokol olan OSPF, ağdaki tüm yönlendiricilerin ağın topolojisini tam olarak anlamasını ve buna göre yönlendirme kararları almasını sağlar.
Kullanacağımız iki teknoji içinde girizgah yaptığımıza göre topolojimize başlayabiliriz.
Bu makalede Fortigate üzerinde GRE tunnel kurulması ve bu tunnel üzerinden dinamik routing protokolünün koşturulmasını sağlayacağız.
Topolojideki tüm ip yapılandırmasını tanımladıktan sonra;
1.Adım DC-FW-1 ve DRC-FW-1 üzerinde GRE tunnel konfigürasyonunu yapıyorum.
DC-FW-1 # show system gre-tunnel
config system gre-tunnel
edit “tunnel2050”
set interface “port2”
set remote-gw 100.100.200.1
set local-gw 100.100.100.1
next
End
DRC-FW-1 # show system gre-tunnel
config system gre-tunnel
edit “tunnel2050”
set interface “port2”
set remote-gw 100.100.100.1
set local-gw 100.100.200.1
next
End
2.Adım oluşturulan gre-tunnel interfacelerine ip ataması gerçekleştiriyorum.
DC-FW-1 # show system interface tunnel2050
config system interface
edit “tunnel2050”
set vdom “root”
set ip 192.168.100.1 255.255.255.255
set allowaccess ping https ssh snmp http telnet radius-acct
set type tunnel
set remote-ip 192.168.100.2 255.255.255.255
set snmp-index 6
set interface “port2”
next
End
DRC-FW-1 # show system interface tunnel2050
config system interface
edit “tunnel2050”
set vdom “root”
set ip 192.168.100.2 255.255.255.255
set allowaccess ping https ssh snmp http fgfm
set type tunnel
set remote-ip 192.168.100.1 255.255.255.255
set snmp-index 6
set interface “port2”
next
end
3.Adım DC ve DRC Firewallar bildikleri routeları karşı tarafa öğreteceği için local networke doğru static routerları tanımlıyorum.
DC-FW-1 # show router static
config router static
edit 1
set dst 10.10.10.0 255.255.255.0
set gateway 172.10.10.2
set device “port1”
next
edit 2
set dst 10.10.20.0 255.255.255.0
set gateway 172.10.10.2
set device “port1”
next
edit 3
set gateway 100.100.100.2
set device “port2”
next
DRC-FW-1 # show router static
config router static
edit 1
set dst 10.10.100.0 255.255.255.0
set gateway 172.10.100.2
set device “port1”
next
edit 2
set dst 10.10.200.0 255.255.255.0
set gateway 172.10.100.2
set device “port1”
next
edit 3
set gateway 100.100.200.2
set device “port2”
next
4.Adım tunnel interfacelerim üzerinden point-to-point olarak routing paylaşımı sağlıyorum.
Burada passive-interface olarak WAN interfaceyi seçiyorum.
DC-FW-1 # show router ospf
config router ospf
set router-id 192.168.100.1
set restart-mode graceful-restart
config area
edit 0.0.0.0
next
end
config ospf-interface
edit “drc”
set interface “tunnel2050”
set dead-interval 40
set hello-interval 10
set network-type point-to-point
next
end
config network
edit 1
set prefix 192.168.100.0 255.255.255.0
next
edit 2
set prefix 172.10.10.0 255.255.255.0
next
end
set passive-interface “port2” “port3”
config redistribute “connected”
end
config redistribute “static”
set status enable
end
config redistribute “rip”
end
config redistribute “bgp”
end
config redistribute “isis”
end
DRC-FW-1 # show router ospf
config router ospf
set router-id 192.168.100.2
config area
edit 0.0.0.0
next
end
config ospf-interface
edit “dc”
set interface “tunnel2050”
set dead-interval 40
set hello-interval 10
set network-type point-to-point
next
end
config network
edit 1
set prefix 192.168.100.0 255.255.255.0
next
edit 2
set prefix 172.10.100.0 255.255.255.0
next
end
set passive-interface “port2” “port3”
config redistribute “connected”
end
config redistribute “static”
set status enable
end
config redistribute “rip”
end
config redistribute “bgp”
end
config redistribute “isis”
end
end
5.Adım olarak artık kontrol komutlarını paylaşabilirim.
get system interface | grep tunnel2050 Tunnel interface durumunu gösterir
get router info ospf neighbor OSPF komşularını liseler
get router info routing-table all Firewall üzerindeki routing tablosu verir
execute router clear ospf process OSPF restart eder.
Bir sonraki makalede görüşmek üzere.