首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >lsof显示协议: TCP

lsof显示协议: TCP
EN

Unix & Linux用户
提问于 2018-11-19 23:38:10
回答 2查看 5K关注 0票数 4

我运行了sudo lsof -p $(pidof foo),我得到了很多这些。有人知道这些代表什么吗?我知道它们来自进程,但是没有端口/ IP地址。

代码语言:javascript
复制
COMMAND    PID USER   FD      TYPE             DEVICE  SIZE/OFF      NODE NAME
foo   115450 root  592u     sock                0,7       0t0 957442022 protocol: TCP
foo   115450 root  593u     sock                0,7       0t0 956964126 protocol: TCP
foo   115450 root  594u     sock                0,7       0t0 957091053 protocol: TCP
foo   115450 root  595u     sock                0,7       0t0 957498237 protocol: TCP
foo   115450 root  596u     sock                0,7       0t0 957077603 protocol: TCP
foo   115450 root  597u     sock                0,7       0t0 957211699 protocol: TCP
EN

回答 2

Unix & Linux用户

发布于 2020-04-14 18:22:03

如果史蒂芬·哈里斯的答案因为作为评论而被删除,我会把它作为答案发布:

您的应用程序已经在TCP域中创建了一个套接字(可能通过套接字(2)),但没有将它绑定到任何端口(例如通过连接(2)、侦听(2)或绑定(2))。

票数 1
EN

Unix & Linux用户

发布于 2019-07-26 21:47:57

尝试使用strace和"-e trace=network“选项来找出哪些代码不正确地使用套接字。例如,

代码语言:javascript
复制
[pid 16700] getsockopt(6, SOL_SOCKET, SO_ERROR, [0], [4]) = 0
[pid 16700] getpeername(6, {sa_family=AF_INET, sin_port=htons(12345), 
 sin_addr=inet_addr("10.4.50.77")}, [112->16]) = 0
[pid 16700] getsockname(6, {sa_family=AF_INET, sin_port=htons(23456), 
 sin_addr=inet_addr("10.4.100.60")}, [112->16]) = 0
[pid 16700] setsockopt(6, SOL_TCP, TCP_NODELAY, [1], 4) = 0
[pid 16700] setsockopt(6, SOL_SOCKET, SO_KEEPALIVE, [1], 4) = 0
[pid 16700] setsockopt(6, SOL_TCP, TCP_KEEPINTVL, [15], 4) = 0
[pid 16700] setsockopt(6, SOL_TCP, TCP_KEEPIDLE, [15], 4) = 0
票数 0
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/482866

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档