Bir bash betiğinden, bir bağlantı noktasının 445
sunucuda açık / dinleme olup olmadığını nasıl hızlı bir şekilde öğrenebilirim .
Birkaç seçenek denedim, ama hızlı bir şey istiyorum:
1. lsof -i :445
(Saniye sürer)
2. netstat -an |grep 445 |grep LISTEN
(Saniye sürer)
3. telnet
(geri dönmez)
4. nmap
, netcat
sunucuda mevcut değildir
İlk önce numaralandırılmayan ve ondan sonra açılan bir yol bilmek güzel olacaktır.
netstat -lnt
(olan -t
ve olmayan -a
) çıkışı yalnızca dinleme TCP bağlantılarıyla sınırlar. Biraz hızlanabilir. -4
IPv4 için yalnızca IPv6'ya ihtiyacınız yoksa ekleyebilirsiniz .
netstat -an | grep PORTNUMBER | grep -i listen
Çıktı boşsa, bağlantı noktası kullanımda değildir.
lsof
yavaş olduğunu bilmiyorum , ancak normalde listelediğiniz çözümlerin en iyisi. Sizin netstat
çözüm çok güvenilir değil (kullandığınız zaman bunu tahmin edebilirsiniz grep
; yine de birileri ör 4450 dinleyen true döndürür). telnet
ve netcat
aslında her zaman istediğiniz gibi olmayabilecek bir bağlantı oluşturmaya çalışın.