Sonsuza kadar göründüğü şey için CLOSE_WAIT durumunda TCP bağlantıları toplayan bir SLES makinem var. Bu tanımlayıcılar sonunda tüm kullanılabilir belleği emer. Şu anda 3037 tane var, ancak son zamanlarda acele etmeden önce çok daha yüksekti.
İlginç olan şey, dinleme süreçleri olmasını beklediğim yerel bağlantı noktalarına bağlantı olmaması. İlişkili PID'leri yok ve zamanlayıcılarının süresi dolmuş gibi görünüyor.
# netstat -ton | grep CLOSE_WAIT
tcp 176 0 10.0.0.60:54882 10.0.0.12:31663 CLOSE_WAIT off (0.00/0/0)
tcp 54 0 10.0.0.60:60957 10.0.0.12:4503 CLOSE_WAIT off (0.00/0/0)
tcp 89 0 10.0.0.60:50959 10.0.0.12:3518 CLOSE_WAIT off (0.00/0/0)
# netstat -tonp | grep CLOSE_WAIT
tcp 89 0 10.0.0.59:45598 10.0.0.12:1998 CLOSE_WAIT -
tcp 15 0 10.0.0.59:60861 10.0.0.12:1938 CLOSE_WAIT -
tcp 5 0 10.0.0.59:56173 10.0.0.12:1700 CLOSE_WAIT -
Ben TCP yığına gelince kara kuşak değilim, ya da çekirdek ağı, ancak TCP yapılandırma aklı gözüküyor, çünkü bu değerler man sayfası başına varsayılandır:
# cat /proc/sys/net/ipv4/tcp_fin_timeout
60
# cat /proc/sys/net/ipv4/tcp_keepalive_time
7200
Peki ne verir? Zamanlayıcıların süresi dolmuşsa, yığın otomatik olarak bu şeyleri temizlememeli midir? Bu şeyler oluştukça kendime uzun vadeli DoS vereceğim.
sudo netstat -tonp
Hangi programın gerçekleştiğini görmeye çalışın .