
DuplexPipe
文章平均质量分 85
redraiment
我在大学里修软件工程专业,目前在一家外企银行中做软件开发工作。
我很喜欢我自己的专业,因此无论是在校期间或者是工作之余,我都会主动去学习一些自己感兴趣的内容。我很庆幸我的自学能力不错,所以学习的过程往往不会索然无味。
此外,我很喜欢动手实践。我会利用业余时间开发一些小工具和大家分享,来提高我们的工作效率,有几个已经发布到 google code 上。因为我信奉:学习知识是用它来改善我们的生活!
展开
-
DuplexPipe二三事(一)——有趣的起因:算24
写 DuplexPipe 是因为“无聊”!真的,那天很无聊,想起小时候用扑克牌和姐姐比赛算24,就随手写了一个 Shell 脚本重温一下:#!/bin/shfor ((i=0;i<4;i++))do ((n=$RANDOM%10+1)) echo -n "$n "doneechoi=0while read expdo ((i++))原创 2009-09-03 10:56:00 · 3407 阅读 · 6 评论 -
Linux下用nc实现DuplexPipe
nc 是一把网络的瑞士军刀,我以前在介绍 DuplexPipe 时也提到过,如果你没接触过它,可以先参看一下《DuplexPipe二三事(二)》。再来简单地介绍一下 DuplexPipe,顾名思义,它是一个“双向管道”。在 shell 中,我们通过“|”使用匿名管道,让前一条命令的输出作为后一条命令的输入;双向管道即在此基础上在加上“后一条命令的输入作为前一条命令的输入”。这是最初开发它的原因,但原创 2010-01-25 23:03:00 · 3879 阅读 · 1 评论 -
DuplexPipe二三事(六)——没有第七
我的设想在着手编写 DuplexPipe 之前,我规划过我的需求:我想要一个最通用的通信工具,换言之就是能让所有具有输入/输出的程序都可以相互通信。DuplexPipe 本身远没达到这个设想,至少还得具备以下几中模式:-f file # 通过读写文件获得数据-s # 从 stdio 中获得数据-e exefile # 从本地程序的输入输出原创 2009-09-05 12:42:00 · 2904 阅读 · 0 评论 -
DuplexPipe二三事(五)——来自内网的呼唤
穿越防火墙你是否曾经尝试过去连接一台远程计算机,却因为被防火墙拦截或路由器没有转发而造成无法通信?这是主动式连接的一个弊端:它依赖服务器的状态,而对服务器有生杀大权的只有管理员。如果能让服务器主动尝试连接我们的计算机,那就没问题了!因为防火墙、路由等一般不会过滤向外的连接(反弹式木马就是利用这一原理)。但以往的服务端程序都是采用监听本地端口的方式(比如 Windows 远程桌面程序监听本地原创 2009-09-04 20:07:00 · 7982 阅读 · 2 评论 -
DuplexPipe二三事(四)——网络连接方式随心换
连接方式在《DuplexPipe二三事(一)》中提到建立连接有两种方式:监听本地端口,等待其他程序来连接(以下简称“监听方式”);或者主动连接其他程序(以下简称“连接方式”)。排列组合一下,会得到三种结果:监听-连接、监听-监听、连接-连接。其中只有“监听-连接”方式能正确地建立连接,《DuplexPipe二三事(三)》中介绍的 FPipe 只是在其中添加了一节“监听-连接-监听-连接”,其中原创 2009-09-04 13:18:00 · 8590 阅读 · 0 评论 -
DuplexPipe二三事(三)——网络中转站:端口映射
端口映射在《DuplexPipe二三事(二)》中介绍了瑞士军刀 nc 的用法:nc 就像给程序一张飞机票,让原本只能在本地执行的程序也能运行在网络上!但网络和现实交通一样,很多地方需要中转才能到达(比如外网计算机无法直接访问公司内部 Web 服务器)。为实现公网对内部网络的访问,需要对数据进行转发(即端口映射)。比如内网“主机A”开启了 Web(port 80)服务,需要在“服务器的网关”原创 2009-09-04 10:23:00 · 3837 阅读 · 0 评论 -
DuplexPipe二三事(二)——瑞士军刀再显锋芒:让程序相互聊天
瑞士军刀NCnc(NetCat)是我很喜欢的一个小工具。在我常用的网络小工具中使用频率仅次于 cURL 。nc 属于传输层的工具(TCP/IP 四层模型请看这里),它能保证准确无误地发送和接收数据,但并不关心数据的具体含义(这些工作交给应用层的软件)。难怪说 nc 是网络的瑞士军刀,因为所有应用层的软件都是通过各自的网络协议来解析来自传输层的数据。所以,只要你了解应用层协议(比如HTTP、PO原创 2009-09-03 13:22:00 · 3671 阅读 · 0 评论 -
DuplexPipe-0.1_0发布
项目主页:http://code.google.com/p/duplexpipe/DuplexPipe 是我开发的一个开源网络小工具——双向管道,目的是让网络上的两个程序能进行自动化交流。当初写这个小工具的原因是为了能在外网远程控制内网计算机。传统的管道只能从一端输入、一端输出。双向管道不仅可以让进程 A 的输出作为进程 B 的输入,也会让进程 B 的输出作为进程 A 的输入。这样就可以让原创 2009-09-02 01:25:00 · 2893 阅读 · 1 评论 -
在 Cygwin 下编译 netcat_1.10-38
在 Cygwin 里手工编译并安装 netcat_1.10-38 版本,并模式 WireShark 的监听功能。原创 2011-03-18 08:06:00 · 5705 阅读 · 4 评论