首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >关闭接口上的所有TCP套接字

问关闭接口上的所有TCP套接字
EN

Stack Overflow用户
提问于 2010-07-19 21:15:35
回答 2查看 2.4K关注 0票数 4

一旦以太网接口断开(即电缆断开,接口关闭等),我需要关闭所有正在进行的Linux TCP套接字。

入侵/proc似乎并没有起到作用。没有找到任何有价值的ioctl。在应用程序级别手工操作并不是我想要的,我真的在寻找一种粗暴的、全球化的方式。

anyane以前有过这样的经历并愿意分享他的基础吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-07-19 21:24:21

避免应用程序级编码的最残酷的方法是黑客攻击您的内核,以便在所有连接超时较低的情况下激活TCP keepalive。

票数 0
EN

Stack Overflow用户

发布于 2010-07-20 04:24:37

这是很少需要的,而且经常是不起作用的。TCP是一种数据传输协议,除非有数据丢失,否则什么都不应该做。三思而后行,为什么你会需要它。

否则,您可以尝试定期轮询接口并检查UP标志。如果接口松开标志,则操作系统已经对拔出电缆和关闭接口做出了反应。man 7 netdevice,查看SIOCGIFFLAGS了解更多。

即使在插入电缆时,网络驱动程序也会在上生成事件,但我不确定您是否可以从用户访问该事件。您可能希望检查udev,因为它的documentation显式地提到了network interfaces。

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

https://stackoverflow.com/questions/3281315

复制
相关文章

相似问题

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