导航:首页 > 程序命令 > tfa命令

tfa命令

发布时间:2024-03-02 04:30:31

① 发包长度大于1518的发包工具

三款常用IP发包工具介绍
SENDIP 可在各种UNIX 或LINUX 版本中运行,本人使用的是SLACKWARE 8.0 和
REDHAT 9.0 两个版本。
可在网站http://www.earth.li/projectpurple/progs/sendip.html 中下载最新的源代码或RPM
包,目前版本为2.5,源码包大小只有54K。
2.1.1. 安装过程
SENDIP 的安装过程非常简单,首先从前面介绍的网站中下载最新的源代码包,目前为
sendip-2.5.tar.gz。
在LINUX 系统中执行:
#tar –xzvf sendip-2.5.tar.gz
#cd sendip-2.5
#make
#make install
在系统的/usr/local/bin 目录下会产生一个SENDIP 命令文件,同时,在/usr/local/lib 目录
下建立一个sendip 目录,并在其下放置ipv4.so、ipv6.so、tcp.so 等与协议相关的模块文件。
通过在命令行下运行这个文件,我们可以产生各种各样我们需要的IP 包,还可以通过运行
脚本自动发送大量的IP 包。
AntPower 版权所有&; 2003 技术文章
http://www.antpower.org 第3 页共14 页
2.1.2. 发包方法
SENDIP 可以发送NTP, BGP, RIP, RIPng, TCP, UDP, ICMP、IPv4 和IPv6 等各种格式的
数据包,SENDIP 本身是以模块的方式发送各种协议的数据包,用-p 参数指定协议类型,要
发送每种协议的数据包, 必须对该协议的数据包格式有一定的了解。通常发送
TCP/UDP/ICMP 数据包时,都必须以IP 包进行封装,然后才可以发出去。本节我们将以TCP
数据包为例进行讲述。
下面介绍一下SENDIP 的命令行格式,以下为直接执行SENDIP 时的输出:
Usage: sendip [-v] [-d data] [-h] [-f datafile] [-p mole] [mole options] hostname
-d data add this data as a string to the end of the packet
Data can be:
rN to generate N random(ish) data bytes;
0x or 0X followed by hex digits;
0 followed by octal digits;
any other stream of bytes(以指定字节的随机数据填充包中的数据段)
-f datafile read packet data from file(以指定数据文件中的内容填充包中的数据段)
-h print this message(输出帮助信息)
-p mole load the specified mole (see below)(指定协议类型)
-v be verbose(运行时输出详细运行信息,如不指定,运行时不输出信息)
(协议类型是以模块的方式指定的,用-p 参数指定)
Moles are loaded in the order the -p option appears. The headers from
each mole are put immediately inside the headers from the previos model in
the final packet. For example, to embed bgp inside tcp inside ipv4, do
sendip -p ipv4 -p tcp -p bgp ....
Moles available at compile time:
ipv4 ipv6 icmp tcp udp bgp rip ntp(支持的协议类型)
通常执行格式如下:
#sendip –v –d r64 –p ipv4 –iv 4 –ih 5 –il 128 –is 10.0.0.1 –id 30.0.0.1 –p tcp –ts 1379 –td 23 –tt 8 30.0.0.1
-v:运行时输出详细运行信息,如不指定,运行时不输出信息
–d r64:用64 字节的随机数值填充IP 包中的数据段
–p ipv4:指定协议类型为IP 协议(IP 协议有自己的相应参数,以i 开头)
–iv 4:协议版本为4,即IPV4
–ih 5:指定IP 头的长度为5×4=20 字节
–il 128:指定IP 包的总长度为128 字节
–is 10.0.0.1:指定IP 包的源地址
–id 30.0.0.1:指定IP 包的目的地址
AntPower 版权所有&; 2003 技术文章
http://www.antpower.org 第4 页共14 页
–p tcp:指定IP 包中封装的包的协议类型(TCP 协议有自己的相应参数,以t 开头)
–ts 1379:指定TCP 包的源端口1379
–td 23:指定TCP 包的目的端口为23
-tt 8:指定TCP 包的偏移量即TCP 头的长度,没有TCP 选项时为5,即20 字
节,有TCP 选项时需要增加。
30.0.0.1:指定发包的目的主机
以上部分为利用SENDIP 发送一个简单的TCP 数据包的方法,下面结合IP 和TCP 数据
包的格式详细介绍IP 和TCP 协议的各种参数。
具体各种协议的数据包格式可参考TCP/IP 协议中对各种协议数据包格式的介绍,下面
我们只介绍IP 数据包的格式和TCP 数据包的格式:
IP 数据包的格式:
根据IP 数据包的格式,SENDIP 有如下命令行参数可以指定对应的IP 数据包中参数的
值。
Field name
Size
(bits)
SendIP
option
Description
Version 4 -iv Always 4(对应“4 位版本”,通常值为4,表示IPV4)
Header length 4 -ih
IP header length, measured in 32bit words, 5 if there are
no options(对应“4 位首部长度”,表示以32 位即4
字节为单位的IP 首部长度,如果没有IP 参数的话,
通常为5,表示首部长度为20 字节,如有IP 参数的
话,需要调整该值)
Type of
Service/Differentiated
Services
8 -iy
服务类型(TOS)字段由8 位组成,其中包括3 位的
优先权字段(现已被忽略)、4 位的TOS 子字段和1
位未用位但必须置0,4 位TOS 子字段分别代表最小
时延、最大吞吐量、最高可靠性和最小费用。4 位只
能置其中1 位,使用时只要将设置相应位后运算出十
进制值即可。如要设置最大吞吐量位(00001000),只
需添加参数iy 8 即可。
Total Length 16 -il Total length of IP packet including header and data,
AntPower 版权所有&; 2003 技术文章
http://www.antpower.org 第5 页共14 页
measured in octets(指定IP 包的总长度,包括IP 头部
分和数据部分,以8 位字节为单位,最长为65535)
Identification 16 -ii
Used to help reassembled fragmented packets(指定IP
包的标识号,用来帮助重新组装分段的IP 包)
-ifr 1 bit: reserved, should be 0
-ifd 1 bit: don't fragment(可指定-ifd x,下可为0、1 或r) Flags 3
-ifm 1 bit: more fragmets(可指定-ifm x,下可为0、1 或r)
Fragment offset 13 -if
Where in the reconstructed datagram this fragment
belongs, measured in 64bit words starting from 0(以8
字节长度为单位,指定段偏移量)
Time to Live 8 -it
Number of routers the packet can pass through before
being discarded(值的范围从0 到255,指定TTL,表
示该包可通过的路由器的数目,用于防止包在循环路
径上无休止地传递)
Protocol 8 -ip
Protocol associated with the data. See iana for an
uptodate list of assigned numbers(用于定义IP 包内部
封装的上层协议的协议号,如TCP 为6,可在IANA
的网站上
http://www.iana.org/assignments/protocol-numbers
获得最新的协议号表)
Header checksum 16 -ic
Checksum of the IP header data (with checksum set to
zero)(可指定IP 首部校验和的值,通常由SENDIP 自
动生成,不指定该参数,除非要发出带有错误校验和
的包)
Source Address 32 -is Duhh...(源地址,以点分十进制方式表示)
Destination Address 32 -id Cabbage(目的地址,以点分十进制方式表示)
Options Variable -io...
No options are required. Any number can be added. See
below for details(定义各种IP 选项,如果定义了IP
选项,则前面的IP 头的长度值要包括IP 选项的长度,
不带IP 选项时,该值为20,带IP 选项时,可设定该
值,如果要故意制造不匹配的包,可不符合规范。)
如果有IP 选项,还可指定IP 选项的值,SENDIP 支持的IP 选项如下表所示。
Name
SendIP
option
RFC Copy Class Number
Type
(see
above)
Length
(0 not
present)
Description
EOL -ioeol 791 0 0 0 0 0
Used as padding if needed
(使用该选项后,会自动在IP 头
中未用到的位补0)
NOP -ionop 791 0 0 1 1 0
Do nothing. Often used as padding
so the next option starts on a 32 bit
AntPower 版权所有&; 2003 技术文章
http://www.antpower.org 第6 页共14 页
boundary
RR -iorr 791 0 0 7 7 variable
Used to record the route of a
packet.(记录包走过的每个路由
器, 通常用法是: -iorr
0f:ff.ff.ff.ff:10.0.0.234 –ioeol,其中
iorr 表示记录路由,此时系统会自
动将IP 选项号置为07,0f 表示指
针,即记录的最后一个IP 地址的
指针,系统会自动运算该IP 选项
的长度)
TS -iots 791 0 2 4 68 variable
Used to record the time at which a
packet was processed by an
intermediate system
LSR -iolsr 791 1 0 3 131 vairable
Loose Source Route - let the
source specify the route for a
packet.
SID -iosid 791 1 0 8 136 4
Rarely used, carries the SATNET
stream identifier.
SSR -iossr 791 1 0 9 137 variable
Strict Source Route - same as LSR,
but extra hops are not allowed.
SEC
791,
1108
1 0 2 130 variable Security, rarely used
E-SEC 1108 1 0 5 133 variable Extended Security, rarely used
通常在SENDIP 中指定IP 选项时,格式比较特别,下面我们以RR 记录路由选项为例
介绍一下,如果要发送一个记录三个IP 的数据包,需要考虑如下,一是指定IP 头的长度要
包括IP 选项的长度,而是要指定RR 记录路由选项的指针位置和IP 地址(本来是由系统自
动记录IP 和更新指针位置,但现在必须手工指定),那么记录三个IP 包后,指针的位置应
是3+4×3+1=16,造好后,数据包的格式应该如下:
IP 头07 15 16 10.0.0.234(IP1) 20.0.0.234(IP2) 30.0.0.234(IP3) 00(ioeol) tcp
20B RR len ptr 4bytes 4bytes 4bytes Ptr
具体命令行如下:
#sendip –d r64 –p ipv4 –iv 4 –ih 10 –il 128 –is 10.0.0.1 –id 30.0.0.1 –iorr 10:10.0.0.234:20.0.0.234:30.0.0.234
–ioeol –p tcp –ts 1379 –td 23 –tt 8 30.0.0.1
-ih 10 表示IP 头的长度为10×4 为40 个字节,去除标准的20 个字节长度,为IP
选项预留为20 个字节
-iorr 10:10.0.0.234:20.0.0.234:30.0.0.234 中第一个10 表示用16 进制表示的指针的
位置,后面为用冒号分隔的三个用点分十进制表示的IP 地址
-ioeol 表示用00 结束IP 选项,并用随机数填充后面未用的IP 头位置
以上部分只是以RR 记录路由IP 选项为例,介绍了sendip 中指定IP 选项的方法,当然
也可以根据自己的要求发送IP 选项不符合常规的数据包。其他的IP 选项与此雷同,但发送
AntPower 版权所有&; 2003 技术文章
http://www.antpower.org 第7 页共14 页
前需要详细了解IP 选项的格式,才可正确发送。
TCP 数据包的格式:
根据TCP 数据包的格式,SENDIP 有如下命令行参数可以指定对应的TCP 数据包中参
数的值。
Field name
Size
(bits)
SendIP
option
Description
Source port 16 -ts
Source port number for the connection
(以十进制的方式指定TCP 原端口)
Destination port 16 -td
Destination port number
(以十进制的方式指定TCP 目的端口)
Sequence number 32 -tn
Number of the first data octet in this packet. If SYN bit is
set, this is the number of the first data octet of the stream
too.(指定TCP 序列号,如果不指定则随机产生)
Acknowledgment
number
32 -ta
If ACK bit is set, the next sequence number the sender is
expecting to receive.
Data offset 4 -tt
Length of TCP header in 32 bit words(指定TCP 头的长
度,单位是以32bits 也就是4 字节为单位)
Reserved 4 -tr
Should be 0. Note, rfc793 defines this as a 6 bit field, but
the last 2 are used by rfc2481 for ECN as below.
Flags: ECN 1 -tfe
Flags: CWR 1 -tfc
ECN extension flags, see rfc2481. (指定TCP 标志位,
如果要打开哪一位,就在命令行参数中指定相应位的
值,如要设置SYN 状态,只需在命令行加入-tfs 1 即可

Flags: URG 1 -tfu Urgent pointer is significant(同上)
Flags: ACK 1 -tfa Acknowledgment field is significant(同上)
Flags: PSH 1 -tfp Push function(同上)
Flags: RST 1 -tfr Reset the connection(同上)
Flags: SYN 1 -tfs Synchronize sequence numbers(同上)
AntPower 版权所有&; 2003 技术文章
http://www.antpower.org 第8 页共14 页
Flags: FIN 1 -tff No more data from sender(同上)
Window 16 -tw
Number of octet starting from the one in the
Acknowledgement field that the sender is willing to
accept
Checksum 16 -tc
Checksum of the TCP header (with checksum set to 0),
data, and a psuedo-header including the source and
destination IP addresses, IP protocol field and a 16 bit
length of the TCP header and data.
Urgent pointer 16 -tu
If URG bit is set, tHe offset of the last octet of urgent data
in this packet.
Options Variable -to...
No options are required. Any number can be added. See
below for details.
如果有TCP 选项,还可指定TCP 选项的值,SENDIP 支持的TCP 选项如下表所示。
Name
SendIP
option
RFC Type
Length (0
not
present)
Description
EOL -toeol 793 0 0
Used as padding if needed(用00 填充,表示TCP
选项结束,把TCP 头后面的位置用随机数填充)
NOP -tonop 793 1 0
Do nothing. Often used as padding so the next
option starts on a 32 bit boundary
MSS -tomss 793 2 4
Specify the maximum recieve segment size of the
sender as a 16 bit number. Only valid when SYN is
also set
WSOPT -towscale 1323 3 3
The window size should be leftshifted by the value
of the option (an 8 bit number). Only valid when
SYN is also set.
SACKOK -tosackok 2018 4 2
Selective Acknowledgement is permitted on this
connection
SACK -tosack 2018 5 variable
Selective Acknowledgement of non-contiguous
blocks of data. The data in the option is a series of
(left edge)-(right edge) pairs giving, respectively,
the first sequence number the has been recieved and
the first that hasn't.
TSOPT -tots 1323 8 10
Timestamp. The first 4 bytes (TSval) are the time
that the packet was sent, the remaining 4 (TSecr)
echo the TSval of a packet that was recieved. TSecr
is only valid when the ACK bit is set.
从上表所示,可以看出,TCP 选项可能只有一个单字节参数,如-toeol 和-tonop,也可
能由一个Type 号和一个length 长度以及该length 长度指定的字节数的数据组成的参数,使
用时sendip 会自动运算length 的长度,所以,不能随意设定TCP 选项的长度,但需要设定
TCP 选项的值。
AntPower 版权所有&; 2003 技术文章
http://www.antpower.org 第9 页共14 页
在设定TCP 选项时,同样要考虑到TCP 头的长度要包括TCP 选项的长度。
TCP 选项数据包的格式大致如下:
Kind=3 Len=3 数据:移位数
TCP 选项号TCP 选项长度TCP 选项数据占一个字节,总长度为三个字节
具体命令行格式可参照如下格式:
#sendip –d r64 –p ipv4 –iv 4 –ih 10 –il 128 –is 10.0.0.1 –id 30.0.0.1 –iorr 10:10.0.0.234:20.0.0.234:30.0.0.234
–ioeol –p tcp –ts 1379 –td 23 –tt 8 –tfa 0 –tfs 1 –towscale 0 –toeol 30.0.0.1
-towscale 0 :指设置TCP 选项3,长度为自动3,TCP 选项的值即移位数为0
-toeol :表示TCP 选项结束,后面用随机数填满TCP 头
因为用SENDIP 设定TCP 选项时,不能设定长度,所以,如果要设定长度不正确的包,
还要借助其他工具,如SNIFFER,用SNIFFER 抓到SENDIP 发送的包后,再将对应的TCP
选项的长度改为不规则的值即可。
根据前面介绍的内容,我们已经基本可以掌握用SENDIP 发送各种协议数据包的方法,
当然我们还可以利用他发送各种不符合标准的数据包,如校验和错误、长度不正确、状态位
不正确等各种我们需要的数据包,在使用时,建议与SNIFFER 搭配使用,以验证SENDIP
发出的包是否正确,进行有针对性的测试。
2.2. NESSUS 工具
NESSUS 是一个非常庞大的工具,它可以提供功能完善的安全扫描服务,还可以提供全
面的发包功能,用以构造各种格式的网络通信包。本篇只关注NESSUS 的发包功能。
NESSUS 由两个部分组成,一部分是服务器,通常运行在POSIX 系统如LINUX/UNIX
系统中,负责扫描和攻击,并收集数据,另一部分是客户端,可以运行在LINUX/UNIX 系
统或WINDOWS 系统中,负责接收和显示数据。
如果只是用来发包,则只需要服务端即可。
NESSUS 有专门的维护网站,可以随时到http://www.nessus.org 网站下载最新的源代码,
并获得全面的帮助。目前,NESSUS 最新的版本为2.0.8a。
2.2.1. NESSUS 安装方法
安装NESSUS 前要知道NESSUS 可能需要的支撑软件包,一个是GTK,通常POSIX
系统下的NESSUS 客户端需要GTK,如果你的系统安装了GTK,则必须确保安装了
gtk-config 程序,可到ftp://ftp.gimp.org/pub/gtk/v1.2 网站下载最新的GTK 程序,如果只在
LINUX/UNIX 系统下安装服务端,则可以不需要GTK 包;另一个是OPENSSL 包,如果希
望客户端和服务端的通信采用SSL 方式,则需要OPENSSL 包,可到http://www.openssl.org/
下载最新的OPENSSL 包,OPENSSL 包是可选的。
NESSUS 有三种安装方法:第一种是利用LINUX 下的LYNX 工具直接从网上安装,这
种方法很容易,但安全性低,在此不予详细介绍,可到NESSUS 网站上获取相关信息。第
二种方法是使用NESSUS 提供的nessus-installer.sh 工具,直接安装,这种方法简单且安全性
比较高。第三种方法是获取源码包,然后分别编译再进行安装。下面分别介绍第二种和第三
种方法。
AntPower 版权所有&; 2003 技术文章
http://www.antpower.org 第10 页共14 页
2.2.1.1. 采用nessus-installer.sh 方式安装
从NESSUS 网站下载最新的nessus-installer.sh 文件到本地LINUX 目录,然后执行
#sh nessus-installer.sh
系统会自动安装NESSUS 到你的系统中,中间会需要你提供相关的提示信息,一直按
回车即可。
2.2.1.2. 采用源码包方式安装
如果采用源码包方式进行安装,需要下载四个软件包,并按顺序进行安装。四个软件包
分别如下:
nessus-libraries
libnasl
nessus-core
nessus-plugins
安装时必须按顺序安装这四个软件包。
安装前,我们必须获得上面所说的四个软件包,目前版本为2.0.8a:
nessus-libraries-x.x.tar.gz
libnasl-x.x.tar.gz
nessus-core.x.x.tar.gz
nessus-plugins.x.x.tar.gz
然后开始进行安装。
1. 安装nessus-libraries
#tar –xzvf nessus-libraries-x.x.tar.gz
#cd nessus-libraries-x.x
#./configure
#make
#make install
2. 安装libnasl-x.x.tar.gz (执行与上面相同的操作)
3. 安装nessus-core.x.x.tar.gz(执行与上面相同的操作)
4. 安装nessus-plugins.x.x.tar.gz (执行与上面相同的操作)
5. 如果使用的是LINUX 系统,必须确保/usr/local/lib 路径在/etc/ld.so.conf 文件中,如
果是SOLARIS 系统, 必须执行export LD_LIBRARY_PATH=
$LD_LIBRARY_PATH :/usr/local/lib 命令。
6. 执行ldconfig 命令
7. 如果不想或不能使用GTK 的客户端,可强制使用命令行方式,这时,在执行第三
步编译nessus-core 时,可以使用如下命令:
#tar –xzvf nessus-libraries-x.x.tar.gz
#cd nessus-libraries-x.x
#./configure --disable-gtk
#make
#make install
AntPower 版权所有&; 2003 技术文章
http://www.antpower.org 第11 页共14 页
执行以上命令后,NESSUS 就已经安装在您的系统中了。
2.2.2. NESSUS 的发包方法
NESSUS 通常采用脚本方式控制发出的包,下面我们以发送圣诞老人攻击包为例,来介
绍如何利用NESSUS 发送数据包。
圣诞老人包是通过发送TCP Flag 中同时有SYN 和FIN 标志的数据包,穿透防火墙,
来达到攻击的目的。
为使用NESSUS 发送攻击包,首先要定义一个脚本,在LINUX 下,执行vi sendp 命令,
输入如下内容:
srcaddr=this_host(); 注:自动获取当前主机的IP 地址
ip = forge_ip_packet( ip_v : 4, 注:IP 协议版本为IPV4
ip_hl : 5, 注:IP 头的长度为5×4=20 字节
ip_tos : 0,
ip_len : 40, 注:在这里输入实际的长度40,因为IP 头和TCP 头都为20
ip_id : 0xABA,
ip_p : IPPROTO_TCP, 注:内部数据包协议为TCP
ip_ttl : 255,
ip_off : 0,
ip_src : srcaddr); 注:可在此直接输入IP
port = get_host_open_port(); 注:自动获取当前主机上的可用端口
if(!port)port = 139; 注:如果没有可用端口,就自动使用139 端口
tcpip = forge_tcp_packet( ip : ip, 注:表示IP 层协议采用前面定义的IP 协议包
th_sport : port, 注:可在这里直接输入端口
th_dport : port, 注:可在这里直接输入端口
th_flags : TH_SYN|TH_FIN, 注:设置TCP 状态的SYN 和FIN 标志位
th_seq : 0xF1C,
th_ack : 0,
th_x2 : 0,
th_off : 5, 注:TCP 头的长度位5×4=20 字节
th_win : 512,
th_urp : 0);
result = send_packet(tcpip,pcap_active:FALSE);
编辑完上面的脚本后,保存退出,运行如下命令:
#nasl –t 目的IP 地址测试脚本
如:
#nasl –t 10.0.0.227 sendp
AntPower 版权所有&; 2003 技术文章
http://www.antpower.org 第12 页共14 页
通过Sniffer 抓包,就会发现有相应的圣诞老人包。
在我的使用过程中,发现NESSUS 好像不支持发送带有IP 或TCP 选项的包。
具体发包的参数可参考http://www.nessus.org/doc/nasl.html
2.3. SNIFFER 工具
用SNIFFER 发包时,有两种方式,一种是直接利用Packet Generator 工具,从0 开始用
16 进制的方式造一个数据包,这种方法难度较高,因为要自己算出校验和,除非需要重现
在网络上抓到的一个16 进制格式的数据包,另外一种方式是利用已经抓到的数据包修改一
下,再发送出去,具体实现方法分别如下。
2.3.1. 利用Packet Generator 直接造包
在SNIFFER 中,选择Tools|Packet Generator 菜单,系统弹出窗口如下:
按图中的红色框中的按钮,系统会弹出一个构造包内容的对话框,如下所示:
AntPower 版权所有&; 2003 技术文章
http://www.antpower.org 第13 页共14 页
在上图中可输入包的内容,还可规定发包的个数和包的长度。
2.3.2. 利用已抓的包发包
利用已抓的包进行修改,可以避免大量的运算和输入,只需要更改自己需要更改的地方,
然后发出去即可。
如上图所示,按包的大致要求,用其他工具造好包后,用SNIFFER 抓包,或者直接将
网络上的可疑包抓过来,然后,用鼠标邮件单击该包,弹出如上图所示的快捷菜单,从中选
择Send Current Frame 菜单,系统就会弹出如下图所示的发包窗口:
AntPower 版权所有&; 2003 技术文章
http://www.antpower.org 第14 页共14 页
按要求更改包的内容,即可发送。需要注意的是如果更改了IP 地址或其他头中的内容,
则需要更新校验和,对MAC 或选项的更改不需要更改校验和。
3. 总结
通过对比前面的三种发包工具,我们发现每种工具都有自己的优点和缺点,SENDIP 比
较短小而且功能较齐全,比较适合在日常测试中使用,SNIFFER 发包工具最自由,可以发
出任何可能的数据包,NESSUS 工具功能比较全面,但在发包方面不如SENDIP,所以,建
议如果是测试需要的话,应该采用SENDIP 和SNIFFER 相结合的方式,如果同时还要使用
扫描等其他功能,可以采用NESSUS 工具。

② 向玩PS模拟的高手请教

概述:
ePSXe的全称是enhanced PSX emulator,虽然这是个新的Ps模拟器,但它的作者可并不是模拟器界的新手。大家对他们应该不陌生:主力成员_Demo_,就是可以被称为最好的超任模拟器的ZSNES的作者之一~~!另外两个成员分别是calb和Galtor。前者是来自超任模拟器ESNes小组的经验丰富的程序员(看来模拟器真的是相通的,能编出好的超任模拟器的coder来写ps模拟器也这么的专业啊~~!)后者虽然是新人,但也有很高超的编程技巧。由于模拟器采用的是Psemupro的插件系统,所以要运行模拟器的话需要:主程序epsxe.exe,模拟器兼容的Ps主机的bios,PSEmuPro的图形声音和光驱插件。模拟器的最低配置为P200或同级的cpu,32兆内存,快速的图形加速卡(例如voodoo2)CDROM x 16,Win9x和DirectX 7a(只装了DirectX7的朋友千万要注意,不升级是玩不了的哦),推荐的配置是PII 400或者更好的cpu,64兆内存,高速的支持DirectX, Opengl或者Glide的图形加速卡,高速的CD-ROM,Win9x和DirectX 7a。模拟器目前的模拟完成度:完全的r3000指令集,不完善的COP0协处理器模拟,充满Bug的GTE协处理器模拟,Sio模拟,支持记忆卡,支持ISO镜像,支持PSEmuPro的视频、音频、光驱插件,充满Bug的Mdec解码(新的版本将会重写代码)支持CDDA和部分的XA音源,有图形界面,就一个刚出炉的模拟器来说已经相当不错了。

(三)上手指南及注意事项:
首先下载模拟器的1.00版的压缩包并解压,如果你的机器里面有Psemupro的话就简单多了,直接把plugins目录和bios目录拷贝过来覆盖同名目录。如果机器里面没有,就到我们站去下载一个(EmuZone http://lone2.yeah.net)完全插件包和所有的bios的压缩包,解压到相应的目录。之后运行模拟器主程序进行设置。(图标是一个Ps手柄的模拟器主程序很精悍,才103k,一方面是作者高超的编程功力所致,另一方面也是因为使用了插件系统的缘故,主程序只管调用插件嘛:)))

模拟器的主界面很清爽简洁,功能一目了然(见图:模拟器界面.JPG)。依次说起吧:
File菜单有5个选项:
(*) Run CDROM:运行一张Ps游戏碟
(*) Run BIOS:运行Ps主机的bios(Ps主机的播放CD的功能还未实现,现在主要用来管理记忆卡,可以进行复制移动删除之类的简单操作)
(*) Run ISO:运行Ps碟的iso镜像文件,选择一个iso镜像后按ok启动模拟器
(*) Run PSX-EXE:运行Ps碟上的EXE文件(看看Ps碟吧,很多碟里都有exe文件的)
(*) Exit:退出模拟器

Run菜单有2个选项:
(*) Continue:继续先前用Esc中断的cdrom/iso/psx-exe/bios游戏
(*) Reset:重起模拟器

Config菜单有6个选项,这个是模拟器的核心喔:)
(*)Video:(见图:视频配置.JPG),从下拉菜单里面选择对应你的显卡的插件后用“config”来设置。开发小组推荐大家使用Pete的图形插件(Opengl、D3d或软加速),因为经内部测试它们具有最好的兼容性。不过要是你的显卡跟我一样也是Voodoo1&2系列的话,哈哈,恭喜恭喜,那么在较为低档的机器上就有福了!!用Lewpy的1.19版的glide插件真是让我们的老机器重现青春啊!!(※需要注意的是:Voodoo卡要用支持DX7的最新驱动;Frameskip要Enable;还有Off-screen Drawing一定要关闭,这样可以快不少帧!!!那个Tratax的glide renderer不好用,大家不用尝试了。如果你的卡是Voodoo3或者更高级的,并且使用Pete的D3d插件的话,注意不要选择32位色深因为Voodoo3不支持超过16位色的显示!)要是你使用Tnt系列显卡的话就用Pete\' Opengl Driver 1.37(※需要注意的问题是:按照配图(见图:Tnt插件设置.jpg)设置得到的“速度/画质比”最高,实在慢的话还可以把Texture quality改为“R4G4B4A4”)。另外在游戏中大多数的插件都支持按Del键来显示当前的FPS。
(*)Sound:(见图:音频配置.JPG)在新的窗口中有一个声音插件下拉菜单,选择你准备使用的声音插件吧,选定后不要忘了配置,因为有的插件默认是无声的
如Seal Audio 0.8,不要到时候游戏不出声就怪模拟器哦~~:)在下面的5个复选框中我们可以使用或者禁用相应的声音选项--因为模拟器比较成功的模拟出了Playstation主机使用的3种不同的音源:ADPCM,XA和CDDA。
* Enable Sound - 用来使用ADPCM音源,如果想听到游戏中的XA音乐的话就必须选中该框。
* Enable CDDA Sound - 选中后可以播放CD音轨(主要是游戏中的背景音乐)
* Enable XA sound - 选中后可以听到过场动画的音乐,并打开整体的XA音源支持
* Enable XA read - 选中后可以在游戏中听到XA音源的声音(前提是游戏本身使用XA音源)还得先选中Enable Sound和Enable XA sound两项。不过该功能还有很大的Bug并且很慢,大家要有心理准备:)
* Enable SPU IRQ -使用SPU中断,玩某些游戏必需

经过我的初步测试,和模拟器兼容的最好的声音插件当属Seal Audio 0.8!!尤其在中、低档声卡上(如笔者的yamaha724),玩大部分游戏的声音近乎完美(不过播放动画和在个别的2d格斗游戏中除外)!!要是你的声卡是什么SBlive之类的高档卡的话可以尝试一下Kazzuya Directsound Driver 0.6,根据测试可以使游戏的速度有2到3帧的提高,但是游戏时的声音会有一些偏小,也就是说不管是cd的音轨的声音还是游戏中的音乐音效的音量都会降低。如果你是配合着用Pete的Opengl的插件来做视频输出的话,Pete\'s Midas Audio Driver 1.6也是个不错的选择(这个插件和别的视频插件的兼容性也不错,不过同样存在音量不足的问题)。
(*)Cdrom:(见图:光驱配置.JPG)在弹出的窗口里有两个下拉菜单和一个选择框。在插件下拉菜单里面选择你要使用的光驱插件,在盘符下拉菜单里面选择你光驱的盘符,一定要记住这个盘符要和你刚才在光驱插件里面设定的盘符一致!经过测试我认为兼容性最好且速度最快的光驱插件是cdrTsgMSCD.dll(Tanishige Ryus的插件)使用时注意注意subTsgMSCD16.dll和subTsgMSCD32.dll这两个文件必须放在模拟器的根目录下面!对于Win2K下的CD-ROM,如果你用的是EIDE的CD-ROM,请用Tratax\'s ASPI 1.2 CD 插件,对于SCSI接口的CD-ROM,你需要Duddie\'s ASPI 0.8插件。如果这还不行,你需要下载并安装一个ASPI layer,最好是Adaptec的(可以从模拟器官方网站的下载页面获得),因为Win2K不像Win9x一样有预安装过程,如果这还不行的话就只有等新版的模拟器或者干嘛不再多装一个98呢?“cdrom timing accurate”选择框是用来改变CD-Rom的计时功能的,这样可以使Gran Tourismo和Point Blank 2勉强可以玩,一般来说应该在别的游戏中把它禁掉。当然,如果抱着死马当活马医的态度在别的游戏不能玩的时候你也可以选择它试试。另外模拟器本身支持Ps碟的iso镜像和bin镜像(CDRWin文件),不过兼容性还不够,因此建议使用虚拟光驱工具Daemon(EmuZone可下载最新版),它的兼容性要好的多。

(*)Bios:(见图:bios.JPG)在窗口的文本框里选择你想使用的BIOS(注意:Bios文件不能以.zip的方式存放!)。经测试,SCPH1000, SCPH5000以及SCPH5005和模拟器不兼容,目前开发小组推荐使用的Bios是1001和7502,据说兼容性最好,不过我用5500效果也很不错,大家要是有兴趣可以自己试试别的Bios。如果你想搞清手中的Bios的版本的话可以用写字板或其他字处理程序打开Bios文件,在文件的底部有System ROM Version X.X YY/YY/YY (Z)的字样,X表示BIOS的号码,例如2.2;Y表示Bios的日期,例如12/04/95;Z表示Bios的地区,例如J代表Japan
(*)MDEC:(见图:视频解码配置.JPG)在窗口里有两个选择框,用第一个选择框,你可以完全开启或者禁止模拟器播放游戏中的过场动画。第二个选择框可以改变mdec解码计时,用来尝试播放那些不能正常解码的动画,在FF8和FF9中是必须的,因而在别的游戏中一般应当禁用。由于模拟器的动画解码实在是不敢恭维,好多的游戏都会在片头当机,因此强烈建议两个框都不要选!!!

(*)Controller:(见图:手柄配置.JPG),手柄的设置非常的人性化,就不用我多说了吧?:)模拟器支持双打和摇杆(爽!!!)不过默认的2P是被禁用的,大家记得进去手动设定按键。还有模拟器有4个默认快捷键:
F1--使用/禁用Xa音源
F2--使用/禁用Xa读取
F3--使用/禁用SPU中断
F4--使用/禁用SIO中断, 大家要注意设键不要和默认的冲突了。

Options菜单就一个选项:
(*) SIO irq always enable:总是打开SIO中断。在某些游戏中(例如Driver, Ridge Racer, X-Men Vs Street Fighter)会出现无论按什么键模拟器都没有反应的问题,为了使输入设备再次工作,就需要打开该选项,或者在游戏中按F4就好了

Cheat菜单也只有一个选项:(见图:金手指输入界面.JPG)
(*)Edit Cheat Codes:这里的金手指主要是用来运行一些模拟器原本不支持的游戏的。模拟器的cheat目录里面已经自带了一些游戏的开机码:silent_hill_pal,tomb_raider_2_pal,need_for_speed_3_pal,theme_hospital_pal,theme_park_world_pal,timeshock_pal,chrono_cross_ntsc,alundra_1_pal和dinocrisis_pal,直接load就可以了,不过同样的游戏有版本之分,不能使用PAL版游戏的开机码来运行NTSC版的游戏。遗憾的是这项功能不能用来输入游戏中的金手指,开发小组推荐的金手指软件是[pec](官方网站http://pec.emucheater.com)。

Help菜单有2个选项:
(*)Visit EPSXE webpage:连接到模拟器的官方网站
(*)About:小组成员和其他的staff。有意思的是在说明文档里和about提示框里面居然有对FPSE小组的感谢的话,感谢他们帮助解决了MDEC的解码的模拟问题和sio的问题,哈哈,终于不再口水大战了么?真是不打不相识啊~~~要是今后能够一起合作开发(就像当年的Psemupro一样)的话,那这个模拟器岂不是前途不可限量!!??热切期待中:D~~~~

模拟器对记忆卡的支持目前测试来看很不错。模拟器使用的记忆卡放在memcards目录里,名字分别为epsxe000.mcr和epsxe001.mcr。每个文件大小为128 KB(和标准的Ps记忆卡容量一样),因为本来就是从真的记忆卡上mp下来的嘛:))不过稍微一点遗憾的是:模拟器本身并不带有记忆卡的管理功能。但是我们可以利用Ps主机的bios对记忆卡的管理功能对存盘文件进行一般的管理。不过如果使用的是Pete\'s OpenGL/D3D插件的且把Off Screen drawing设为none的话,在运行主机的bios记忆卡编辑菜单的时候就会图象不正常,改回来就可以了。模拟器本身不能创建新的记忆卡,需要用到前端程序ePSXeCutor(可以在我们站下载),软件运行界面如图(模拟器前端界面.JPG),具体的记忆卡操作见图(前端记忆卡.JPG),感觉功能比较强大。前端的操作比较简单,不再赘述。

(四)一些测试:
测试机器配置:赛扬333,128M,G200+Voodoo2,yamaha724,Phlips的36x光驱,富士通6.4G,Directx 7a(系统使用内存优化软件Magnaram对内存优化)
默认的插件是Video:Lewpy\'s 3dfx/glide Gpu 1.19
Audio:Seal Audio 0.8
CD-ROM:TSG MSCDEX Driver 1.2
Bios:5500
MDEC选项都关闭

※实况2000 & 美国大联盟足球 & 超级自由人2:都能比较完美运行,爱足球游戏的玩家又多了一个选择:))小缺憾是用lewpy的glide插件后球员的人名和号码不清楚,还有就是解说声音出不来。让我奇怪的是,50多帧的速度朋友居然觉得太快了,30多帧才说跟ps上差不多,怪哉?!
※刀魂:必须禁掉片头动画的播放才能进入游戏,否则在厂商标题后模拟器当机,画面比用同样的插件在psemupro里要明亮的多,光影效果已接近正常,声音断续不过勉强还算流畅
※生或死:绝对绝对的完美!!无论是帧数还是音轨还是音效还是画面都超过了同样的插件在Psemupro下面的效果,强烈推荐用此款游戏来测试模拟器^0^
※漫画英雄对街霸EX和X-MEN对街霸以及JOJO奇妙冒险等几个2D格斗游戏:除了声音断续以外都还不错,如果用3d插件的话,画面要强于使用插值算法而得到模糊效果的Vgs,况且还没有Vgs的动作跳帧的缺陷,但是比较华丽的场景时(如合作超杀什么的)帧数会显着下降,声音也会变得更加的难以忍受:(
※街霸EX:还可以,不过就是有点慢
※天诛(USA) & 天诛.忍百选:一般的方法不能玩,试遍了各种有关光驱的开关和视频解码的开关都不行。必须用菜单里面的“Run PSX EXE”选项调入游戏光盘内的main.exe文件游戏才能运行,不过好像还是有bug,在游戏开始选择道具时不能携带道具,只能用start键pass掉
※少年街霸3:别人的机器能玩,但是我的机器上到了选人的loading画面就死活不读光驱了,换了所有的光驱插件都不行
※生化危机3,恐龙危机,圣剑传说--玛娜传奇等有保护的游戏直接不能玩,(恐龙危机通过内置的解码金手指可以运行)可以用fpe等工具直接修改内存达到目的,具体方法同以前在1.4版本的Bleem!上运行这些游戏一样,在此不再多说(先把scan的范围设为2GB,之后再选分析,在分析目标中键入:272630330或1040023AH,再按开始查找, 这时会找到8个地址--每次找到的地址都不一定相同--将随便一个地址的值锁定为268436026即可,注意要解锁以后再reset模拟器)。
※武藏传:效果还不错,不过有些慢
※铁拳3:画面好,音乐音效不行,较慢
※街霸EX2 PLUS和私立公平学院2:前者没有音乐,后者一切正常。游戏画面和流畅度比之Bleem!强的多,声音完全正常(想想当年用玩Impact玩街机版的时候,rom的声音是不正常的啊,老有奇怪的声音而且同样配置的机器速度还很慢^^)
※3D侍魂:模拟效果比别的模拟器要好的多,3D效果很棒,很流畅,推荐!! 结论:模拟器由于采用了插件系统,使得在不同设置的机器上或多或少的出现了不同的模拟情况,有的游戏这台机器能玩但是别的机器就死活玩不了,比如FF9,在我的机器上一运行就非法操作关闭-_-0……在别人的机器上却能够放完动画(条件是在MDEC里把两个全选,至于播放效果嘛-_-0……)不过在战斗是黑屏;还有刚才提到的“少年街霸3”。

(五)一些使用经验:
1.尽量按照本文所写的来设定插件和选项。
2.要是半天不见动静的话就试试按一下F4再按开始键,因为模拟器的“SIO irq always enable”老是失效,并且由于动画播放有bug,能跳过的片头或者过场动画一定要用开始键跳过!!!
3.模拟器带有命令行方式,其中有的参数在GUI下面无法设置,可以自己参看帮助文件来运行并设置。
4.实在有这份文档都不能解决的问题就到我们的问答论坛上去请教高手吧

(六)总结:
个人认为ePSXe可以说几乎集合了目前的Ps模拟器的优点:支持3D加速,但兼容性远远超过Psemupro而接近Vgs,声音方面又比BLEEM!要好的多,界面也很友好,虽然插件的配置是一件让人头疼的事情……还有对我们穷玩家来说很重要一点,由于使用Ps的Bios,它注定是免费的!!它的前途一片光明!!开发小组对新的版本抱有很大信心,我们也应该鼎力支持啊~~:))同时希望本文对于你愉快的使用该模拟器有所帮助。

阅读全文

与tfa命令相关的资料

热点内容
sql如何查看服务器地址 浏览:775
编译速度和系统有关吗 浏览:54
复盛制冷压缩机 浏览:979
云服务器共享手机流量 浏览:833
星界边境像素压缩 浏览:459
算法分析与设计二手 浏览:981
学编程如何配电脑 浏览:971
怎么看特征找卡密的加密方式 浏览:526
方舟非官方服务器怎么赚钱 浏览:516
明日之后服务器无效是怎么回事 浏览:270
蛋壳公寓app如何查水电表 浏览:718
ad20库中的51单片机怎么找 浏览:624
阿里云服务器有点卡吗 浏览:215
苹果7如何让app后台运行 浏览:170
耐克app预售产品哪里看 浏览:209
补全算法一年级 浏览:131
evd数据调校软件加密 浏览:442
app听课与微信如何设置分屏 浏览:911
加密的excel怎么撤销 浏览:43
java动态数组初始化 浏览:978