4

An application may be binding multiple sockets to a specific port,how can I get those sockets command line?

3 Answers 3

11

lsof will also provide you with information about open sockets:

$ lsof -i TCP:17500        
COMMAND PID    USER   FD   TYPE     DEVICE SIZE/OFF NODE NAME
Dropbox 244 username  19u  IPv4 0x05584748      0t0  TCP *:17500 (LISTEN)
2
  • what does 19u mean?
    – kernel
    Jun 20, 2011 at 10:36
  • @kernel, is the File Descriptor number of the file. "u" means r+w access. man lsof :)
    – scetoaux
    Jun 20, 2011 at 10:48
8

Netstat can provide you this information :

petrus@srv:~$ sudo netstat -taunp
Connexions Internet actives (serveurs et établies)
Proto Recv-Q Send-Q Adresse locale          Adresse distante        Etat        PID/Program name
tcp        0      0 127.0.0.1:4949          0.0.0.0:*               LISTEN      7837/munin-node 
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      6399/sshd       
udp        0      0 0.0.0.0:56317           0.0.0.0:*                           9639/rpc.statd  
udp        0      0 0.0.0.0:911             0.0.0.0:*                           9639/rpc.statd  

Output shortened for clarity.

2
  • I swear, I've never seen a Unix system speaking FRENCH before!
    – Massimo
    Jun 20, 2011 at 6:46
  • @Massimo: well, mine does :)
    – petrus
    Jun 20, 2011 at 8:35
1

If you are using *bsd system (I don't know if it exist for linux and other *nix), there is this socksat command, which does what you are looking for.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.