首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TCP端口访问和C++

TCP端口访问和C++
EN

Stack Overflow用户
提问于 2012-10-16 15:53:44
回答 1查看 1.7K关注 0票数 5

如果一个程序在Linux机器上运行,有没有办法让该程序扫描允许通过防火墙的端口?例如,如果一个程序员想要创建一个聊天系统,但是程序需要知道哪些端口没有被用户的防火墙拒绝访问传入的连接,那么有没有办法在您的代码中检查这一点?即使防火墙阻止同一端口进入连接,程序也可能无法将套接字绑定到端口。有没有办法检查打开的防火墙端口?

旁注:这纯粹是出于教育目的,并且没有不良意图,需要说明的是,我正在编写一个聊天系统,在测试期间,我无法连接台式机>笔记本电脑,直到我通过允许它通过防火墙手动打开了一个端口。对我来说,这似乎有点离谱,而且不像程序员的代码需要用户做的事情。更不用说,我不想让使用此代码的少数人处于危险之中(如果让端口永久开放,就会这样做)。因此,我似乎更适合找到一种方法来利用已经对传入TCP连接开放的端口。

旁注:所有客户端都在运行fedora

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-10-17 04:07:46

您偶然发现了当今管理新Internet应用程序创建的第二大问题。当然,第一个最大的问题是NAT,这是一个密切相关的问题(希望最终会因为IPv6而消失)。

一个很好的答案是UPnP,但这不是一个简单的答案,也绝不是通用的。

另一个答案是以某种方式通过https (如果需要的话,也可以是http )传输您所做的一切。但是对于像聊天应用这样的东西来说,这是一个巨大的痛苦。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12909941

复制
相关文章

相似问题

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