SIP Nedir?
SIP (Session Initiation Protocol), VoIP (Voice over IP) telefon görüşmelerini, video konferansları ve anlık mesajlaşmayı başlatmak, yönetmek ve sonlandırmak için kullanılan uygulama katmanı protokolüdür. Modern IP telefon santralleri (Asterisk, FreePBX, Microsoft Teams Direct Routing) ve IP telefon cihazları SIP protokolüne dayanır.
SIP, sinyal için UDP/TCP port 5060 (şifreli için 5061/TLS) kullanır; medya (ses verisi) ise ayrıca RTP (Real-time Transport Protocol) üzerinden akar ve dinamik UDP portlarında iletilir.
SIP ALG Nedir?
ALG (Application Layer Gateway), firewall'ın belirli uygulama protokollerini anlayarak NAT çevirisi sırasında protokol içindeki IP adreslerini ve port bilgilerini de güncelleyen mekanizmadır.
SIP ALG, şu sorunları çözmeye çalışır: SIP paketlerinin başlıklarında ve gövdesinde (SDP — Session Description Protocol) IP adresleri ve port numaraları bulunur. NAT'ın dışarıya aktardığı IP adresi ile SIP mesajı içindeki IP adresi çelişebilir. SIP ALG bu çelişkiyi düzeltmeye çalışır.
SIP ALG Neden Sorun Çıkarır?
Teoride iyi niyetle tasarlanan SIP ALG, pratikte aşağıdaki yaygın sorunlara yol açar:
- Tek Yönlü Ses (One-Way Audio): En yaygın şikâyet. Arayan karşı tarafı duyar ama karşı taraf arayı duyamaz veya tam tersi. ALG'nin RTP oturumlarını yanlış yönlendirmesinden kaynaklanır.
- Çağrı Kurulamıyor (Call Drops): SIP REGISTER veya INVITE mesajlarının ALG tarafından bozulması, kayıt veya çağrı başlatma hatalarına neden olur.
- Kayıt Sorunları: IP telefon santrale kaydolamıyor; "408 Request Timeout" veya "403 Forbidden" hatası alınıyor.
- NAT İçin Çift Dönüşüm: ALG SIP paketini değiştiriyor, IP telefon veya santral de kendi NAT traversal mekanizmasını (STUN) kullanıyorsa çelişki oluşur ve paket bozulur.
- Şifreli SIP'te (TLS/SRTP) İşe Yaramaz: ALG, şifreli SIP trafiğini çözemez; müdahalesi anlamsız ve zararlı hale gelir.
Modern Ortamlarda SIP ALG'ye Neden Gerek Yok?
- Günümüz IP telefon sistemleri ve UCaaS platformları (Zoom Phone, Teams, 3CX) kendi NAT traversal yöntemlerini kullanır: STUN, TURN, ICE.
- SBC (Session Border Controller) kullanılan ortamlarda tüm NAT dönüşümü SBC tarafından profesyonelce yönetilir; firewall'ın müdahalesine gerek yoktur.
- Full-cone NAT veya doğru yapılandırılmış stateful NAT, SIP ALG olmadan da çalışır.
FortiGate'de SIP ALG Nasıl Kapatılır?
FortiGate'de SIP ALG, VoIP profili aracılığıyla yönetilir ve varsayılan politikalara uygulanır. Kapatmak için:
GUI üzerinden:
- Policy & Objects → Security Profiles → VoIP → İlgili profili düzenle → SIP devre dışı bırak
- İlgili firewall politikasından VoIP profilini kaldır
CLI üzerinden (önerilen — tam devre dışı bırakma):
config system settingsset sip-helper disableset sip-nat-trace disableend
config system session-helper- SIP helper girişini (genellikle id 13) silin:
delete 13 end
SIP ALG Kapatıldıktan Sonra
SIP ALG kapatıldığında şunları yapmanız gerekebilir:
- IP telefon veya santralın SIP portları için firewall politikasında izin kuralı oluşturun (UDP 5060, 5061 ve RTP aralığı genellikle UDP 10000–20000).
- IP telefon santralı olarak SBC kullanıyorsanız, yalnızca SBC IP adreslerine izin verin.
- Ses kalitesi sorunları için QoS politikasıyla VoIP trafiğini önceliklendirin (DSCP EF markası).
Sonuç
SIP ALG, iyi niyetle tasarlanmış ancak modern VoIP ortamlarında çoğunlukla zararlı olan bir özelliktir. VoIP sorunlarınızın çözümünde ilk adım SIP ALG'yi kapatmaktır. Lider Network, FortiGate VoIP yapılandırması ve SIP sorun giderme konularında uzman desteği sunmaktadır.