SYN-ACK alınmadı


3

Sunucu ile istemci arasındaki standart bir TCP bağlantısında şu sorun var: SYN-ACK, sunucudan gönderilirken istemciden alınmadı. Bunu hem sunucudan hem de istemciden Wireshark'ta görebiliyordum.

İstemci PC'den farklı bir TCP istemcisi (örneğin, telnet) kullanarak, SYN-ACK alındı ​​ve bağlantı çalışıyor. Ayrıca yönlendiriciyi değiştirmek ilk müşteri ile çalışır.

Emin değilim, ancak iki müşteri arasındaki temel fark SYN isteğidir. İlk durumda, len=0Wireshark'ta vardır, len ise telnet kullanarak sıfır değildir.

Herhangi bir yönlendiriciyi C # ile yazılmış (belki bazı seçenekleri değiştirerek) sunucuyla (java) ve ilk istemciyle kullanabilmemin bir yolu var mı ?

Düzenleme : sunucu ve istemci iki farklı ağ üzerinde ve her ikisini de kontrol edebilirim. Arasında güvenlik duvarı yok. Yani len=0SYN de Endişelendiğim tek şeydir. Buna izin verilebileceğini sanmıyorum.


ilk olarak, neden yönlendiricinizin dahil olduğunu düşünüyorsunuz? ağınızdaki sunucu ve istemci başka bir yerde mi? Güvenlik duvarı günlükleriniz daha sonra başlamak için iyi bir yerdir. .Net yuva kitaplığı, temel bağlantıyla ilgili her şeyi (el sıkışmaları gibi tcp uygulama ayrıntıları) kodlayıcıdan izole eder, bu nedenle ince ayar yapmanız gereken hiçbir seçenek olmamalıdır. Net, paketlerin kendisiyle değil ağ akışlarıyla ilgilidir. Müşterinizle ilgileniyorsanız, stackoverflow'ta gönderin.
Frank Thomas

Teşekkür ederim. Sunucu ve istemci iki farklı ağdalar, ancak ikisini de kontrol edebilirim. İki taraftan da güvenlik duvarı yok. len=0SYN'de Wireshark'ta okuduğum için endişeleniyorum (bu bilgileri eklemek için düzenlenmiş soru).
Fra H,

1
Sanırım benim açımdan bir kısmı, kötü trafiği görmek için wireshark'a gitmek yerine, uygulama çerçevenizin neden doğru şekilde bağlanamadığına odaklanmak. paket izlerini izlemek nihayetinde size neler olup bittiğini ve nihayetinde ihtiyaç duyulabileceğini anlayabilmenizi sağlayabilir, ancak şu an için kod üzerine odaklanacağım çünkü farklı müşteri çalışma sürelerinden farklı sonuçlar aldığınızdan, neden 0kb'lik bir yanıt alıyorsunuz. wireshark'tan ümit edebileceğiniz en iyi şey (bu sorun için) bir güvenlik duvarının nereye gideceğini belirlemek.
Frank Thomas

Len = 0 SYN segmentinin ekran görüntüsünü veya transkriptini gönderir misiniz?
artistoex

Yanıtlar:


0

Gerçek yakalamayı görmeden hangi LEN alanını okuduğunuzu söylemek zor. Wireshark bir noktada disektörleri değiştirmiş olabilir ve şimdi beklediğinizden başka bir şeyin uzunluğunu okuyorsunuz.

Bir uygulama yazmaya çalışırken, protokol izini süren yabani otlarda fazla derin olmazdım. Telnet ile bağlanabiliyorsanız, ağ katmanları çalışıyordur ve sorun büyük olasılıkla kodunuzdadır.

Denklemi bir soketten başka hiçbir şeyle basitleştirmeyen başka bir uygulama oluşturmayı deneyin ve bağlanıp bağlanmadığını görün. Yararlı içerik gönderip almasa bile, herhangi bir bağlantı kurulmasına devam edilir.

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.