Görkem

WFN Üye
Konular
1,788
Mesajlar
1,824
Çözüm
1
Ticaret Puanı
0
Üyelik
1 Yıl 7 Ay 9 Gün
Konum
Adıyaman
Web Sitesi
Yok
Alanı
Reklam Al-Sat
1/1
Konu sahibi
PowerShell ile bir sunucunun TCP bağlantı noktasını test etmek için Test-NetConnection cmdlet'ini kullanın. Hedef sunucu adını veya IP adresini -ComputerName, kontrol edilecek portu da -Port ile belirtin:

Kod:
Test-NetConnection -ComputerName "sunucu.example.com" -Port 443

Komutu çalıştırdığınız bilgisayardan hedefe TCP bağlantısı kurulabiliyorsa sonuçta TcpTestSucceeded : True görünür. False sonucu ise bağlantının kurulamadığını gösterir; bunun nedeni portun kapalı olması, güvenlik duvarı, yönlendirme, DNS veya hedef hizmetin çalışmaması olabilir.

TCP portunu ayrıntılı olarak test etme​


Önce PowerShell'i açın. Yönetici olarak çalıştırmanız genellikle gerekmez; test, komutu çalıştıran makinenin hedef sunucuya ağ üzerinden erişebildiği koşullarda yapılır. Ardından aşağıdaki örnekteki bilgileri kendi ortamınıza göre değiştirin:
  1. -ComputerName değerine sunucunun DNS adını veya IP adresini yazın.
  2. -Port değerine TCP port numarasını yazın. Örneğin HTTPS için 443, RDP için 3389 kullanılabilir; ancak hizmetin gerçekten o portu dinlediğini ortamınızdan doğrulayın.
  3. Komutu çalıştırın ve özellikle TcpTestSucceeded satırını inceleyin.
Örneğin varsayımsal olarak 10.10.20.15 adresindeki sunucunun 3389 numaralı TCP portunu kontrol etmek için:

Kod:
Test-NetConnection -ComputerName "10.10.20.15" -Port 3389

Ayrıntılı çıktıda hedef ad, çözümlenen uzak adres, kullanılan kaynak adresi ve port testiyle ilgili bilgiler gösterilebilir. Bu çıktı, bağlantının hangi hedefe karşı denendiğini anlamanıza yardımcı olur; yalnızca port sonucuna bakmak yerine hedef adın doğru çözümlendiğini de kontrol edin.

Sadece başarılı veya başarısız sonucunu almak istiyorsanız -InformationLevel Quiet kullanın:

Kod:
Test-NetConnection -ComputerName "10.10.20.15" -Port 3389 -InformationLevel Quiet

Bu kullanımda True bağlantının kurulduğunu, False ise kurulamadığını belirtir. Bir betik içinde koşul kontrolü yapmak için örneğin:

Kod:
$sonuc = Test-NetConnection -ComputerName "10.10.20.15" -Port 3389 -InformationLevel Quiet

if ($sonuc) {
    "TCP portu erişilebilir."
} else {
    "TCP portuna bağlantı kurulamadı."
}

Sonuçları doğru yorumlama​


Port testi, testi yaptığınız bilgisayardan hedef sunucuya TCP bağlantısı kurulup kurulamadığını gösterir. Bir hizmetin uygulama düzeyinde doğru çalıştığını, kimlik bilgilerinin geçerli olduğunu veya kullanıcı hesabının oturum açabileceğini tek başına kanıtlamaz.
Görülen sonuçAnlamıSonraki kontrol
TcpTestSucceeded: TrueBelirtilen hedefe ve TCP portuna bağlantı kurulabildi.Uygulama yine çalışmıyorsa hizmet durumu, uygulama protokolü, kimlik doğrulama ve uygulama günlüklerini inceleyin.
TcpTestSucceeded: FalseTCP bağlantısı kurulamadı; port kapalı, filtrelenmiş, yanlış hedefte veya erişim yolu sorunlu olabilir.Hedef adını, IP adresini, hizmetin dinlediği portu, sunucu güvenlik duvarını ve ağ üzerindeki güvenlik kurallarını kontrol edin.
NameResolutionSucceeded: FalseSunucu adı DNS üzerinden çözümlenemedi.Aynı testi IP adresiyle tekrarlayın; IP ile başarılı oluyorsa DNS kaydı veya istemcinin DNS yapılandırmasını inceleyin.
False sonucu alırsanız testi farklı bir bilgisayardan tekrarlamak da önemlidir. Örneğin aynı ağdaki başka bir sunucudan başarılı, istemci bilgisayarınızdan başarısız sonuç alıyorsanız sorun hedef hizmetten çok istemci ağı, yerel güvenlik duvarı, VLAN veya yönlendirme kurallarıyla ilgili olabilir. Her iki noktadan da başarısız sonuç alınıyorsa hedefteki hizmetin çalışıp çalışmadığını ve sunucunun gelen TCP bağlantılarına izin verip vermediğini kontrol edin.

Yalnızca portun açık olması yeterli mi?​


Hayır. True sonucu yalnızca TCP el sıkışmasının kurulabildiğini gösterir. Örneğin 443 numaralı port erişilebilir olsa bile web sunucusu hatalı yapılandırılmış, TLS sertifikası sorunlu veya uygulama isteklere hatalı yanıt veriyor olabilir. Bu nedenle port testi başarılı olduktan sonra ilgili hizmete özgü araçla veya istemciyle gerçek bağlantıyı da deneyin.

Ayrıca bu cmdlet TCP portlarını test eder. UDP tabanlı bir hizmet için aynı yöntem, hizmetin gerçekten çalıştığını kesin olarak doğrulamayabilir; UDP bağlantı kurulumu TCP'deki gibi bir el sıkışmasına dayanmaz. UDP hizmetlerinde uygulamaya özgü test yöntemi veya hizmetin kendi tanılama aracını kullanmanız gerekir.
 

Sende şimdi bize katılmak ister misin?

Kayıt ol

Bize katılım kolay ve ücretsizdir!

Foruma git ?

Bu konuyu görüntüleyen kullanıcılar

Bu konuyu şu anda görüntüleyen üye bulunmuyor.
Robotlar:
  • Anthropic