Kurum Servisindeki SNAT seçenekleri (Default, Use Client IP, Use Device IP) arasındaki fark nedir?
Kısa cevap
Default (varsayılan) seçeneğinde TR7 Kurum Servisine kendi IP'siyle bağlanır; kaynak adres, Kurum Servisinin Route Table'ında sunucuya giden trafiğin çıktığı arayüzün, sunucuyla (gateway üzerinden gidiliyorsa gateway'le) aynı subnet'teki Interface IP'sidir. Use Device IP'de kaynak, SNAT IP alanında seçilen belirli bir TR7 IP'sidir. Use Client IP'de TR7 sunucuya istemcinin IP'siyle bağlanır; bunun için yanıtların TR7'den dönmesi (sunucunun default gateway'i TR7 ya da Spoofing) gerekir. Seçenekler HTTP ve L7 TCP vService'lerde geçerlidir; Network vService'te LB Mode belirleyicidir.
Nasıl Çalışır?
| Seçenek | Sunucunun gördüğü kaynak | Ek alan | Gereksinim |
|---|---|---|---|
| Default | Route table'da sunucuya giden trafiğin çıktığı arayüzün, sunucuyla (gateway üzerinden gidiliyorsa gateway'le) aynı subnet'teki Interface IP'si; cluster'da her cihazın kendi Interface IP'si | Yok | Yok |
| Use Device IP | Seçilen TR7 IP'si | SNAT IP (liste Kurum Servisinin Route table'ındaki IP'lerle sınırlı; ilk adres kendiliğinden seçilir) | IP'nin Route table'da tanımlı olması |
| Use Client IP | İstemcinin IP'si (SNAT yapılmaz) | Spoofing ve ilgili alanlar (Spoofing IP VIP Condition, Spoofing Default Device, Spoofing IP) | Yanıtların TR7'den dönmesi |
Örnek: Route table'da 192.0.2.5/24 Interface IP'si olan TR7, 192.0.2.20 sunucusuna Default'ta 192.0.2.5 ile bağlanır; aynı arayüze 192.0.2.6/24 eklenip Use Device IP'de seçildiyse 192.0.2.6 ile, Use Client IP'de istemcinin adresiyle (ör. 198.51.100.45) bağlanır. O subnet'te birden fazla IP varken Default'ta hangisinin kullanılacağı arayüzdeki sıradan anlaşılmaz; belirli bir adres gerekiyorsa Use Device IP seçilir.
Ne Zaman Hangisi?
- Default: Çoğu kurulum; sunucuda ve ağda değişiklik gerekmez. HTTP'de istemci IP'si X-Forwarded-For ile taşınır (Backend'de gerçek istemci IP'sini nasıl görürüm?).
- Use device IP: Sunucu firewall'u ya da uygulaması belirli bir kaynak adres bekliyorsa, ya da TR7'nin Route table'ında birden fazla IP varken kaynağın sabitlenmesi gerekiyorsa.
- Use client IP: İstemci IP'si bağlantı düzeyinde gerekiyorsa (HTTP olmayan protokoller, IP tabanlı erişim kontrolü) ve dönüş trafiği TR7'ye yönlendirilebiliyorsa (SNAT kullanmadan (transparent mode) çalışmak mümkün mü; gereksinimleri nelerdir?).
TR7'de
- Yer: Load Balancer → Backend Services (ya da Backend Groups) → Edit → Details → SNAT; Backend Group'ta seçim gruptaki bütün sunuculara uygulanır.
- Görünüm: Kurum Servisi önizlemesinin Details sekmesinde SNAT satırı seçilen seçeneği ya da IP'yi gösterir; tanımlanmamışsa Default yazar, cluster'da iki cihazın değeri farklıysa iki kolonda gösterilir (Details satırları).
- Sunucu tarafında doğrulama: Sunucuda
tcpdump -n 'tcp[tcpflags] & tcp-syn != 0'ile gelen bağlantıların kaynak adresine bakılır. - Cluster: Değişiklik varsayılan olarak eş cihaza kendiliğinden aktarılır; Manual Sync Mode açıksa Synchronize ile gönderilir.
Sık Karıştırılan Noktalar
- "SNAT seçeneği health check'in kaynağını da belirler." Health check'in kaynağı Health Check Source IP alanıyla ayrıca seçilir (Health Check paketleri hangi kaynak IP'den gider; bunu değiştirebilir miyim?).
- "Default'ta route table'daki ilk arayüzün IP'si kullanılır." Kaynak, route table'daki ilk arayüz IP'si değil; sunucuya giden trafiğin çıktığı arayüzün, sunucuyla (gateway üzerinden gidiliyorsa gateway'le) aynı subnet'teki Interface IP'sidir.
- "Use device IP'deki IP silinirse uyarı verilir." Kaynak adres Default kuralına göre belirlenmeye başlar.
- "Spoofing her seçenekte kullanılır." Spoofing yalnızca Use Client IP seçiliyken görünür.
- "Network vService'te de geçerlidir." Network vService bu alanı kullanmaz; LB mode ve vService'teki SNAT IP belirleyicidir.
Dokümantasyonda nasıl yapılır
