Ana içeriğe geç

SecuraWall.com

E-posta güvenliği ve sürekliliği

Keşfedin

Sorun Giderme · Linux ve Sistem Yönetimi

nftables Conntrack INVALID Durumu ve State Tablosu Sorun Giderme

nftables stateful kuralları, Netfilter conntrack tablosundaki akış durumunu kullanır. NEW ilk izin verilen paketi, ESTABLISHED iki yönlü tanınan akışı, RELATED yardımcı ilişkiyi ifade…

Teknik gözden geçirme:

Mimari ve çalışma modeli

nftables stateful kuralları, Netfilter conntrack tablosundaki akış durumunu kullanır. NEW ilk izin verilen paketi, ESTABLISHED iki yönlü tanınan akışı, RELATED yardımcı ilişkiyi ifade eder. INVALID tek bir arıza nedeni değildir; tabloya yerleştirilemeyen, beklenen pencereyle uyuşmayan, parçalanmış veya durum bilgisi eksik paketleri kapsayabilir.

Sorun giderme, firewall sayacı ile conntrack olayı ve paket yakalamayı aynı beşli akış üzerinde birleştirir. Asimetrik routing, NAT’ın farklı düğümlerde uygulanması, state tablosu doluluğu, timeout, sequence/window doğrulaması ve fragment davranışı ayrı hipotezlerdir. INVALID paketini koşulsuz kabul etmek semptomu gizleyip güvenlik sınırını genişletir.

HA firewall tasarımında conntrackd state senkronizasyonu her paketi kusursuz taşımayı garanti etmez. Failover sırasında bağlantı ya yeniden kurulmalı ya da state replikasyonunun protokol, NAT ve zamanlama sınırları test edilmelidir. nftables kuralı değiştirilmeden önce ruleset ve sayaçlar atomik olarak dışa aktarılır, geri dönüş dosyası doğrulanır.

  1. 1Paket ve tuple yakalama
  2. 2Conntrack lookup ve state
  3. 3nftables hook/kural kararı
  4. 4Sayaç, log ve uygulama sonucu
INVALID bir neden değil sınıflandırmadır; kapasite, yol ve protokol doğrulamasını ayrı yapın.

Tasarım parametreleri

Tablo kapasitesi
nf_conntrack_count/max oranı ve insert_failed/drop sayaçlarını tepe yükte izleyin.
Timeout
TCP state ve UDP timeout değerlerini uygulama davranışıyla ölçün; rastgele büyütmek tablo baskısını artırır.
Yol simetrisi
İleri ve dönüş paketlerinin aynı state alanını görmesini routing, ECMP, NAT ve HA düğümleri boyunca doğrulayın.
Log örnekleme
Her INVALID paketi sınırsız loglamak yerine rate limit, tuple ve interface bilgisiyle kontrollü gözlem kullanın.

Hesap ve uygulama örneği

nf_conntrack_max 262.144 ve count 235.000 ise doluluk yaklaşık %89,6’dır. Saniyede 8.000 yeni kısa UDP akışı ve 30 saniye timeout teorik olarak 240.000 aktif kayıt üretebilir; diğer TCP akışları için yer kalmaz. Önce timeout dağılımı ve gerçek akış süresi ölçülür.

Sorun yalnız ikinci WAN’dan dönen paketlerdeyse kuraldan önce asimetrik routing incelenir. Aynı tuple’ın giriş ve çıkış interface’leri tcpdump, ip route get, conntrack -E ve nft trace ile eşlenir; rp_filter ve policy routing sonuçları kaydedilir.

Örnek komutlar: laboratuvar değerlerini değiştirin; kullanmadan önce yetkiyi ve yazılım sürümünü doğrulayın.

sudo nft list ruleset
sysctl net.netfilter.nf_conntrack_count net.netfilter.nf_conntrack_max
sudo conntrack -S
sudo conntrack -E -o timestamp,extended
sudo nft monitor trace
sudo tcpdump -ni any 'host 192.0.2.10 and port 443'

Hata teşhisi

BelirtiOlası neden / ayrımDoğrulama
Tepe saatte yeni bağlantılar düşüyorConntrack tablosu doluyor veya insert başarısız oluyor olabilir.count/max ve nf_conntrack_stat insert_failed/drop değerlerini zaman serisinde inceleyin.
Yalnız dönüş paketleri INVALIDAsimetrik routing, farklı NAT düğümü veya timeout sonrası geç paket olabilir.İki yönde capture, conntrack event ve route lookup alın.
Failover sonrası mevcut oturumlar kopuyorState/NAT senkronizasyonu eksik veya zamanlama sınırında olabilir.Aktif/pasif tabloda aynı tuple, mark, zone ve NAT çevirisini karşılaştırın.

Kabul ve doğrulama kontrolleri

  1. Değişiklik öncesi nft list ruleset çıktısını ve geri dönüş yolunu kaydedin.
  2. nf_conntrack_count/max ve hata sayaçları için baseline oluşturun.
  3. Sorunlu tuple’ı iki yönde paket yakalama ve conntrack event ile eşleyin.
  4. NAT, policy routing, rp_filter ve ECMP sonucunu birlikte doğrulayın.
  5. INVALID log kuralını rate limit ile kısa süreli pilotta kullanın.
  6. Düzeltmeden sonra yeni, mevcut ve failover oturumlarını ayrı test edin.

İlgili kavramlar

Servis yaşam döngüsü ve bağımlılıklar

Çalışan bir process, hizmetin kullanıcıya doğru yanıt verdiğini kanıtlamaz. Başlangıç sırası, ağ veya veritabanı bağımlılığı, ortam değişkenleri, dosya erişimi ve sağlık kontrolü birlikte incelenir. Servis yeniden başlatma döngüsü bazen gerçek nedeni gizler. Exit code, son loglar ve kaynak sınırlarını karşılaştırın. Uygulama dışında systemd veya container yönetim katmanının neden yeniden başlatma yaptığını da kaydedin. Kontrollü restart sonrasında oturum, veri yazma ve bağımlı servislerin davranışını doğrulayın.

Telemetri ve zaman eşleştirmesi

Telemetri, sistemin ne yaptığını açıklayan log, metrik ve olay kayıtlarının bütünüdür. Log bir olayın ayrıntısını, metrik zaman içindeki davranışı, dağıtık iz ise isteğin bileşenler arasındaki yolunu gösterir. Saat farkları aynı olayı farklı zamanlarda olmuş gibi gösterebilir. Merkezi zaman senkronizasyonu, kaynak kimliği ve tutarlı saat dilimi kullanın. Alarm tasarımında yalnız eşik değil, ne kadar sürdüğü ve kullanıcıya etkisi de değerlendirilmelidir. Kayıtların kesildiği durum ayrıca izlenmeli; günlük kaydı bulunmaması, olay yaşanmadığı şeklinde yorumlanmamalıdır.

Kapasite ve kullanılabilir pay

Ham kapasite ile uygulamanın kullanabileceği kapasite aynı değildir. RAID veya erasure coding, dosya sistemi, ayrılmış alan, metadata, snapshot ve büyüme payı ayrı kalemlerdir. TB ile TiB gösterimi de görünür sayıyı değiştirir. Hesabı birimleriyle yazın ve önce kullanılabilir korumalı kapasiteyi, sonra işletim rezervini çıkarın. Ortalama doluluğu izlemek kadar büyüme eğimini izlemek de önemlidir. Tahmini dolma tarihi, yeni kapasiteyi satın alma ve devreye alma süresinden daha uzakta tutulmalıdır.

Gecikme dağılımı

Gecikme, bir işlemin başlangıcı ile yanıtı arasındaki süredir. Ortalama değer, az sayıdaki çok yavaş işlemi gizleyebilir; medyan ile p95/p99 gibi yüzdelikler farklı sorulara cevap verir. Ağ RTT, disk bekleme, işlemci kuyruğu ve uygulama işlemesi toplam süreye katkıda bulunur. Ölçümün istemci tarafında mı sunucuda mı yapıldığını yazın. Gecikme artışının trafik yükselmesine, bakım işine veya kapasite sınırına denk gelip gelmediğini karşılaştırın. Bir eşik seçmeden önce normal yük ve yoğun saat için temel davranışı kaydedin.

Katman 2 ve Katman 3 sınırları

VLAN ayrı bir yayın alanı oluşturur; VLAN’lar arası iletişimi yönlendirme ve erişim politikası belirler. Bir trunk üzerindeki VLAN listesi, access port ataması ve gateway konumu birlikte incelenmelidir. Ağ çiziminde yalnız kablo bağlantısını değil, paketlerin nerede yönlendirildiğini ve nerede filtrelendiğini gösterin. Aynı switchte bulunmak aynı yetkiye sahip olmayı gerektirmez. Bir erişimin çalışmaması halinde önce doğru VLAN ve adresi, ardından gateway, route ve politika eşleşmesini doğrulayın.

Failover ve failback

Failover, hizmetin başka bir bileşene geçmesidir; failback, tercih edilen konuma geri alınmasıdır. İkisi aynı risk ve işlem sırasına sahip olmayabilir. DNS güncellemesi, yönlendirme, oturumlar, veri geriliği ve uygulama bağımlılıkları kullanıcı kesintisini belirler. Otomatik geçişin hangi koşulda tetiklendiğini, yanlış alarmda ne olacağını ve geri dönüş onayını tanımlayın. Arızayı yalnız sanal makineyi kapatarak test etmek tüm hata türlerini kapsamaz. Ağ, depolama ve yönetim katmanı arızalarının ayrı etkilerini ölçün.

Birincil teknik dokümantasyon

Doz Teknoloji teknik ekibi tarafından aşağıdaki birincil kaynaklar temel alınarak hazırlanmıştır. Hesaplar ve laboratuvar senaryoları varsayımlarını belirtir; uygulamadan önce kullanılan ürün sürümünü doğrulayın.

Bilgi Merkezi

Kurumsal IT Ürün Satışı, Lisanslama ve Kurulum
Kurumsal IT Proje & Çözüm Senaryoları
Tüm ilgili içerikleri görüntüleyin
WhatsApp'tan Yazın
Kopyalandı!