Tüm TCP geçici bağlantı noktalarının ne kullanılacağı nasıl belirlenir?


3

Windows kutum son zamanlarda garip davranmaya başladı.

Yaklaşık 3-4 gün çalıştıktan sonra, herhangi bir giden TCP bağlantısı kuramıyorum. Belirli bir hata işleme olmadan çoğu uygulama basitçe "bağlantı başarısız" diyecektir. Bazı araştırmalar, hatanın "Kullanılabilir arabellek alanı olmadığını" gösteriyor.

Bir Olay Günlüğü girişi, hikayenin daha fazlasını anlatır:

Seçilen yerel uç nokta yakın zamanda aynı uzak uç noktaya bağlanmak için kullanıldığından, TCP / IP giden bağlantı kuramadı. Bu hata genellikle giden bağlantılar yüksek oranda açılıp kapatıldığında, kullanılabilir tüm yerel bağlantı noktalarının kullanılmasına ve TCP / IP'nin giden bağlantı için yerel bir bağlantı noktasını yeniden kullanmaya zorlanmasına neden olur. Veri bozulma riskini en aza indirmek için, TCP / IP standardı, belirli bir yerel uç noktadan belirli bir uzak uç noktaya art arda gelen bağlantılar arasında geçmesi için minimum bir süre gerektirir.

Koştum netstat -qno Bir yönetici komut isteminde ve aşağıdakileri gördüm:

Active Connections

  Proto  Local Address          Foreign Address        State           PID
  TCP    0.0.0.0:135            0.0.0.0:0              LISTENING       972
  TCP    0.0.0.0:445            0.0.0.0:0              LISTENING       4
  TCP    0.0.0.0:3389           0.0.0.0:0              LISTENING       592
  TCP    0.0.0.0:5357           0.0.0.0:0              LISTENING       4
  TCP    0.0.0.0:6160           0.0.0.0:0              LISTENING       2808
  ... some more random TCP connections ...
  TCP    0.0.0.0:49152          0.0.0.0:0              BOUND           4
  TCP    0.0.0.0:49153          0.0.0.0:0              BOUND           4
  TCP    0.0.0.0:49154          0.0.0.0:0              BOUND           4
  TCP    0.0.0.0:49155          0.0.0.0:0              BOUND           4
  TCP    0.0.0.0:49156          0.0.0.0:0              BOUND           4
  TCP    0.0.0.0:49157          0.0.0.0:0              BOUND           4
  TCP    0.0.0.0:49158          0.0.0.0:0              BOUND           4
  TCP    0.0.0.0:49159          0.0.0.0:0              BOUND           4
  TCP    0.0.0.0:49160          0.0.0.0:0              BOUND           4
  TCP    0.0.0.0:49161          0.0.0.0:0              BOUND           4
  ... 16,383 entries, all the way up to ...
  TCP    0.0.0.0:65531          0.0.0.0:0              BOUND           4
  TCP    0.0.0.0:65532          0.0.0.0:0              BOUND           4
  TCP    0.0.0.0:65533          0.0.0.0:0              BOUND           4
  TCP    0.0.0.0:65534          0.0.0.0:0              BOUND           4
  TCP    0.0.0.0:65535          0.0.0.0:0              BOUND           4
  ... some UDP stuff, nothing out of the ordinary ...

Gördüğünüz gibi, gerçekten de her TCP giden bağlantı noktasının BOUND devlet ve sahiplik PID’si 4temsil eden System süreci. (Aynı işlem, örneğin SMB bağlantıları için 445 numaralı bağlantı noktasını dinliyor.)

TCPView bunlardan hiçbirini göstermiyor BOUND Bağlantılar, yalnızca sorun başlamadan önce açık olan aktif bağlantılar.

Defender ile tam kötü amaçlı yazılım taraması herhangi bir sorun olmadığını bildirir.

Gereksiz hizmetleri durdurmayı ve kullanılmayan uygulamaları kapatmayı denedim. Oturumu kapatıp tekrar açmak sorunu çözmüyor. Tek çözüm sistemi yeniden başlatmak ve o zaman bile sorunu yalnızca birkaç gün daha çözebiliyor.

Tipik kullanıcı uygulamaları (örneğin, Chrome) giden TCP bağlantı noktalarını kullandığında, bunların BOUND durumu ancak Netstat'ta onlarla ilişkilendirilmiş doğru PID'leri var. Bu, bazı ciddi kötü amaçlı yazılımları veya Windows'ta büyük bir hatayı gösteriyor gibi görünmektedir.

Windows 10 1607.

Bu sorunu gidermek için bir sonraki adımım ne olurdu?


Sorununuzu bulduğunuzu görüyorum, ancak "Bu sorunu gidermek için bir sonraki adımım ne olur?" Cevabını vermek için, daraltmak için paket yakalama (örn. WireShark) ve işlem izleme (örn. SysInternals Process Monitor) kombinasyonunu yapmış olabilirsiniz. aşağı.
BrianC

Yanıtlar:


3

Suçluyu bulduğuma inanıyorum.

Bir süre önce iSCSI başlangıcı ile ilgili bazı deneyler yapmıştım (bir NAS4Free örneğine bağladım). İSCSI başlatıcısının hala çalıştığım iSCSI sunucusuna - birkaç dakikada bir - bağlanmaya çalıştığını fark ettim. (Devre dışı bırakılmış) sunucumun IP adresini sildim ve şimdiye kadar, bağlı bağlantı noktalarının selini durdurmuş gibi görünüyor.

Bu, iSCSI başlatıcısının sistem düzeyinde bir hizmet olması nedeniyle mantıklı olacaktır. Belki de hizmette bir hata var?


Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.