gpt4 book ai didi

linux - 显示套接字选项

转载 作者:IT王子 更新时间:2023-10-29 00:06:28 26 4
gpt4 key购买 nike

我如何从 shell 中看到设置了哪些套接字选项?尤其是我很想知道是否设置了 SO_BROADCAST?

最佳答案

您可以使用 lsof(8) .如果 PID 是进程 ID,FD 是您感兴趣的套接字的文件描述符编号,您可以这样做:

lsof -a -p PID -d FD -T f

列出进程的所有 IPv4 套接字:

lsof -a -p PID -i 4 -T f

这将打印出带有 SO= 的套接字选项,以及其他信息。请注意,如果未设置任何选项,您将得到空字符串,因此您会看到类似 SO=PQLEN=0 等的内容。要测试 SO_BROADCAST,只需SO= 之后的字符串 SO_BROADCAST 的 grep,例如

if lsof -a -p PID -d FD -T f | grep -q 'SO=[^=]*SO_BROADCAST'; then
# socket has SO_BROADCAST
else
# it doesn't
fi

关于linux - 显示套接字选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1824115/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com