导航:首页 > 程序命令 > tcpip发包命令

tcpip发包命令

发布时间:2022-09-21 02:00:02

android设备怎么设置tcpip

1. 使用USB数据线连接设备(此方法需配置adb环境变量,也可直接进入adb工具目录执行\android-sdk-windows\platform-tools\)。
2. 命令输入adb tcpip 5555 ( 5555为端口号,可以自由指定)。
3. 断开 USB数据,此时可以连接你需要连接的USB设备。
4. 再命令输入 adb connect <设备的IP地址>:5555
后面就可以使用ADB ,DDMS 来调试Android应用或显示Logcat 消息。
5. 如果需要恢复到USB数据线,可以在命令行输入adb usb
注: Android设备的IP地址可以通过(设置->关于手机->状态信息)查看

⑵ tcp发包超过缓冲区怎么处理

大家可能有的人看过这样一个帖子,大概意思是说,如果你是宽带上网,还想提高网速,那么你可以在注册表中设定适当的Tcpip Window值,修改默认数值。那么,这种“修改Tcpip Window值提高网速”的说法是否有原理依据呢?让我们一起来分析下。
操作方法:打开注册表编辑器,在其中 找到“HKEY_LOCAL_MACHINE\System\CurrenControlSet\Services\Tcpip\Parameters”子键,在右边键值区中,找到或新建一个名为“GlobalmaxTcp WindowSize”的DWORD键值项,将其数据值数据设为“256960”(十进制),关闭注册表编辑器,重新启动电脑即可。
原理介绍:通常情况下,TCP/IP默认的数据传输单元接受缓冲区的大小为576字节,要是将这个缓冲区的大小设置得比较大的话,一旦某个TCP/IP分组数据发生错误时,那么整个数据缓冲区中的所有分组内容,都将被丢失并且进行重新传送;显然不断地重新进行传输,会大大影响ADSL传输数据的效率。为此,设置合适缓冲区大小,确保ADSL传输数据的效率始终很高,将会对ADSL传输速度有着直接的影响!
那么,这一说法是否真有科学依据呢?
回答:没有科学依据。这一注册表键值是无效的,修改该注册表键值前后的网络速度不会发生变化。
宽带上网的优化原理是对操作系统的网络设置进行修改,使其更加贴合上网数据传输的需要。一般情况下,上网数据传输主要采用了TCP/IP协议,该协议将传输的数据分成大小相同的数据包,数据包越大,冗余数据就会越多。数据包的最大容量就是Maxmtu。在Windows中系统默认的Maxmtu值是1500字节,而宽带实际的传输单元要略小于这个数值。这样在上网的数据传输过程中,数据包中的数据就需要分组重装成宽带适合的数据包大小了,传输速度骤减,上网速度就会减慢了。
另外,各个宽带运营商的Maxmtu的值可能是不同的,因此手动修改系统的Maxmtu值才能更快地上网。那么,我们怎么来获得宽带运营商的Maxmtu值呢?最简单的方法是,在命令提示符窗口输入“ping -f -l 1464 202.96.107.28”(其中1464是测试的数据包大小,202.96.107.28是DNS服务器IP,如图1),如果返回“来自 202.96.107.28 的回复: 字节=1464 时间=92ms TTL=251”的提示则说明该数据包小于宽带运营商的Maxmtu值,如果返回“ 需要拆分数据包但是设置 DF。”(在Vista命令提示符下测试的数据)类似的回复则说明数据包超过宽带运营商的Maxmtu值,可以适当缩小该数值。经过以上方法获得最佳的数值后,宽带运营商的Maxmtu值就是测试值加上28(如1464合适,则Maxmtu为1492)。

⑶ 6-AT命令交互之-TCPIP

对于AT方式的TCPIP接口一般都是各个厂家自己封装的指令,下面以移远和simcom公司的为例进行说明。

1.连接TCP

TCP的建立可以是IP也可以是域名,不过需要在连接之前设置

设置为域名连接:AT+QIDNSIP=1

建立TCP连接:AT+QIOPEN="TCP","121.201.34.111","1234"

QIOPEN返回的结果的时间跟网络有关系,所以有时候为了避免等待会主动查询当前的网络状态。

查询TCP连接状态:AT+QISTAT

2.发送

发送数据:AT+QISEND=195

查询发送结果:AT+QISACK

3.接收

数据的接收有两种情况,一种是模块将接收到的数据直接返回给AT发送者,一种是模块将接收到的数据存在缓存里面,有用户自行调用接口去读取数据。

要在TCP连接之前就设置为缓存模式

数据的接收可以不一次性接收完成,可能分段接收。
查询接收结果:AT+QIRD

4.断开TCP

断开TCP连接:AT+QICLOSE

5.其他

断开GPRS:AT+QIDEACT

激活GPRS:AT+QIACT

1.连接TCP

建立TCP连接:AT+CIPSTART="TCP","121.201.34.111","1234"

CIPSTART返回的结果的时间跟网络有关系,所以有时候为了避免等待会主动查询当前的网络状态。

查询TCP连接状态:AT+CIPSTATUS

2.发送

发送数据:AT+CIPSEND=12

CIPSEND返回的结果的时间也跟网络有关系,所以有时候为了避免等待会主动查询当前的发送状态。

查询发送结果:AT+CIPACK

3.接收

数据的接收有两种情况,一种是模块将接收到的数据直接返回给AT发送者,一种是模块将接收到的数据存在缓存里面,有用户自行调用接口去读取数据。

要在TCP连接之前就设置为缓存模式

数据的接收可以不一次性接收完成,可能分段接收。
查询接收结果:AT+CIPRXGET=2,69

4.断开TCP

断开TCP连接:AT+CIPCLOSE

5.其他

断开GPRS:AT+CIPSHUT

激活GPRS:AT+CIICR

⑷ 发包长度大于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 工具。

⑸ 如何重装TCPIP协议

方法/步骤
1
步骤1:单击“开始”l“运行”命令,打开“运行”窗口,在“打开”文本框中输入cmd命令,如下图所示。

2
步骤2:单击“确定”按钮,打开命令提示符窗口,输入netsh,如下图所示。

3
步骤3:按[Enter]键确认,输入int,如下图所示。

4
步骤4:按【Enter]键确认,输入ip,如下图所示。

5
步骤5:按[Enter]键确认,输入resetlog.txt,如下图所示。

6
步骤6:按【Enter】键确认,此时系统会自动将TCP/IP协议的参数全部恢复到系统安装时的状态,如下图所示。

7
步骤7:重新启动电脑后,即可重装:TCP/IP协议。

⑹ 修改TCP/IP并发连接数

1、可使用以下命令,查看当前服务器启动的httpd进程数,亦即当前服务器提供httpd服务的并发请求数。

⑺ 如何理解TCPIP协议,它的作用是什么呢

什么是TCP/IP协议

TCP/IP(Transmission Control Protocol/Internet Protocol的简写,中文译名为传输控制协议/互联网络协议)协议是Internet最基本的协议,简单地说,就是由底层的IP协议和TCP协议组成的。

在Internet没有形成之前,各个地方已经建立了很多小型的网络,称为局域网,Internet的中文意义是"网际网",它实际上就是将全球各地的局域网连接起来而形成的一个"网之间的网(即网际网)"。然而,在连接之前的各式各样的局域网却存在不同的网络结构和数据传输规则,将这些小网连接起来后各网之间要通过什么样的规则来传输数据呢?这就象世界上有很多个国家,各个国家的人说各自的语言,世界上任意两个人要怎样才能互相沟通呢?如果全世界的人都能够说同一种语言(即世界语),这个问题不就解决了吗?TCP/IP协议正是Internet上的"世界语"。

TCP/IP协议的开发工作始于70年代,是用于互联网的第一套协议。

1.1 TCP/IP参考模型
TCP/IP协议的开发研制人员将Internet分为五个层次,以便于理解,它也称为互联网分层模型或互联网分层参考模型,如下表:

应用层(第五层)
传输层(第四层)
互联网层(第三层)
网络接口层(第二层)
物理层(第一层)

·物理层:对应于网络的基本硬件,这也是Internet物理构成,即我们可以看得见的硬设备,如PC机、互连网服务器、网络设备等,必须对这些硬设备的电气特性作一个规范,使这些设备都能够互相连接幷兼容使用。

·网络接口层:它定义了将资料组成正确帧的规程和在网络中传输帧的规程,帧是指一串资料,它是资料在网络中传输的单位。

·互联网层:本层定义了互联网中传输的“信息包”格式,以及从一个用户通过一个或多个路由器到最终目标的"信息包"转发机制。

·传输层:为两个用户进程之间建立、管理和拆除可靠而又有效的端到端连接。

·应用层:它定义了应用程序使用互联网的规程。
1. 2 网间协议IP
Internet 上使用的一个关键的底层协议是网际协议,通常称IP协议。我们利用一个共同遵守的通信协议,从而使 Internet 成为一个允许连接不同类型的计算机和不同操作系统的网络。要使两台计算机彼此之间进行通信,必须使两台计算机使用同一种"语言"。通信协议正像两台计算机交换信息所使用的共同语言,它规定了通信双方在通信中所应共同遵守的约定。
计算机的通信协议精确地定义了计算机在彼此通信过程的所有细节。例如,每台计算机发送的信息格式和含义,在什么情况下应发送规定的特殊信息,以及接收方的计算机应做出哪些应答等等。
网际协议IP协议提供了能适应各种各样网络硬件的灵活性,对底层网络硬件几乎没有任何要求,任何一个网络只要可以从一个地点向另一个地点传送二进制数据,就可以使用IP协议加入 Internet 了。
如果希望能在 Internet 上进行交流和通信,则每台连上 Internet 的计算机都必须遵守IP协议。为此使用 Internet 的每台计算机都必须运行IP软件,以便时刻准备发送或接收信息。
IP协议对于网络通信有着重要的意义:网络中的计算机通过安装IP软件,使许许多多的局域网络构成了一个庞大而又严密的通信系统。从而使 Internet 看起来好象是真实存在的,但实际上它是一种幷不存在的虚拟网络,只不过是利用IP协议把全世界上所有愿意接入 Internet 的计算机局域网络连接起来,使得它们彼此之间都能够通信。
1.3 传输控制协议TCP
尽管计算机通过安装IP软件,从而保证了计算机之间可以发送和接收资料,但IP协议还不能解决资料分组在传输过程中可能出现的问题。因此,若要解决可能出现的问题,连上 Internet 的计算机还需要安装TCP协议来提供可靠的幷且无差错的通信服务。
TCP协议被称作一种端对端协议。这是因为它为两台计算机之间的连接起了重要作用:当一台计算机需要与另一台远程计算机连接时,TCP协议会让它们建立一个连接、发送和接收资料以及终止连接。
传输控制协议TCP协议利用重发技术和拥塞控制机制,向应用程序提供可靠的通信连接,使它能够自动适应网上的各种变化。即使在 Internet 暂时出现堵塞的情况下,TCP也能够保证通信的可靠。
众所周知, Internet 是一个庞大的国际性网络,网络上的拥挤和空闲时间总是交替不定的,加上传送的距离也远近不同,所以传输资料所用时间也会变化不定。TCP协议具有自动调整"超时值"的功能,能很好地适应 Internet 上各种各样的变化,确保传输数值的正确。
因此,从上面我们可以了解到:IP协议只保证计算机能发送和接收分组资料,而TCP协议则可提供一个可靠的、可流控的、全双工的信息流传输服务。

综上所述,虽然IP和TCP这两个协议的功能不尽相同,也可以分开单独使用,但它们是在同一时期作为一个协议来设计的,幷且在功能上也是互补的。只有两者的结合,才能保证 Internet 在复杂的环境下正常运行。凡是要连接到 Internet 的计算机,都必须同时安装和使用这两个协议,因此在实际中常把这两个协议统称作TCP/IP协议。
1. 4 IP地址及其分类
在Internet上连接的所有计算机,从大型机到微型计算机都是以独立的身份出现,我们称它为主机。为了实现各主机间的通信,每台主机都必须有一个唯一的网络地址。就好象每一个住宅都有唯一的门牌一样,才不至于在传输资料时出现混乱。
Internet的网络地址是指连入Internet网络的计算机的地址编号。所以,在Internet网络中,网络地址唯一地标识一台计算机。
我们都已经知道,Internet是由几千万台计算机互相连接而成的。而我们要确认网络上的每一台计算机,靠的就是能唯一标识该计算机的网络地址,这个地址就叫做IP(Internet Protocol的简写)地址,即用Internet协议语言表示的地址。
目前,在Internet里,IP地址是一个32位的二进制地址,为了便于记忆,将它们分为4组,每组8位,由小数点分开,用四个字节来表示,而且,用点分开的每个字节的数值范围是0~255,如202.116.0.1,这种书写方法叫做点数表示法。
IP地址可确认网络中的任何一个网络和计算机,而要识别其它网络或其中的计算机,则是根据这些IP地址的分类来确定的。一般将IP地址按节点计算机所在网络规模的大小分为A,B,C三类,默认的网络屏蔽是根据IP地址中的第一个字段确定的。
1. A类地址
A类地址的表示范围为:0.0.0.0~126.255.255.255,默认网络屏蔽为:255.0.0.0;A类地址分配给规模特别大的网络使用。A类网络用第一组数字表示网络本身的地址,后面三组数字作为连接于网络上的主机的地址。分配给具有大量主机(直接个人用户)而局域网络个数较少的大型网络。例如IBM公司的网络。
2. B类地址
B类地址的表示范围为:128.0.0.0~191.255.255.255,默认网络屏蔽为:255.255.0.0;B类地址分配给一般的中型网络。B类网络用第一、二组数字表示网络的地址,后面两组数字代表网络上的主机地址。
3. C类地址
C类地址的表示范围为:192.0.0.0~223.255.255.255,默认网络屏蔽为:255.255.255.0;C类地址分配给小型网络,如一般的局域网和校园网,它可连接的主机数量是最少的,采用把所属的用户分为若干的网段进行管理。C类网络用前三组数字表示网络的地址,最后一组数字作为网络上的主机地址。

实际上,还存在着D类地址和E类地址。但这两类地址用途比较特殊,在这里只是简单介绍一下:D类地址称为广播地址,供特殊协议向选定的节点发送信息时用。E类地址保留给将来使用。
连接到Internet上的每台计算机,不论其IP地址属于哪类都与网络中的其它计算机处于平等地位,因为只有IP地址才是区别计算机的唯一标识。所以,以上IP地址的分类只适用于网络分类。
在Internet中,一台计算机可以有一个或多个IP地址,就像一个人可以有多个通信地址一样,但两台或多台计算机却不能共享一个IP地址。如果有两台计算机的IP地址相同,则会引起异常现象,无论哪台计算机都将无法正常工作。
顺便提一下几类特殊的IP地址:
1. 广播地址 目的端为给定网络上的所有主机,一般主机段为全0
2. 单播地址 目的端为指定网络上的单个主机地址
3. 组播地址 目的端为同一组内的所有主机地址
4. 环回地址 127.0.0.1 在环回测试和广播测试时会使用
1.5 子网的划分
若公司不上Internet,那一定不会烦恼IP Address的问题,因为可以任意使用所有的IP Address,不管是A Class或是B Class,这个时候不会想到要用Sub Net,但若是上Internet那IP Address便弥足珍贵了,目前全球一阵Internet热,IP Address已经愈来愈少了,而所申请的IP Address目前也趋保守,而且只有经申请的IP Address能在Internet使用,但对某些公司只能申请到一个C CLass的IP Address,但又有多个点需要使用,那这时便需要使用到Subnet,这就需要考虑子网的划分,下面简介Subnet的原理及如何规划。
1.5.1 Subnet Mask的介绍
设定任何网络上的任何设备不管是主机、PC、Router等皆需要设定IP Address,而跟随着IP Address的是所谓的NetMask,这个NetMask主要的目的是由IP Address中也能获得NetworkNumber,也就是说IP Address和Net Mask作AND而得到Network Number,如下所示:
IP Address
192.10.10.611000000.00001010.00001010.00000110
NetMask
255.255.255.011111111.11111111.11111111.00000000
AND
-------------------------------------------------------------------
Network Number
192.10.10.011000000.00001010.00001010.00000000
NetMask有所谓的默认值,如下所示
Class IP Address 范围 Net Mask
A 1.0.0.0-126.255.255.255255.0.0.0
B 128.0.0.0-191.255.255.255255.255.0.0
C 192.0.0.0-223.255.255.255255.255.255.0
在预设的Net Mask都只有255的值,在谈到Subnet Mask时这个值便不一定是255了。在完整一组C Class中如203.67.10.0-203.67.10.255 NetMask255.255.255.0,203.67.10.0称之Network Number(将IP Address和Netmask作AND),而203.67.10.255是Broadcast的IP Address,所以这两者皆不能使用,实际只能使用203.67.10.1--203.67.10.254等254个IP Address,这是以255.255.255.0作NetMask的结果,而所谓Subnet Msk尚可将整组C Class分成数组Network Number,这要在NEtMask作手脚,若是要将整组C CLass分成2个Network Number那NetMask设定为255.255.255.192,若是要将整组C CLass分成8组Network Number则NetMask要为255.255.255.224,这是怎么来的,由以上知道Network Number是由IP Address和NetMask作AND而来的,而且将NetMask以二进制表示法知道是1的会保留,而为0的去掉

192.10.10.193--11000000.00001010.00001010.10000001
255.255.255.0--11111111.11111111.11111111.00000000
--------------------------------------------------------------
192.10.10.0--11000000.00001010.00001010.00000000
以上是以255.255.255.0为Net Mask的结果,Network Number是192.10.10.0,若是使用255.255.255.224作Net Mask结果便有所不同
192.10.10.193--11000000.00001010.00001010.10000000
255.255.255.224--11111111.11111111.11111111.11100000
--------------------------------------------------------------
192.10.10.192--11000000.00001010.00001010.10000000
此时Network Number变成了192.10.10.192,这便是Subnet。那要如何决定所使用的NetMask,255.255.255.224以二进制表示法为11111111.11111111.11111111.11100000,变化是在最后一组,11100000便是224,以三个Bit可表示2的3次方便是8个Network Number
NetMask二进制表示法可分几个Network
255.255.255.011111111.11111111.11111111.000000001
255.255.255.128
11111111.11111111.11111111.100000002
255.255.255.192
11111111.11111111.11111111.110000004
255.255.255.224
11111111.11111111.11111111.111000008
255.255.255.240
11111111.11111111.11111111.1111000016
255.255.255.248
11111111.11111111.11111111.1111100032
255.255.255.252
11111111.11111111.11111111.1111110064
以下使用255.255.255.224将C Class203.67.10.0分成8组Net work Number,各个Network Number及其Broadcast IP Address及可使用之IP Address序号Network Number Broadcast可使用之IP Address
(1)203.67.10.0--203.67.10.31
203.67.10.1--203.67.10.30
(2)203.67.10.32--203.67.10.63
203.67.10.33--203.67.10.62
(3)203.67.10.64--203.67.10.95
203.67.10.65--203.67.10.94
(4)203.67.10.96--203.67.10.127
203.67.10.97--203.67.10.126
(5)203.67.10.128--203.67.10.159
203.67.10.129--203.67.10.158
(6)203.67.10.160--203.67.10.191
203.67.10.161--203.67.10.190
(7)203.67.10.192--203.67.10.223
203.67.10.193--203.67.10.222
(8)203.67.10.224--203.67.10.255
203.67.10.225--203.67.10.254
可验证所使用的IP Address是否如上表所示
203.67.10.115--11001011.01000011.00001010.01110011
255.255.255.224--11111111.11111111.11111111.11100000
--------------------------------------------------------------
203.67.10.96--11001011.01000011.00001010.01100000
203.67.10.55--11001011.01000011.00001010.00110111
255.255.255.224--11111111.11111111.11111111.11100000
--------------------------------------------------------------
203.67.10.32--11001011.01000011.00001010.00100000
其它的NetMask所分成的NetworkNumber可自行以上述方法自行推演出来。
1.5.3 Subnet的应用
使用Subnet是要解决只有一组C Class但需要数个Network Number的问题,幷不是解决IP Address不够用的问题,因为使用Subnet反而能使用的IP Address会变少,Subnet通常是使用在跨地域的网络互联之中,两者之间使用Router连线,同时也上Internet,但只申请到一组C Class IP Address,过Router又需不同的Network,所以此时就必须使用到Subnet,当然二网络间也可以Remote Bridge连接,那便没有使用Subnet的问题。
1.6 几个常用的程序
1.6.1 ping
这个程序用来检测一帧资料从当前主机传送到目的主机所需要的时间。当网络运行中出现故障时,采用这个实用程序来预测故障和确定故障源是非常有效的。如果执行ping不成功,则可以预测故障出现在以下几个方面:网线是否连通,网络适配器配置是否正确,IP地址是否可用等;如果执行ping成功而网络仍无法使用,那么问题很可能出在网络系统的软件配置方面,ping成功只能保证当前主机与目的主机间存在一条连通的物理路径。它还提供了许多参数,如-t使当前主机不断地向目的主机发送资料,直到使用Ctrl-C中断;-n 可以自己确定向目的主机发送的资料帧数等等。
1.6.2 winipcfg
它用来显示主机内IP协议的配置信息。它采用Windows窗口的形式显示具体信息。这些信息包括:网络适配器的物理地址、主机的IP地址、子网掩码以及默认网关等,还可以查看主机的相关信息如:主机名、DNS服务器、节点类型等。其中网络适配器的物理地址在检测网络错误时非常有用。
1.6.3 tracert
这个程序的功能是判定资料包到达目的主机所经过的路径、显示资料包经过的中继节点清单和到达时间。还可以使用参数-d决定是否解析主机名。
1.6.4 netstat
这个程序有助于我们了解网络的整体使用情况。它可以显示当前正在活动的网络连接的详细信息,如采用的协议类型、当前主机与远程相连主机(一个或多个)的IP地址以及它们之间的连接状态等。它提供的较为常用的参数是:-e用以显示以太网的统计信息;-s显示所有协议的使用状态,这些协议包括TCP、UDP和IP,一般这两个参数都是结合在一起使用的。另外-p可以选择特定的协议幷查看其具体使用信息,-a 可以显示所有主机的端口号,-r则显示当前主机的详细路由信息。 要运行以上这些程序,只要在DOS方式或Windows开始菜单的运行栏中以命令行的形式键入程序名即可。灵活使用这几个程序可以使你大体了解自己主机对网络的使用情况。

⑻ 如何在本地电脑上向连在TCPIP网上的设备发送命令

超级终端好象只能输入ASCII码,不能输入不能识别的十六进字符,你的功能不幸

⑼ 基于TCP/IP协议的文件传输命令是

如果你的题目没有问题,那么可选的是a和b,这是两个命令,其中a,估计应该是telnet,而非
talent,而b是文件传输协议,用于文件传输。
而c是一种协议,d则是internet
service
provider,例如联通、电信等,当然不可能是命令了。
所以答案是b.

⑽ windows 7中 tcp ip网络中配置情况的命令

1、输入【ipconfig /all】就可以显示本机IP地址;
2、使用组合键【Win】+【R】调出【运行】,输入CMD车,打开【命令提示符】;
3、在命令提示符下输入【ipconfig /all】,其中显示的IPV4地址就是本机的IP地址,当然这个是使用路由器获得的路由器IP地址。

阅读全文

与tcpip发包命令相关的资料

热点内容
奶粉源箱源码什么意思 浏览:173
台州程序员兼职一般去哪些网站 浏览:386
旧版本怎么下载到新的安卓 浏览:964
flash个人网站源码下载 浏览:723
javasocketbyte 浏览:264
素描基础教程pdf 浏览:541
香港商报pdf版 浏览:426
安卓手机怎么录制吉他弹奏 浏览:382
ie文件夹缓存在哪里 浏览:264
围棋排名算法 浏览:963
zigbee加密算法 浏览:464
柏杨版资治通鉴pdf 浏览:395
事业编程序员下班时间 浏览:10
linux中命令大全 浏览:38
pic单片机学习网站 浏览:163
843除6的算法 浏览:377
arduino编程视频 浏览:744
pdf背景绿色 浏览:612
记事本dos命令 浏览:275
服务器如何搭建多个节点 浏览:328