在linux上,如何检查端口是否处于监听状态而不尝试连接

2024-01-31

如何使用 C 检查本地计算机上的端口(如果也需要传递 IP 或接口)是否处于侦听状态?我不想连接到这个端口进行检查,因为我不想激怒这个端口后面的服务。

我想用它来将缺少的 net.tcp.listen 项目添加到 Zabbix。

编辑-这是真正的答案:

正确的方法是读取套接字表:

/proc/net/tcp /proc/net/tcp6

它们包含如下行:

sl  local_address rem_address   st tx_queue rx_queue tr tm->when retrnsmt   uid  timeout inode
0: 00000000:1F40 00000000:0000 0A 00000000:00000000 00:00000000 00000000   101        0 4083927 1 f5d15240 750 0 0 2 -1
1: 00000000:2742 00000000:0000 0A 00000000:00000000 00:00000000 00000000  1002        0 6100 1 decd76c0 750 0 0 2 -1

并且可以轻松解析监听套接字(dst:00000000:0000)。 netstat 上的 strace 显示 netstat 的工作方式相同。


只需尝试打开端口进行监听即可。你会得到一个错误。

您无法从另一个进程窃取端口,因此这将是安全的,并且当然易于实现,因为除了正确的错误处理之外,它不需要其他代码。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在linux上,如何检查端口是否处于监听状态而不尝试连接 的相关文章

  • c# 从另一个类中的另一个静态事件引发事件

    需要帮助从另一个班级调用事件 我有已声明事件的课程 public class MxPBaseGridView GridView public event AddNewItemsToPopUpMenuEventHandler AddNewIt
  • 将 OpenCV Mat 转换为数组(可能是 NSArray)

    我的 C C 技能很生疏 OpenCV 的文档也相当晦涩难懂 有没有办法获得cv Mat data属性转换为数组 NSArray 我想将其序列化为 JSON 我知道我可以使用 FileStorage 实用程序转换为 YAML XML 但这不
  • 如何以编程方式播放 16 位 pcm 数组 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我有一个包含 16 位 pcm 值的短 数组 我希望能够在不添加任何标题 也不将任何文件保存到内存的情况下播放它 我知道我可能需要一个提供
  • 全局使用和 .NET Standard 2.0

    我最近意识到我可以使用 C 10 功能文件范围的命名空间在 NET Standard 2 0 项目中也可以通过设置
  • C# 编译器数字文字

    有谁知道 C 编译器数字文字修饰符的完整列表 默认情况下 声明 0 使其成为 Int32 声明 0 0 使其成为 Double 我可以在末尾使用文字修饰符 f 来确保某些内容被视为 Single 例如像这样 var x 0 x is Int
  • 静态类与类的实例

    我有一个静态类 用于访问我的公共属性 整个应用程序的全局属性 和我在应用程序运行期间使用的方法 例如 我在静态类中设置了一些属性 并且在应用程序运行时我可以从属性中获取值 但我可以使用单例模式创建非静态类并以相同的方式使用它 问题 对于我的
  • 在 C# 中何时使用 ArrayList 而不是 array[]?

    我经常使用一个ArrayList而不是 正常 array 当我使用时 我感觉好像我在作弊 或懒惰 ArrayList 什么时候可以使用ArrayList在数组上 数组是强类型的 并且可以很好地用作参数 如果您知道集合的长度并且它是固定的 则
  • 你好,我最近正在开发我的新游戏,我遇到了*无限跳跃*的问题

    所以基本上当我按跳跃 空格键时我会跳跃但是如果我连续按空格键它 只是跳啊跳啊跳等等 我不想要我只想它跳一次 code if Input GetKeyDown space isGrounded velocity y Mathf Sqrt ju
  • 确定我可以向文件句柄写入多少内容;将数据从一个 FH 复制到另一个 FH

    如何确定是否可以将给定数量的字节写入文件句柄 实际上是套接字 或者 如何 取消读取 我从其他文件句柄读取的数据 我想要类似的东西 n how much can I write w handle n read r handle buf n a
  • 如何在 C# 中获取 Json 数组?

    我有一个像这样的 Json 字符串 我想将它加载到 C 数组中 当我尝试这样做时 我收到异常 我的字符串 customerInformation customerId 123 CustomerName Age 39 Gender Male
  • 无法为 wsdl 文件创建服务引用

    I have wsdl文件和xsd我本地机器上的文件 我想在项目中添加服务引用 我没有网络服务 我只有wsdl file 我收到以下错误 The document was understood but it could not be pro
  • 快速像素绘图库

    我的应用程序以每像素的方式生成 动画 因此我需要有效地绘制它们 我尝试过不同的策略 库 但结果并不令人满意 尤其是在更高分辨率的情况下 这是我尝试过的 SDL 好的 但是慢 OpenGL 像素操作效率低下 xlib 更好 但仍然太慢 svg
  • ALTER TABLE ... ADD CONSTRAINT 失败时将事务回滚到保存点

    有没有办法在事务中添加检查约束and如果失败回滚到以前的保存点 而不是回滚整个事务 就我而言 当 ALTER TABLE ADD CONSTRAINT 命令失败时 事务无法回滚到保存点 尝试这样做会引发 InvalidOperationEx
  • C# 中的 C/C++ 代码编译器

    在 C 中 我可以使用下面的代码编译 VB 和 C 代码 但无法编译 C C 代码 有什么办法可以做到这一点吗 C 编译器 public void Compile string ToCompile string Result null st
  • 无法在 C# 中为 EventArgs 分配使用派生类型的事件处理程序

    所以我有一个事件声明如下 public event EventHandler OnChangeDetected 然后我有以下处理程序被分配给该事件 myObject OnChangeDetected OnTableChanged 我的理解是
  • 如何在dll级别读取app.config? [复制]

    这个问题在这里已经有答案了 我在一个解决方案中有一个控制台应用程序项目和库项目 dll The 图书馆项目有 app config 文件 我在其中存储我在库中使用的一些键值对 控制台应用程序引用此 dll 我有另一个 app config
  • 在哪里可以下载没有 Visual Studio 2010 的 C# 4.0 编译器?

    我知道 CTP VS 2010 映像 但我可以只下载 NET Framework 4 0 和 C 编译器吗 AFAIK VS 2010 CTP 仅作为 VM 映像提供 我不相信 Microsoft 发布了 VS 的安装程序 其中一个绝对不适
  • Xamarin.Forms UWP 项目中标题栏和选项卡之间令人恼火的空白

    我几乎是新手Xamarin Forms我正在开发一个相当简单的跨平台应用程序 该应用程序在 Android 中显示得足够好 但在 UWP 中却出现了一个愚蠢的空白 该项目由一个 TabbedPage 组成 其中包含 4 个 Navigati
  • 有没有办法直接在函数参数中格式化字符串而不是使用临时字符串?

    我有一个接受字符串 字符数组 作为参数的函数 void enterString char my string 当使用这个函数时 我经常发现自己想要输入格式化的字符串 我使用 sprintf 来做到这一点 然而 我每次都必须创建一个临时字符串
  • 无法识别解决方案文件夹中的 Visual Studio 2017 Nuget.config

    我在使用 Visual Studio 2017 时遇到问题 新的解决方案不断引用 C Users yopa AppData Roaming NuGet Nuget config 中意外位置的 Nuget config 文件 我已将 nuge

随机推荐

  • 从会话存储文件中读取会话数据

    面临问题PHP unserialize 函数如标题所示 它抛出错误 unserialize function unserialize Error at offset 0 of 1781 bytes 我也尝试过session decode 返
  • 如何将详细垃圾收集输出重定向到文件?

    如何将详细垃圾收集输出重定向到文件 Sun 的网站显示了 Unix 的示例 但不适用于 Windows 从输出java X Xloggc
  • 如何将从请求生成的 xml 结构转换为 Web 服务

    我有一个字符串 var 用于存储来自对 RESTful 服务的请求的 xml 我在使用 xslt 文件动态转换此文件而不保存它时遇到问题 我收到这个错误 System UriFormatException Invalid URI The U
  • C# 在 application.run() 之后执行代码

    我有一个与此类似的问题 表单启动后如何执行代码 https stackoverflow com questions 4100428 how can i execute code after my form starts 但那里的解决方案对我
  • 是否可以将 Protobuf-Net 与没有无参数构造函数的类一起使用?

    使用 Protobuf Net 我发现在没有无参数构造函数的情况下似乎不可能反序列化一个类 或者我可能会丢失一些东西 我不想要一些带有无参数构造函数的类 我可以使用某种属性或其他技术吗 protobuf net 目前依赖于无参数构造函数的工
  • 缩略图/图像缓存文件?

    为了为我正在编写的应用程序提供更好的安全性和隐私性 我将删除在 Android 设备上找到的图像和图片 因此 我很想知道操作系统是否创建了任何缓存 缩略图文件 例如 以便图库应用程序可以在处理完整的实际文件之前显示快速预览 如果创建了此类文
  • 关于Python Flask 500 Internal Server Error的问题

    这是我的Python代码 from flask import Flask render template app Flask name app route profile
  • 逐渐淡化图片

    此功能的想法是仅淡化图片的上半部分 使其逐渐变暗 这是我所拥有的 但它似乎使所有上半部分变成纯黑色 def fadeDownFromBlack pic1 w getWidth pic1 h getHeight pic1 for y in r
  • 为什么我的 Heroku 应用程序无法在生产环境中使用 Sendgrid 发送电子邮件?

    我的设计电子邮件在开发中运行良好 但现在我已经推送到 Heroku 并正在使用 sendgrid 插件 它们没有被发送 我没有收到错误 看起来它发送得很好 只是它从未真正到达我的收件箱 这是我的config environment prod
  • 按最大日期分组

    我在执行这段代码时遇到问题 SELECT FROM tblpm n WHERE date updated SELECT MAX date updated FROM tblpm GROUP BY control number HAVING c
  • SQL Server 对 OrmLite 的特定类型支持

    我刚刚了解了一种天才类型 它可以简化我的很多工作 但看起来我喜欢的 ORM 无法识别它 有没有办法让 ServiceStack OrmLite 识别HierarchyId在 SQL Server 中 关于要修改哪些文件的任何建议以及如何继续
  • 停止 Xcode 自动为 Objective-C 标头生成 Swift 接口

    是否可以在显示 Objective C 标头时阻止 Xcode 8 自动生成 Swift 界面 例如通过设置用户默认值 从理论上讲 这是 Xcode 的一个非常好的功能 不幸的是它不能可靠地工作 对我来说 大多数时候它甚至似乎都失败了 由于
  • 在 Python 中重新启动线程

    我正在尝试为 Python 3 4 中的一个项目制作线程飞行软件 其中我需要线程自行重新启动 以防在传感器读取期间发生 I O 错误或类似的意外崩溃 因此 我正在努力制作一个看门狗来检查线程是否已死亡并重新启动它们 起初 我尝试检查线程是否
  • CSS最后一行没有结束标记“;”的原因是什么? [复制]

    这个问题在这里已经有答案了 我使用 CSS 一段时间了 我发现在很多教程和练习中 CSS 标记的最后一行没有 添加到其中 例如 ul li hover ul display block ul li ul list style none po
  • 尝试在 Heroku 上部署 Node.js/Express/Socket.io 应用程序时出现应用程序错误

    我对所有这些技术 包括一些 JavaScript 都相当陌生 所以你可能需要耐心听我说 我相当仔细地遵循了 Socket IO 文档中的 ChatApp 教程 并根据我的喜好对应用程序进行了一些修改 然而 我认为我在服务器交互和其他方面没有
  • 如何使用 JavaScript 创建 zip 文件?

    我发现了一个可以生成zip文件的javascript插件 它的名字叫jszip https stuk github io jszip 我尝试过 但我认为它只能生成将在 zip 文件中编译的文件 我想要的是能够将现有文件添加到它将生成的 zi
  • SQLite 的 DLL 地狱

    我们的一些用户遇到了运行时加载的 sqlite interop dll 版本的问题 这确实令人头疼 背景 为 AnyCPU 构建的 WPF 应用程序 使用 SQlite NET 和 sqlite interop dll 版本 1 0 89
  • 如何叠加两个geom_bar?

    我正在尝试覆盖 2 个条形图geom bar源自 2 个独立的 data frames dEQ lab perc 1 lmP 55 9 2 lmN 21 8 3 Nt 0 6 4 expG 5 6 5 expD 0 0 6 prbN 11
  • 如何使用 java.util.logging 对齐日志消息

    有人可以发布如何实现日志消息对齐 10 14 31 main package1 Class1
  • 在linux上,如何检查端口是否处于监听状态而不尝试连接

    如何使用 C 检查本地计算机上的端口 如果也需要传递 IP 或接口 是否处于侦听状态 我不想连接到这个端口进行检查 因为我不想激怒这个端口后面的服务 我想用它来将缺少的 net tcp listen 项目添加到 Zabbix 编辑 这是真正