c语言readme文件内容日记,README_C语言实现以太网卡的读写_系统相关_新兴源码下载...

IPMan Version:0.5b

作者:HiHintEmail:HiHint@hotmail.com

公开这个程序是出于教育的目的。程序的一些功能是危险的。因此,在没有许可的

情况下不要随意使用。程序的作者对随意使用造成的后果不负责任。

欢迎非商业性的使用,传播本程序。任何对本程序的传播必须包含本说明文件。

程序的源代码是公开的,可以被随意修改。程序作者对此不负责任。

一、简介

IPMan运行于Win95环境下的DOS命令行程序。主要功能是对以太网卡的直接读写。

它是通过vpacket.vxd来完成上述工作的。vpacket.vxd可以在如下的地址下载:

http://willow.canberra.edu.au/~chrisc/nat32.html#Other

也可以使用随本程序附带的vapcket.vxd。vpacket.vxd是不需要安装的。因此,IPMan

也不需安装。

编译IPMan需要VC4.0或更高的版本。

二、功能

当前版本的IPMan具有以下功能:

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

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

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

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

5.发送ARP报文。

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

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

主机感兴趣。

三、文件

IPMan.c源代码

IP.h各种包头定义

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

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

vpacket.vxd

vpacket.exevpacket.vxd编程环境。自解压文件。使用方法见展开后的vpacket.doc

文件(Word 97)。

README

四、初始参数

IPMan运行所需的初始参数都存放在文件IPMan.ini中。在IPMan运行前,有两个参数是

必须重新设定的:本机的IP地址和NDIS设备名。有关NDIS请参考:

http://www.microsoft.com/ddk

NDIS设备名一般是0000、0001等等。在Win95注册表的如下位置:

HKEY_LOCAL_MACHINE/System/CurrentControlSet/control/net/0000

IPMan.ini的格式类似于其它Windows应用的INI文件。有一点要注意的是,两个定义的

段中间必需用一个空行分隔。由"#"开始的行是注释行。以下是一个IPMan.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

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

五、命令行参数

IPMan的命令行参数如下:

无参数显示本机以太网址

[-?]显示帮助信息

[-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(目的以太网址)一定要填写。

SENDTCPtcpid 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\032stu2\013\010

RECVTCP 1

SENDTCP 1 PASS\032abc\013\010

RECVTCP 1

SENDTCP 1 BYE\013\010

RECVTCP 1

CLOSE 1

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

七、输出

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

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报文等。

九、感谢

在本程序和本文档的写作过程中,得到了Thomas F. Divine,Christopher Chlap和yuhj的

帮助,再此表示感谢 。

有什么意见或建议,欢迎和我联系。Email:HiHint@hotmail.com

HiHint Apr. 8, 1998

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:大白 设计师:CSDN官方博客 返回首页
评论
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值