写了个TCP连接状态统计小工具,代替 netstat 和 find 命令组合

作者:V君 发布于:2022-6-26 11:33 Sunday 分类:我的应用

TL;DR for 立即想拿来用的人:[下载 |源代码 ]

然后是使用说明
 ConnectionStat.exe 若干监听端口参数
示例
 ConnectionStat.exe 80
 ConnectionStat.exe 443
 ConnectionStat.exe 80 443
首先会输出当前主机的连接状态统计,接着挨个参数指定的端口筛选统计
最后如果指定两个端口以上,则统计列出的端口连接状态总数

简单扯一扯

工作中有一些TCP协议的服务器用来接入各种设备,经常需要统计连接数来排查状况,经常用 netstat 和 find 命令搭配,每次使用都觉得麻烦,那就写个简单的工具来实现汇总,基于这个工具外面再套一层,从服务配置文件读取监听端口,这就更方便了。

标签: 软件开发 C# 软件故障诊断 TCP

评论(0) 引用(0) 浏览(178)

用C♯了写个传声筒——经由局域网在另一台电脑上播放声音

作者:V君 发布于:2022-2-10 22:39 Thursday 分类:我的应用

TL;DR for 立即想拿来用的人:[下载 |源代码 ]

在发送端静音,然后用命令行参数启动
 AudioNTR.exe 操作 参数…
示例
 AudioNTR.exe receiver 2333
 AudioNTR.exe transmitter 192.168.1.2 2333
只在两边都是 Windows 10 的环境下使用过,不确保其他环境也能用…
这玩意的全称是 Audio Net Transmitter Receiver 不要想歪了))

简单扯一扯缘起

在家中电子垃圾堆翻出一块焊满电容的独立声卡,是 PCI 插槽的,又找出一块有 PCI 插槽的主板,直推 XM4 一直当着播放机单独用,效果十分满意。但也有些毛病,经常出现主力机的声音(音箱)听不到或者听不清的情况。偶尔还会有发出声音的网页开着,不注意就很尴尬……

那时候首先去咕狗搜「Play audio on another computer」找到一堆现成的收费软件。(当然在做出来之后又发现了一堆开源的实现…)由于前些年摸过音频处理,知道有 NAudio 这个库在 NT6+ 可以轻松地截取、回放声音,于是就有了这个小玩意。

简单扯一扯开发感想

要狠狠地赞 NAudio 这个音频库,基本上想做的事情都在它的预期范围内,零造轮子,把组件连接起来就能用!

最后配一个简单的不能再简单地原理图

点击查看原图

标签: 软件开发 C# TCP 音频 .NetCore

评论(0) 引用(0) 浏览(345)

用C♯写了个特别的TCP端口转发器,经由SOCKS5转发TCP连接

作者:V君 发布于:2022-1-14 5:43 Friday 分类:我的应用

TL;DR for 立即想拿来用的人:[下载 |源代码 ]

命令行参数
 TcpRedirector.exe 监听地址 监听端口 SOCKS5地址(或者域名) SOCKS5端口 目的地址(或者域名) 目的端口
示例
 TcpRedirector.exe 127.0.0.1 1234 127.0.0.1 1080 example.com 80
仅支持匿名验证SOCKS5
只在 Windows 10、Server 2019 环境下使用过,不确保其他环境也能用…

简单扯一扯缘起

由于众所周知的原因…………………………

简单扯一扯开发感想

没啥想扯的,无非是不想用别人做好现成的,那就造轮子,在自己的机器上跑了两天,没出问题才发上来(其实是懒得安装py环境,那就自己简单写一个

标签: 软件开发 C# SOCKS SOCKET TCP

评论(0) 引用(0) 浏览(347)

TCPView未能完全统计网络活动-难道Sysinternals的工具不靠谱?

作者:V君 发布于:2016-4-1 21:26 Friday 分类:填坑经验

因为Sysinternals工具套装一直给我在软件故障诊断这类问题上带来优越的体验, 

我对它的信任也逐步提升甚至达到脑残粉级别.


最近, 我用其中的TCPView诊断服务器运行情况时

发现只显示连接发起, 没有显示这个连接的发送/接收的数据包或字节.

 

于是坚信咱们的服务程序有问题, 只是连接到对方而已, 并没有吐出数据.

 

由于这是很复杂的老项目, 出问题也一下子不知道是什么地方, 

只好放一边, 联系以前负责这个项目的人, 预约个时间来一起排查.

 

动摇: 等人来的这段时间中一次偶然的在自己的本子上跑起TCPView, 

发现只有系统进程才有收发数据统计,

别的绝大多数应用进程和在服务器遇到的情况一样 -- 有连接,但显示空的收发数据包和字节数.

唯独cFosSpeed的进程是有活动的, 可能是把别的进程流量集中到一起来调整优先级.

 

结果: 约到之前负责项目的人来一起解决问题, 他在另一端启动一个Socket调试工具.

启动监听 -- 发现确实有数据过来.


好吧, 我知错了. 可能复杂的服务器环境有类似cFos一样的东西来管理流量.


并不是说TCPView不靠谱, 而是显示的是系统层面真实的连接活动情况.

只不过这些连接活动可能受到个别软件影响.导致显示出的结果和实际有差别.

遇到这个问题的人不只是我, Sysinternals官方论坛也有人提到这个现象.


标签: 软件故障诊断 TCP Sysinternals 抓包

评论(0) 引用(0) 浏览(2006)

使用SOCKET需谨慎,莫让TCP Keep-Alive把你流量耗光

作者:V君 发布于:2016-1-25 18:13 Monday 分类:挖坑经验

点击查看原图

今天收到报告

说终端设备跑流量超标很厉害

因为不是咱的代码(将来就是了吧)

问了些情况 --

    应用层面日志很正常

    原始数据也不多

    (虽然仅记录从设备发来的)

怀疑是不是服务器抽风

一个劲的下发数据

于是直接上去抓包了

抓了一个小时, 打包传回


 \\我一看// (葛炮音


哎哟我的玛雅 按这个间隔

一个月能跑掉30M流量


对SOCKET/TCP/IP了解不多 不知道这是不是正常现象 不过从流量上来看绝对不正常


咕狗 && 问万能的麻衣阿姨    再回来看代码       

点击查看原图

嗯嗯 这下啪啪打脸, 走GSM无线的你拿来拔网线 (´∀((☆ミつ

点击查看原图

这下应该好了吧 (竖起拇指+牙齿闪光 

 

次日更:

不要觉得这样就大丈夫了, 还有问题 -- 连接数用完

又抓了一个小时, 发现大概每隔50秒会重新连接

点击查看原图

看来还是要开Keep-Alive, 设置到40秒吧, 每个月需要消耗2~3M流量

点击查看原图

继续观察...最后决定设置为45秒, 之后终于不浪费流量了.

标签: 软件开发 C# SOCKET TCP 抓包

评论(0) 引用(0) 浏览(1763)

Powered by emlog 去你妹的备案 sitemap