IPMAN

更新时间:2021-03-27 03:30

IPMan运行于Win95环境下的DOS命令行程序。主要功能是对以太网卡的直接读写。它是通过vpacket.vxd来完成上述工作的。vpacket.vxd可以在如下的地址下载: 也可以使用随本程序附带的vapcket.vxd。vpacket.vxd是不需要安装的。因此,IPMan也不需安装。编译IPMan需要VC4.0或更高的版本。

功能

1.查询本机的以太网地址。

2.查询子网上任何机器的以太网址。

3.查询以太网址对应的IP地址。(未测试)

4.监听子网上流过的以太网包。

5.发送ARP报文

6.建立TCP连接,发送接收TCP报文

利用最后两个功能,可以伪装成子网上的任何一台机器。当然,我只对伪装成受信主机感兴趣。

文件

IPMan.c 源代码

IP.h 各种包头定义

IPMan.exe 可直接运行。只要当前目录下存在

vpacket.vxd

IPMan.ini IPMan运行所需的初始参数。

vpacket.vxd

vpacket.exe vpacket.vxd编程环境。自解压文

件。使用方法见展开后的vpacket.doc 文件(Word97)。

README

初始参数

IPMan运行所需的初始参数都存放在文件IPMan.ini中。在IPMan运行前,有两个参数是必须重新设定的:本机的IP地址和NDIS设备名。有关NDIS NDIS设备名一般是0000、0001等等。在Win95注册表的如下位置:KEY_LOCAL_MACHINE/System/CurrentControlSet/control/net/0000 ,IPMan.ini的格式类似于其它Windows应用的INI文件

--------------cut here--------------

#Every segment should be seperated by blank

line #My IP address

[IpAddr] // 本机的IP地址

xxx.xxx.xxx.1 #NDIS driver name

[NDIS] // NDIS设备名

0000 #Max data length

[MaxDataLen] // 输出时最多输出的字节数,详见

输出一节

4096 #IP table to query

[QueryIP] // IP地址列表,表示想要监听主机的

IP地址 xxx.xxx.xxx.2

xxx.xxx.xxx.3

#Port table to query // 端口列表,表示想要监

听主机的端口(TCP/UDP)

[QueryPort]

21 23 80 #Time out // 超时(未提供)

[TimeOut] 12345

参数

无参数 显示本机以太网址 [-?] 显示帮助信息

[-l[ini] [-ip:sour_ip[:dest_ip]]

[-port:sour_port[:dest_port]]]

-l 监听所有信息

-lini 监听信息有IPMan.ini的QueryIP和QueryPort过滤

-ip:sour_ip 过滤掉所有与sour_ip无关的IP包

sour_ip的格式为xxx.xxx.xxx.xxx

-ip:sour_ip:dest_ip 过滤掉非sour_ip与dest_ip之间通讯的IP包

-port:sour_port 过滤掉所有与sour_port无关的IP包

-port:sour_port:dest_port 过滤掉非sour_port和 dest_ip间通讯的IP包

[qeth:ip_addr] 查询ip_addr对应的以太网址

[-qip:eth_addr] 查询eth_addr对应的IP地址,以太网址的格式为 xx.xx.xx.xx.xx.xx(16进制)

[-fout:output_file] 输出文件

[-fcmd:command_file] 命令文件,用于发送ARP包、建立TCP连接等

详见命令文件一节

命令文件

IPMan的命令文件用于发送ARP包、建立TCP连接和接收、发送TCP报文。其格式为:

命令名 命令参数1 命令参数2 命令参数3 ...

可支持的命令有:

SENDARP my_eth targ_eth sour_eth sour_ip

dest_eth dest_ip operation

发送ARP报文。关于ARP报文,请参考TCP/IP协议

CONNECT my_eth targ_eth sour_ip dest_ip

sour_port dest_port tcpid

建立从sour_ip的端口sour_port到dest_ip的dest_port端口的TCP

连接。用tcpid作为标识。这个标识将用于下列命令。要注意的是my_eth(我的以太网址)和targ_eth(目的以太网址)一定要填写。 SENDTCP tcpid tcpmessage发送TCP报文。将tcpmessage发送到tcpid指定的连接。tcpmessage为一个不含空格的字串。空格或不可显示字符以xxx表示。xxx为 三位十进制数。

RECVTCP tcpid

接收由tcpid指定的TCP报文。

CLOSE tcpid 关闭由tcpid指定的TCP连接。

--------------cut here--------------

# A sample comment line

SENDARP xx.xx.xx.xx.xx.xx xx.xx.xx.xx.xx.xx

xx.xx.xx.xx.xx.xx xxx.xxx.xxx.xxx

xx.xx.xx.xx.xx.xx xxx.xxx.xxx.xxx 2

CONNECT xx.xx.xx.xx.xx.xx xx.xx.xx.xx.xx.xx

xxx.xxx.xxx.xxx xxx.xxx.xxx.xxx

1026 21 1

RECVTCP 1

SENDTCP 1 USER

RECVTCP 1

SENDTCP 1 PASS

RECVTCP 1

SENDTCP 1 BYE

RECVTCP 1

CLOSE 1

输出

错误输出到屏幕。标准输出可以可以是屏幕或由命令行指定。输出格式为:

xxx.xxx.xxx.xxx -> xxx.xxx.xxx.xxx // 源和目的IP地址

xx Byte(s) TCP/UDP/ARP/ICMP

Message:message_string

其中message_string的格式和上节的tcpmessage相同。xx Byte(s)表示实际收到的字节数。真正输出的字节数由INI文件指定。

将来

今后的版本将提供的功能包括建立伪UDP连接,发送和接收UDP报文,发送和接收 ICMP报文等。

叶问

电影《叶问》的英文名“IP MAN”

叶问为什么会翻译成IP MAN呢?

其实IP MAN仅仅是叶问的广东话(香港话)发音(拼音),在广东话里面“叶”的拼音写法是Ip,也可以是Yip,而“问”的话,广东话拼音则是“man”。所以Ip man仅仅是叶问的一个广东话拼音直译而已,简单明了,并不是什么Super man之类的。

类似这种广东话发音直接音译的还有许多,譬如:

MCDULL:麦兜;张家辉:CHEUNG KA FAI;张学友:CHEUNG HOK YAU;刘德华:LAU TAK WAH;吴宇森:NG YU SUM;张曼玉:CHEUNG MAN YUK;周润发:CHOW YUN FAT;梁朝伟:LEUNG CHIU WAI;谢霆锋:TSE TING FUNG;郭富城:KWOK FU SHING;林青霞:LAM CHING HA……

免责声明
隐私政策
用户协议
目录 22
0{{catalogNumber[index]}}. {{item.title}}
{{item.title}}