??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲va无码va在线va天堂,在线亚洲v日韩v,亚洲码国产精品高潮在线http://www.tkk7.com/cisco/category/5496.htmlJava, 一杯浓的咖啡伴你到深?lt;br> <span id="dict_daily"> <a target="_blank">Dict.CN 在线词典, p学习(fn), 在线译</a> </span> <script language="JavaScript" src="http://dict.cn/daily.php" defer="defer"> </script>zh-cnWed, 28 Feb 2007 07:05:31 GMTWed, 28 Feb 2007 07:05:31 GMT60VoIP Provider world Ranking - October 2005 http://www.tkk7.com/cisco/archive/2006/04/23/42698.htmlScott@JAVAScott@JAVASun, 23 Apr 2006 10:56:00 GMThttp://www.tkk7.com/cisco/archive/2006/04/23/42698.htmlhttp://www.tkk7.com/cisco/comments/42698.htmlhttp://www.tkk7.com/cisco/archive/2006/04/23/42698.html#Feedback1http://www.tkk7.com/cisco/comments/commentRss/42698.htmlhttp://www.tkk7.com/cisco/services/trackbacks/42698.html阅读全文

Scott@JAVA 2006-04-23 18:56 发表评论
]]>
Subnetwork Exercise 2http://www.tkk7.com/cisco/archive/2006/01/15/28071.htmlScott@JAVAScott@JAVASat, 14 Jan 2006 20:53:00 GMThttp://www.tkk7.com/cisco/archive/2006/01/15/28071.htmlhttp://www.tkk7.com/cisco/comments/28071.htmlhttp://www.tkk7.com/cisco/archive/2006/01/15/28071.html#Feedback0http://www.tkk7.com/cisco/comments/commentRss/28071.htmlhttp://www.tkk7.com/cisco/services/trackbacks/28071.html8.5.2002 Teemu.Korpela@mulkkeri.net

 

 

Subnetworks exercises 2:

 

untitled.JPG 

Basics:

Deal addresses for subnet shown in the picture so that every interface of a router has its own address of that subnet and so that in the cloud all hosts have enough addresses. Remember to reserve addresses also for network and broadcast addresses. In one network there can be only one subnet. Use variable length subnet masks (VLSM) for optimal subnets. Reserve for growth need not take into account.

 

Exercise 1:

 

Usable address space:

 

192.168.0.0/22

 

Amount of hosts in the networks:

 

A: 15

B: 51

C: 31

D: 370

E: 1

F: 16

G: 24

H: 4

I: 24

J: No hosts, only the interfaces of the routers.

 

D: 192.168.0.0/23 --- 192.168.1.255/23

B: 192.168.2.0/26 --- 192.168.2.63/26

C: 192.168.2.64/26 --- 192.168.2.127/26

G: 192.168.2.128/27 --- 192.168.2.159/27

I: 192.168.2.160/27 --- 192.168.2.191/27

A: 192.168.2.192/27 --- 192.168.2.223/27

H: 192.168.2.224/28 --- 192.168.2.239/28

E: 192.168.2.240/29 --- 192.168.2.247/29

J: 192.168.2.248/30 --- 192.168.2.251/30

 

How many addresses are out of use?

255-251 = 4, from 192.168.3.0 to 192.168.3.255, there are 256, so totally, 260 are out of use.

 

Exercise 2:

 

Usable address spaces:

 

192.168.0.0/25

192.168.128.0/26

192.168.128.192/26

 

Amount of hosts in the networks:

 

A: 2

B: 4

C: 6

D: 25

E: 3

F: 15

G: 10

H: 1

I: 45

J  No hosts, only the interfaces of the routers.

 

I: 192.168.0.0/26 --- 192.168.0.63/26

D: 192.168.0.64/27 --- 192.168.0.95/27

F: 192.168.0.96/27 --- 192.168.0.127/27

G: 192.168.128.0/28 --- 192.168.128.15/28

C: 192.168.128.16/28 --- 192.168.128.31/28

B: 192.168.128.32/29 --- 192.168.128.39/28

E: 192.168.128.40/29 --- 192.168.128.47/29

H: 192.168.128.48/29 --- 192.168.128.55/29

A: 192.168.128.56/29 --- 192.168.128.63/29

J: 192.168.128.192/30 --- 192.168.128.195/30

 

How many addresses are out of use?

255-195 = 60 addresses are out of use.



Scott@JAVA 2006-01-15 04:53 发表评论
]]>
Subnetwork Exercise 1http://www.tkk7.com/cisco/archive/2006/01/14/28043.htmlScott@JAVAScott@JAVASat, 14 Jan 2006 09:59:00 GMThttp://www.tkk7.com/cisco/archive/2006/01/14/28043.htmlhttp://www.tkk7.com/cisco/comments/28043.htmlhttp://www.tkk7.com/cisco/archive/2006/01/14/28043.html#Feedback0http://www.tkk7.com/cisco/comments/commentRss/28043.htmlhttp://www.tkk7.com/cisco/services/trackbacks/28043.html1. What are the network and broadcast addresses when the host address
   195.148.9.213 and subnet mask 255.255.255.224
   What was the number of the subnet?
213 = 11010101, 224 = 11100000, 213 & 224 = 11000000 = 192
Network address is 195.148.9.192, broadcast address is 195.148.9.223
2^3 = 8 subnets
 
2. What is the mask if the network address is 199.167.100.0 and
   broadcast address is 199.167.100.255?
The mask is 255.255.255.0
 
3. Is the address 172.21.64.0 with mask 255.255.192.0 the host, network or 
   broadcast address?
64 = 1000000, 192 = 11000000, the address is network address
 
4. What are the network and broadcast addresses if the host address
   172.21.200.4 and subnet mask 255.255.255.192?
   How many subnets together? How many addresses in a network?
4 = 100, 192 = 11000000, 4 & 192 = 0
Network address is 172.21.200.0, broadcast address is 172.21.200.63
2^2 = 4 subnets, 2^6 = 64 addresses in a network
 
5. What are network and broadcast addresses if the host address is
   201.7.110.76 and subnet mask 255.255.255.240?
   How many subnets together?
76 = 1001100, 240 = 11110000, 76 & 240 = 01000000 = 64
Network address is 201.7.110.64, broadcast address is 201.7.110.79
2^4 = 16 subnets
 
6. Deal a class C network to 32 subnets How many addresses are there in every
   subnet? How many bits are there in the subnet mask?
2^5 = 32, 8-5 = 3
2^3 = 8 addresses in every subnet, 29 bits in the subnet mask
 
7. (VLSM) The router connects five subnets. Account of hosts: 3, 5, 10, 30 
   and 100 pcs. Deal one class C network so that every network has enough
   addresses. Remember to calculate one address for the interface of the router.
   How many unusable addresses are left?
Assume the class C network is 194.211.79.0, subnet a, b, c, d, e stand for 3, 5, 10, 30, 100 pcs
 
194.211.79.0/25 --- 194.211.79.127/25         for e
194.211.79.128/26 --- 194.211.79.191/26       for d
194.211.79.192/28 --- 194.211.79.207/28       for c
194.211.79.208/28 --- 194.211.79.223/28       for b
194.211.79.240/29 --- 194.211.79.247/29       for a
 
240-223-1+255-247 = 24 unusable addresses are left


Scott@JAVA 2006-01-14 17:59 发表评论
]]>
TCP/IP子网掩码教程http://www.tkk7.com/cisco/archive/2005/12/09/23170.htmlScott@JAVAScott@JAVAFri, 09 Dec 2005 08:44:00 GMThttp://www.tkk7.com/cisco/archive/2005/12/09/23170.htmlhttp://www.tkk7.com/cisco/comments/23170.htmlhttp://www.tkk7.com/cisco/archive/2005/12/09/23170.html#Feedback0http://www.tkk7.com/cisco/comments/commentRss/23170.htmlhttp://www.tkk7.com/cisco/services/trackbacks/23170.html一、缺省A、B、Ccd址Q子|掩码; 

二、子|掩码的作用Q?nbsp;

  code: 
IP地址 192.20.15.5 11000000 00010100 00001111 00000101 
子网掩码 255.255.0.0 11111111 11111111 00000000 00000000 
|络ID 192.20.0.0 11000000 00010100 00000000 00000000 
LID 0.0.15.5 00000000 00000000 00001111 00000101 


计算该子|中的主机数:2^n-2=2^16-2=65534 
其中:nZ机ID占用的位?: 192.20.0.0(表示本网l?, 192.20.255.255 (表示子网q播); 
该子|所容纳L的IP地址范围:192.20.0.1~192.20.255.254 

三、实现子|?nbsp;

1Q划分子|的理由Q?nbsp;
?nbsp;q程LAN互连Q?nbsp;
②连接؜合的|络技术; 
③增加网D中的主机数量; 
④减网l广播?nbsp;
2Q子|的实现需要考虑以下因素Q?nbsp;
①确定所需的网lID敎ͼ信为将来的发展留有余地Q?nbsp;
谁需要占用单独的|络IDQ?nbsp;
▲每个子|; 
▲每个WANq接Q?nbsp;
②确定每个子|中最大的计算机数目,也要考虑未来的发展; 
谁需要占用单独的LIDQ?nbsp;
▲每个TCP/IP计算机网卡; 
▲每个TCP/IP打印机网卡; 
▲每个子|上的\由接口; 
③考虑增长计划的必要性:(x) 
    假设(zhn)在InterNIC甌C个网lIDQ?92.20.16.0 但你有两个远ELAN需要互q,而且每个q程LAN各有60C机?nbsp;
    若不划分子网Q?zhn)只能用一个网lIDQ?92.20.16.0Q用缺省子|掩码:(x)255.255.255.0Q而且在这个子|中可以容纳的主机ID的范_(d)(x) 192.20.16.1~192.20.16.254Q即可以?54C机?nbsp;
    现在若根据需要划分ؓ(f)两个子网Q即借用LID中的两位用作|络IDQ则子网掩码应变ؓ(f)Q?55.255.255.192Q?1000000Q目的是借用的用作网lI D的位掩去。看一看划分出来的子网的情况:(x) 
?92.20.16.65~126 
192.20.16.01000001~01111110 
本网D(01 |段Q主机数Q?n-2=26-2=62?26-65+1=62 
?92.20.16.129~190 
192.20.16.10000001~10111110 
本网D(10 |段Q主机数Q?n-2=26-2=62?90-129+1=62 
▲子|号00?表示本网l,子网?1?是子|屏蔽,均不可用?BR>提示Q在早期的子|划分标准RFC950中,不能使用?或全1做ؓ(f)二进制子|标识(在子|划分公?n-2中的-2处理Q。在RFC1812中,q个限制已被取消。下面内Ҏ(gu)自于RFC1812?BR>“以前版本的文档认ؓ(f)Q子|号不能??1Qƈ且至要有两位长。在一个CIDR领域Q子|号是|络前缀的一Ug伸。如果没有前~Q那么子|号也就不存在了。从CIDR观点来看Q这U对子网L(fng)限制是没有意义的Q可以安全地忽略。?/FONT> 
q个Ҏ(gu)可以满目前需求,但以后如果需要加入新的网D则必须重新划分更多的子|(卛_用更多的主机ID位用作网lIDQ,或如果以后需要每个子|中的主机数更多则必d用|络I D位来保证更多的主机数?nbsp;

四、定义子|号的方?nbsp;

若InterNIC分配l?zhn)的BcȝlID?29.20.0.0Q那么在使用~省的子|掩?55.255.0.0的情况下Q?zhn)只有一个网lID?16-2C机(范围是:(x)129.20.0.1~129.20.255.254Q。现在?zhn)有划?个子|的需求?nbsp;
1Q手工计法Q?nbsp;
①将所需的子|数转换Zq制 
4?0000100 
②以二进制表C子|数所需的位数即为向~省子网掩码中加入的位数Q既应向LID借用的位敎ͼ 
00000100??nbsp;
③决定子|掩?nbsp;
~省的:(x)255.255.0.0 
借用LID?位以后:(x)255.255.224Q?1100000Q?0Q即所借的位全表示?Q用作子|掩码?nbsp;
④决定可用的|络ID 
列出附加位引L(fng)所有二q制l合Q去掉全0和全1的组合情?nbsp;

  code: 
  l合情况     实际得到的子|ID 
   000?nbsp;  
001?2 Q?0100000 ) 129.20.32.0 
010?4 Q?1000000 ) 129.20.64.0 
011?6 Q?1100000 ) 129.20.96.0 
100?28Q?0000000Q?nbsp;129.20.128.0 
101?60Q?0100000Q?nbsp;129.20.160.0 
110?92Q?1000000Q?nbsp;129.20.192.0 
   111?nbsp;  


⑤决定可用的LID范围 

  code: 
子网      开始的IP地址 最后的IP地址 
129.20.32.0 129.20.32.1 129.20.63.254 
129.20.64.0 129.20.64.1 129.20.95.254 
129.20.96.0 129.20.96.1 129.20.127.254 
129.20.128.0 129.20.128.1 129.20.159.254 
129.20.160.0 129.20.160.1 129.20.191.254 
129.20.192.0 129.20.192.1 129.20.223.254 


2Q快捯法Q?nbsp;
①将所需的子|数转换Zq制 
4?0000100 
②以二进制表C子|数所需的位数即为向~省子网掩码中加入的位数Q既应向LID借用的位敎ͼ 
00000100??nbsp;
③决定子|掩?nbsp;
~省的:(x)255.255.0.0 
借用LID?位以后:(x)255.255.224Q?1100000Q?0Q即所借的位全表示?Q用作子|掩码?nbsp;
④将11100000最双?1"转换为十q制Q即为每个子|ID之间的增量,Cdelta d=32 
⑤生的子网IDCؓ(f)Q?^m-2 (m:向缺省子|掩码中加入的位? 
可用子网ID敎ͼ(x)2^3-2=6
⑥将d附在原网lID之后QŞ成第一个子|网lID 129.20.32.0 
⑦重复⑥Q后l的每个子网的值加dQ得到所有的子网|络ID 
129.20.32.0 
129.20.64.0 
129.20.96.0 
129.20.128.0 
129.20.160.0 129.20.192.0 
129.20.224.0?24与子|掩码相同,是无效的|络ID 


Scott@JAVA 2005-12-09 16:44 发表评论
]]>
用协议分析工具学?fn)TCP/IPhttp://www.tkk7.com/cisco/archive/2005/12/04/22460.htmlScott@JAVAScott@JAVASun, 04 Dec 2005 11:20:00 GMThttp://www.tkk7.com/cisco/archive/2005/12/04/22460.htmlhttp://www.tkk7.com/cisco/comments/22460.htmlhttp://www.tkk7.com/cisco/archive/2005/12/04/22460.html#Feedback0http://www.tkk7.com/cisco/comments/commentRss/22460.htmlhttp://www.tkk7.com/cisco/services/trackbacks/22460.html摘至 中国协议分析|?/A>

一、前a

  目前Q网l的速度发展非常快,学习(fn)|络的h也越来越多,E有|络常识的h都知?A target=_blank>TCP
/IP协议是网l的基础Q是Internet的语aQ可以说没有TCP/IP协议没有互联网的今天。目前号U搞|的人非常多Q许多h是从一把夹UKQ一个测U器联网开始接触网l的Q如果只是联|玩玩,知道几个Ping之类的命令就行了Q如果想在网l上有更多的发展不管是黑道还是红道,必须要把TCP/IP协议搞的非常明白?

  学习(fn)q?A target=_blank>TCP/IP协议的h多有一U感觉,q东西太抽象了,没有什么数据实例,看完不久忘了。本文将介绍一U直观的学习(fn)Ҏ(gu)Q利?A>协议分析工具学习(fn)TCP/IPQ在学习(fn)的过E中能直观的看到数据的具体传输过E?

  Z初学者更Ҏ(gu)理解Q本文将搭徏一个最单的|络环境Q不包含子网?

二、试验环?

1、网l环?

如图1所C?



?

  Z表述方便Q下文中208hx地址?92.168.113.208的计机Q?h指地址?92.168.113.1的计机?

2、操作系l?/B>

两台机器都ؓ(f)Windows 2000 Q?h机器作ؓ(f)服务器,安装FTP服务

3?A>协议分析工具

  Windows环境下常用的工具有:(x)Sniffer Pro、Natxray、Iris以及(qing)windows 2000自带的网l监视器{。本文选用Iris作ؓ(f)协议分析工具?

在客h208h安装IRIS软g?

三、测试过E?

1、测试例子:(x)?h计算Z的一个文仉过FTP下蝲?08h中?

2、IRIS的设|?

  ׃IRISh|络监听的功能,如果|络环境中还有其它的机器抓很多别的数据包,q样为学?fn)带来诸多不便,Z清楚地看清楚上述例子的传输过E首先将IRIS讄为只?08h?h之间的数据包。设|过E如下:(x)

  1)用热键CTRL+B弹出如图所C的地址表,在表中填写机器的IP地址Qؓ(f)了对抓的包看得更清楚不要M机的名字QnameQ?讄好后关闭此窗口?BR>



?

  2Q用热键CTRL+E弹出如图所C滤设|,选择左栏“IP address”,x按下囑ְaddress book中的地址拽到下面Q设|好后确定,q样p抓这两台计算Z间的包?BR>



?

  3、抓?

  按下IRIS工具栏中 开始按钮。在览器中输入Q?A target=_blank>FTP://192.168.113.1Q找到要下蝲的文?Q鼠标右键该文gQ在弹出的菜单中选择“复制到文g夹”开始下载,下蝲完后在IRIS工具栏中?按钮停止抓包。图4昄的就?A target=_blank>FTP的整个过E,下面我们详l?A>分析q个q程?



?

  说明Qؓ(f)了能抓到ARP协议的包Q在WINDOWS 2000 中运行arp –d 清除arp~存?

四、过E?A>分析

1?A target=_blank>TCP/IP的基本原?/B>

  本文的重点虽然是Ҏ(gu)实例来解?A target=_blank>TCP/IPQ但要讲明白下面的过E必ȝ要讲一?A target=_blank>TCP/IP的基本原理?

AQ网l是分层的,每一层分别负责不同的通信功能?

  TCP/IP通常被认为是一个四?A>协议pȝQ?A target=_blank>TCP/IP协议族是一l不同的协议l合在一h成的协议族。尽通常U该协议族ؓ(f)TCP/IPQ但TCP和IP只是其中的两U?A>协议而已Q如?所C。每一层负责不同的功能Q?



表1

  分层的概念说h非常单,但在实际的应用中非常的重要,在进行网l设|和排除故障时对|络层次理解得很透,对工作有很大的帮助。例如:(x)讄路由是网l层IP协议的事Q要查找MAC地址是链路层ARP的事Q常用的Ping命o(h)由ICMP协议来做的?

  ?昄了各?A>协议的关p,理解它们之间的关pd下面?A>协议分析非常重要?



?

  b.数据发送时是自上而下Q层层加码;数据接收时是自下而上Q层层解码?

  当应用程序用TCP传送数据时Q数据被送入协议栈中Q然后逐个通过每一层直到被当作一串比Ҏ(gu)送入|络。其中每一层对收到的数据都要增加一些首部信息(有时q要增加N信息Q,该过E如?所C?A target=_blank>TCP传给IP的数据单元称?A target=_blank>TCP报文D|UCؓ(f)TCPDc(din)I P传给|络接口层的数据单元UCIP数据报?通过以太|?/A>传输的比Ҏ(gu)UC?Frame)?

  数据发送时是按照图6自上而下Q层层加码;数据接收时是自下而上Q层层解码?



?

c. 逻辑上通讯是在同完成?

  垂直方向的结构层ơ是当今普遍认可的数据处理的功能程。每一层都有与其相d的接口。ؓ(f)了通信Q两个系l必d各层之间传递数据、指令、地址{信息,通信的逻辑程与真正的数据的不同。虽焉信程垂直通过各层ơ,但每一层都在逻辑上能够直接与q程计算机系l的相应层直接通信?

  从图7可以看出Q通讯实际上是按垂直方向进行的Q但在逻辑上通信是在同q行的?



?

2、过E描q?/B>

  Z更好?A>分析
协议Q我们先描述一下上qC子数据的传输步骤。如?所C:(x)

1)FTP客户端请?A target=_blank>TCP用服务器的IP地址建立q接?

2)TCP发送一个连接请求分D到q端的主机,即用上述IP地址发送一份IP数据报?

3) 如果目的L在本地网l上Q那么IP数据报可以直接送到目的L上。如果目的主机在一个远E网l上Q那么就通过IP选\函数来确定位于本地网l上的下一站\由器地址Qƈ让它转发IP数据报。在q两U情况下QIP数据报都是被送到位于本地|络上的一C机或路由器?

4) 本例是一?A target=_blank>以太|?/A>Q那么发送端L必须?2位的IP地址变换?8位的以太|?/A>地址Q该地址也称为MAC地址Q它是出厂时写到|卡上的世界唯一的硬件地址。把IP地址译到对应的MAC地址是由ARP协议完成的?

5) 如图的虚U所C,ARP发送一份称作ARPh?A target=_blank>以太|?/A>数据帧给以太|?/A>上的每个LQ这个过E称作广播。ARPh数据帧中包含目的L的IP地址Q其意思是“如果你是这个IP地址的拥有者,请回{你的硬件地址。?

6) 目的L的ARP层收到这份广播后Q识别出q是发送端在寻问它的IP地址Q于是发送一个ARP应答。这个ARP应答包含I(xin) P地址?qing)对应的g地址?

7) 收到ARP应答后,使ARPq行h—应{交换的IP数据包现在就可以传送了?

8) 发送IP数据报到目的L?



?

3、实?A>分析


  下面通过分析用iris捕获的包?A>分析一?A target=_blank>TCP/IP的工作过E,Z更清晰的解释数据传送的q程Q我们按传输的不同阶D|了四l数据,分别是查找服务器、徏立连接、数据传输和l止q接。每l数据,按下面三步进行解释?


昄数据?


解释该数据包


按层分析该包的头信息

W一l?查找服务?

1Q下图显C的??行的数据




?

2Q解释数据包

  q两行数据就是查找服务器?qing)服务器应答的过E?

  在第1行中Q源端主机的MAC地址?0:50:FC:22:C7:BE。目的端L的MAC地址是FF:FF:FF:FF:FF:FFQ这个地址是十六进制表C的QF换算Zq制是1111Q全1的地址是q播地址。所谓广播就是向本网上的每台|络讑֤发送信息,늼上的每个以太|?/A>接口都要接收q个数据帧ƈ对它q行处理Q这一行反映的是步?Q的内容QARP发送一份称作ARPh?A target=_blank>以太|?/A>数据帧给以太|?/A>上的每个L。网内的每个|卡都接到这L(fng)信息“谁?92.168.113.1的IP地址的拥有者,请将你的g地址告诉我”?

  W?行反映的是步?Q的内容。在同一?A target=_blank>以太|?/A>中的每台机器都会(x)"接收"到这个报文,但正常状态下除了1h外其他主机应该会(x)忽略q个报文Q?L(fng)L的ARP层收到这份广播报文后Q识别出q是发送端在寻问它的IP地址Q于是发送一个ARP应答。告知自qIP地址和MAC地址。第2行可以清楚的看出1号回{的信息__自己的MAC地址00:50:FC:22:C7:BE?

  q两行反映的是数据链路层之间一问一{的通信q程。这个过E就像我要在一个坐满h的教室找一个叫“张三”的人,在门口喊了一声“张三”,q一声大安听见了,q就叫广播。张三听到后做了回应Q别人听C没做回应Q这样就与张三取得了联系?

3Q头信息
分析

  如下囑ַ栏所C,W?数据包包含了两个头信息:(x)以太|?/A>Q?A target=_blank>EthernetQ和ARP?



?0

  下表2?A target=_blank>以太|?/A>的头信息Q括号内的数均ؓ(f)该字D|占字节数Q?A target=_blank>以太|?/A>报头中的前两个字D|以太|?/A>的源地址和目的地址。目的地址为全1的特D地址是广播地址。电(sh)~上的所?A target=_blank>以太|?/A>接口都要接收q播的数据。两个字节长?A target=_blank>以太|?/A>帧类型表C后面数据的cd。对于ARPh或应{来_(d)该字D늚gؓ(f)0806?

  W?行中可以看到Q尽ARPh是广播的Q但是ARP应答的目的地址却是1h的(00 50 FC 22 C7 BEQ。ARP应答是直接送到h端主机的?



?

  下表3是ARP协议的头信息。硬件类型字D表C硬件地址的类型。它的gؓ(f)1卌C?A target=_blank>以太|?/A>地址?A>协议cd字段表示要映的协议地址cd。它的gؓ(f)0800卌CIP地址。它的g包含I(xin) P数据报的以太|?/A>数据帧中的类型字D늚值相同。接下来的两?字节的字D,g地址长度?A>协议地址长度分别指出g地址?A>协议地址的长度,以字节ؓ(f)单位。对?A target=_blank>以太|?/A>上IP地址的ARPh或应{来_(d)它们的值分别ؓ(f)6?。Opx作(OpoperationQ,1是ARPh?是ARP应答?是RARPh?为RARP应答Q第二行中该字段gؓ(f)2表示应答。接下来的四个字D|发送端的硬件地址、发送端的IP地址、目的端的硬件地址和目的端IP地址。注意,q里有一些重复信息:(x)?A target=_blank>以太|?/A>的数据报头中和ARPh数据帧中都有发送端的硬件地址。对于一个ARPh来说Q除目的端硬件地址外的所有其他的字段都有填充倹{?

  ?的第2行ؓ(f)应答Q当pȝ收到一份目的端为本机的ARPh报文后,它就把硬件地址填进去,然后用两个目的端地址分别替换两个发送端地址Qƈ把操作字D늽?Q最后把它发送回厅R?



?

W二l?建立q接


1Q下图显C的?-5行的数据



?1

2Q解释数据包

  q三行数据是两机建立q接的过E?

  q三行的核心意思就?A target=_blank>TCP协议的三ơ握手?A target=_blank>TCP的数据包是靠IP协议来传输的。但IP协议是只把数据送到出去Q但不能保证IP数据报能成功地到辄的地Q保证数据的可靠传输是靠TCP协议来完成的。当接收端收到来自发送端的信息时Q接受端详发送短发送一条应{信息,意思是Q“我已收C的信息了。”第三组数据能看到q个q程?A target=_blank>TCP是一个面向连接的协议。无论哪一方向另一方发送数据之前,都必d在双方之间徏立一条连接。徏立连接的q程是三次握手的过E?

  q个q程像要我扑ֈ了张三向他借几本书Q第一步:(x)我说Q“你好,我是担子”,W二步:(x)张三_(d)(x)“你好,我是张三”,W三步:(x)我说Q“我找你借几本书。”这样通过问答q认对方n份,建立了联pR?

  下面?A>分析一下此例的三次握手q程?

1))h?08h发送一个初始序PSEQQ?87694419l?h?

2))服务?h收到q个序号后,此序号?gؓ(f)987694419作ؓ(f)应答信号QACKQ,同时随机产生一个初始序PSEQQ?773195208Q这两个信号同时发回到请求端208hQ意思ؓ(f)Q“消息已收到Q让我们的数据流?773195208q个数开始。?

3))h?08h收到后将认序号讄为服务器的初始序PSEQQ?773195208??773195209作ؓ(f)应答信号?

  以上三步完成了三ơ握手,双方建立了一条通道Q接下来可以进行数据传输了?

  下面分析TCP头信息就可以看出Q在握手q程?A target=_blank>TCP头部的相兛_D也发生了变化?

3Q头信息分析

  如图12所C,W?数据包包含了三头信息Q?A target=_blank>以太|?/A>Q?A target=_blank>EthernetQ和IP?A target=_blank>TCP?

  头信息少了ARP多了IP?A target=_blank>TCPQ下面的q程也没有ARP的参与,可以q样理解Q在局域网内,ARP负责的是在众多联|的计算Z扑ֈ需要找的计机Q找到工作就完成了?

  以太|?/A>的头信息与第1?行不同的是cd?800Q指明该帧类型ؓ(f)IP?


?2

IP协议头信?

  IP?A target=_blank>TCP/IP协议族中最为核心的协议。从?可以看出所有的TCP?A target=_blank>UDP、ICMP?qing)IGMP数据都以IP数据报格式传输的Q有个Ş象的比喻IP协议像q货的卡车,一车R的货物运向目的地。主要的货物是TCP?A target=_blank>UDP分配l它的。需要特别指出的是IP提供不可靠、无q接的数据报传送,也就是说I P仅提供最好的传输服务但不保证IP数据报能成功地到辄的地。看到这你会(x)不会(x)担心你的E_MAIL?x)不会(x)送到朋友那,其实不用担心Q上文提q保证数据正到辄的地?A target=_blank>TCP的工作,E后我们详l解释?

  如表4是IP协议的头信息?



? IP数据报格式及(qing)首部中的各字D?BR>
  ?2中所宣布?5 00?1 01为IP的头信息。这些数是十六进制表C的。一个数?位,例如Q?的二q制?100

  4位版本:(x)表示目前?A>协议版本P数值是4表示版本?Q因此IP有时也称?A target=_blank>IPv4Q?

  4位首部长度:(x)头部的是长度Q它的单位是32?4个字?Q数gؓ(f)5表示IP头部长度?0字节?

  8位服务类?TOS)Q?0Q这?位字D는3位的优先权子字段Q现在已l被忽略Q?位的TOS子字D以? 位的未用字段Q现在ؓ(f)0Q构成?位的TOS子字D包含:(x)最g时、最大吞吐量、最高可靠性以?qing)最费用构成,q四?位最多只能有一个ؓ(f)1Q本例中都ؓ(f)0Q表C是一般服务?

  16位总长?字节?Q总长度字D|指整个IP数据报的长度Q以字节为单位。数gؓ(f)00 30Q换ؓ(f)十进制ؓ(f)48字节Q?8字节=20字节 的IP?28字节?A target=_blank>TCP_(d)q个数据报只是传送的控制信息Q还没有传送真正的数据Q所以目前看到的总长度就是报头的长度?

  16位标识:(x)标识字段唯一地标识主机发送的每一份数据报。通常每发送一份报文它的值就?x)?Q第3行ؓ(f)数gؓ(f)30 21Q第5行ؓ(f)30 22Q第7行ؓ(f)30 23。分片时涉及(qing)到标志字D和片偏UdD,本文不讨两个字段?

  8位生存时_(d)TTLQ:(x)TTLQtime-to-liveQ生存时间字D设|了数据报可以经q的最多\由器数。它指定了数据报的生存时间。ttl的初始值由源主|,一旦经q一个处理它的\由器Q它的值就减去1。可Ҏ(gu)TTL值判断服务器是什么系l和l过的\由器。本例ؓ(f)80Q换成十进制ؓ(f)128QW(xu)INDOWS操作pȝTTL初始g般ؓ(f)128QUNIX操作pȝ初始gؓ(f)255Q本例表CZ个机器在同一|段且操作系lؓ(f)WINDOWS?

  8?A>协议Q表C?A>协议cdQ?表示传输层是TCP协议?

  16位首部检验和Q当收到一份I P数据报后Q同样对首部中每?6 位进行二q制反码的求和。由于接收方在计过E中包含了发送方存在首部中的(g)验和Q因此,如果首部在传输过E中没有发生M差错Q那么接收方计算的结果应该ؓ(f)?。如果结果不是全1Q即(g)验和错误Q那么IP׃弃收到的数据报。但是不生成差错报文Q由上层dCq数据报ƈq行重传?

  32位源IP地址?2位目的IP地址Q实际这是IP协议中核心的部分Q但介绍q方面的文章非常多,本文搭徏的又是一个最单的|络l构Q不涉及(qing)路由Q本文对此只做简单介l,相关知识请参阅其它文章?2位的IP地址׃个网lID和一个主机IDl成。本例源IP地址为C0 A8 71 D0Q{换ؓ(f)十进制ؓ(f)Q?92.168.113.208; 目的IP地址为C0 A8 71 01Q{换ؓ(f)十进制ؓ(f)Q?92.168.113.1。网l地址?92.168.113Q主机地址分别??08Q它们的|络地址是相同的所以在一个网D内Q这h据在传送过E中可直接到达?

TCP协议头信?

  如表5是ICP协议的头信息?



? TCP包首?BR>
  W三?A target=_blank>TCP的头信息是:(x)04 28 00 15 3A DF 05 53 00 00 00 00 70 02 40 00 9A 8D 00 00 02 04 05 B4 01 01 04 02

  端口P(x)常说FTP?1端口、HTTP?0端口?A target=_blank>TELNET?3端口{,q里指的端口是TCP?A target=_blank>UDP的端口,端口像通道两端的门一P当两行通讯旉必须是打开的。源端口和目的端口各?6位,2?6ơ方{于65536Q这是每台?sh)脑与其它?sh)脑联pL能开的“门”。一般作为服务一Ҏ(gu)Ҏ(gu)务的端口h固定的。本例目的端口号?0 15Q换成十进制ؓ(f)21Q这正是FTP的默认端口,需要指出的是这?A target=_blank>FTP的控制端口,数据传送时用另一端口Q第三组?A>分析能看到这一炏V客L(fng)与服务器联系旉机开一个大?024的端口,本例?4 28Q换成十进制ؓ(f)1064。你的电(sh)脑中了木马也?x)开一个服务端口。观察端口非帔R要,不但能看出本机提供的正常服务Q还能看Z正常的连接。Windows察看端口的命令时netstat?

  32位序P(x)也称为顺序号QSequence NumberQ,写ؓ(f)SEQQ从上面三次握手?A>分析可以看出Q当一方要与另一方联pL发送一个初始序L(fng)Ҏ(gu)Q意思是Q“让我们建立联系吧?”,服务Ҏ(gu)到后要发个独立的序号l发送方Q意思是“消息收刎ͼ数据将以这个数开始。”由此可看出Q?A target=_blank>TCPq接完全是双向的Q即双方的数据流可同时传输。在传输q程中双Ҏ(gu)据是独立的,因此每个TCPq接必须有两个顺序号分别对应不同方向的数据流?

  32位确认序P(x)也称为应{号QAcknowledgment NumberQ,写ؓ(f)ACK。在握手阶段Q确认序号将发送方的序号加1作ؓ(f)回答Q在数据传输阶段Q确认序号将发送方的序号加发送的数据大小作ؓ(f)回答Q表C确实收到这些数据。在W三l的分析中将看到q一q程?

  4位首部长度:(x)。这个字D占4位,它的单位?2位(4个字节)。本例gؓ(f)7Q?A target=_blank>TCP的头长度?8字节Q等于正常的长度2 0字节加上可选项8个字节。,TCP的头长度最长可?0字节Q二q制1111换算为十q制?5Q?5*4字节=60字节Q?

  6个标志位?

  URG 紧急指针,告诉接收TCP模块紧要指针域指着紧要数据

  ACK |?时表C确认号Qؓ(f)合法Qؓ(f)0的时候表C数据段不包含确认信息,认可忽略?

  PSH |?时请求的数据D在接收方得到后可直接送到应用E序Q而不必等到缓冲区满时才传送?

  RST |?旉接。如果接收到RST位时候,通常发生了某些错误?

  SYN |?时用来发起一个连接?

  FIN |?时表C发端完成发送Q务。用来释放连接,表明发送方已经没有数据发送了?

  ?3?个图分别?-5?A target=_blank>TCP协议的头信息Q这三行是三ơ握手的q程Q我们看看握手的q程标志位发生了什么?

  如图13-1h?08h发送一个初始序PSEQQ?87694419l?h。标志位SYN|ؓ(f)1?

  如图13-2服务?h收到q个序号后,应{信PACKQ和随机产生一个初始序PSEQQ?773195208发回到请求端208hQ因为有应答信号和初始序P所以标志位ACK和SYN都置??

  如图13-3h?08h收到1h的信号后Q发回信息给1h。标志位ACK|ؓ(f)1Q其它标志ؓ(f)都ؓ(f)0。注意此时SYNgؓ(f)0QSYN是标C发赯接的Q上两部q接已经完成?



  16位窗口大:(x)TCP的流量控制由q接的每一端通过声明的窗口大来提供。窗口大ؓ(f)字节敎ͼ起始于确认序号字D|明的|q个值是接收端正期望接收的字节。窗口大是一?6字节字段Q因而窗口大最大ؓ(f)65535字节?

  16位检验和Q检验和覆盖了整个的TCP报文D:(x) TCP首部?A target=_blank>TCP数据。这是一个强制性的字段Q一定是由发端计和存储Qƈ由收端进行验证?

  16位紧急指针:(x)只有当U R G标志|?时紧急指针才有效。紧急指针是一个正的偏U量Q和序号字段中的值相加表C紧急数据最后一个字节的序号?

  选项Q图13-1和图13-2?个字节选项Q图13-3没有选项。最常见的可选字D|最长报文大,又称为MSS (Maximum Segment Size)。每个连接方通常都在握手的第一步中指明q个选项。它指明本端所能接收的最大长度的报文Dc(din)图13-1可以看出208h可以接受的最大字节数?460字节Q?460也是以太|?/A>默认的大,在第三组的数?A>分析中可以看到数据传送正是以1460字节传送的?

握手结

  上面我们分开讲了三次握手Q看着有点散,现在结一下?



W三l?数据传输

1Q下图显C的?7-60行的数据



?4

2Q解释数据包

  q四行数据是数据传输q程中一个发送一个接收的q程?

  前文说过Q?A target=_blank>TCP提供一U面向连接的、可靠的字节服务。当接收端收到来自发送端的信息时Q接受端要发送一条应{信息,表示收到此信息。数据传送时?A target=_blank>TCP分割成认为最适合发送的数据块。一?A target=_blank>以太|?/A>在传送时TCP数据分?460字节。也是说数据在发送方被分成一块一块的发送,接受端收到这些数据后再将它们l合在一赗?

  57行显C?hl?08h发送了大小?514字节大小的数据,注意我们前文讲过数据发送时是层层加协议头的Q?514字节=14字节以太|?/A>?+ 20字节IP?+ 20字节TCP?+ 1460字节数据

  58行显C的应答信号ACK为:(x)1781514222Q这个数?7行得SEQ序号1781512762加上传送的数据1460Q?08h这个应{信号发l?h说明已收到发来的数据?

  59?0行显C的是l传送数据的q程?

  q个q程像我向张三借书Q借给我几本我要说Q“我已借了你几本了。”,他说Q“知道了”?

3Q头信息

  ?5-1和图15-2分别?7行和58行的头信息,解释参考第二组?



W四l?l止q接

1Q下图显C的?3-96行的数据



?6

2Q解释数据包

93-96是两机通讯完关闭的q程?

  建立一个连接需要三ơ握手,而终止一个连接要l过4ơ握手。这是因Z?A target=_blank>TCPq接是全双工Q即数据在两个方向上能同时传递)Q每个方向必d独地q行关闭?ơ握手实际上是双方单独关闭的过E?

  本例文g下蝲完后Q关闭浏览器l止了与服务器的q接?6?3-96行显C的是l止q接所l过4ơ握手过E?

  93行数据显C的是关闭浏览器后,如图17-1所C?08hFIN|?q同序号(SEQ)987695574发给1hhl止q接?

  94行数据和?7-2昄1h收到FIN关闭h后,发回一个确认,q将应答信号讄为收到序号加1Q这样就l止了这个方向的传输?

  95行数据和?7-3昄1hFIN|?q同序号(SEQ)1773196056发给208hhl止q接?

  96行数据和?7-4昄208h收到FIN关闭h后,发回一个确认,q将应答信号讄为收到序号加1Q至?A target=_blank>TCPq接d关闭?

3Q头信息






六、扫描实?/B>

  下面我们再D个ping的实例,试某台计算机是否通,最常用的命令就是ping命o(h)。Ping 一台计机Q出现如?8所C界面就是通,出现如图19所C界面就是不通,不通有两种情况Q一是该计算Z存在或没接网U,二是该计机安装了防火墙q设|ؓ(f)不允许ping。如何区别这两种情况呢?下面q是利用iris跟踪上述情况?



?8



?9

  如图20是ping通的情况?

  如图21是ping不通该计算Z存在的情c(din)从囑֏以看出ARPh没有回应?

  如图22是ping不通,该计机存在但安装了防火墙的情况。从囑֏以看出ARPh有回应。但ICMPh没回应?

  ?A>分析可以看出虽然后两U情늚表面现象是一L(fng)Q但实质是截然相反的。通过头信息可以清楚的看出PING?

  ICMP协议来完成的Q通讯q程是在W三层完成的Q没有用到第四层?A target=_blank>TCP协议?



?0



?1



?2


七、后?/B>

  本文不是个教E,许多问题都没有涉?qing)到Q比如TCP重发、IP分解、\qQ只是提Z学习(fn)思\Q希望能起到抛砖引玉的作用。TCP/IP协议族是非常复杂的,但只要理解了q是不难学的。最后向感兴的朋友提个问题Q分别telnet三台机器Q一台正?3端口开放,一台网是通的?3端口没开放,另外一台是不存在的。用我们学过的方法跟t一下,比较三个的不同。其实这是用TCP扫描判断Ҏ(gu)机器是否在线的一U方法?/TD>

Scott@JAVA 2005-12-04 19:20 发表评论
]]>
վ֩ģ壺 þþƷavƷ| þWWWɫѹۿ| AVԴ߹ۿ| þþƷAV鶹| պѹۿƵ| һëƬaaaaaaѿ| ˳Ƶ߲Ų| Ƭ߹ۿ| պAvҹҹˬ| ˳wwwþþ| Ļַ| 2021ƷƵѲ| þþþƷѹĻ| Ļ˾Ʒ | һaƵ| Ļ| վ߹ۿ| ޹Ʒ˾Ʒ| www.91| 19ѹۿ| x8| Ʒһʽֱ| ƷѸþ| һػ¼Ѳŷ| һaȫƵ| ߹ۿ| AVӰԺ| ij| һëƬۿ| a߹ۿ| ޼У԰ɫ| ձ㽶Ƶ| ޹Ʒվþ| ޸Ƶַ| պĻò| Ľղ2020| avƬһ| һ鶹| һɪ | ҹƷ侫֮ѹۿ| avѸ߳ˮ|