一次web访问的全过程.doc
一、网络环境说明图一本次网络通信试验采用PACKETTRACER50思科网络模拟软件。有关PACKETTRACER50的使用与技巧请参考我的相关博文。此次模拟环境中使用5个路由器连接两个以太网,其中19216820/24网段为服务器,19216821为DNS服务器,19216822为WEB服务器,域名为WWWSENYAORGCN,19216823为TFTP服务器,19216810/24网段为CLIENTPC,其网关为1921681254。每个路由器使用RIP路由协议发现路由。二、PC0IP地址为19216811访问WWWSENYAORGCN的过程详解1、把域名WWWSENYAORGCN解析为IP地址,这就要使用DNS协议,向DNS服务器查询域为WWWSENYAORGCN的IP地址。A、PC0组装成一个DNS数据包,该数据包包含了一条查询域名为WWWSENYAORGCN的IP是多少的问题,然后再把该DNS数据包加上一个UDP报头,在UDP报头的目的端口为53,源端口随机选择,把UDP数据报交给IP层,加上目的地址即DNS服务器的IP地址19216821,源地址为本机IP地址,IP数据包交给网络接口层也可以理解为数据链路层准备发给本网段网关,由网络转发出去。在网络接口层又封闭为数据帧,帧头的源MAC地址为本机网卡MAC地址,目的地址应该为网关的MAC地址,但此时PC0并不知道网关1921681254的MAC地址,所以先在本网段发送ARP协议广播数据包,请求网关1921681254的MAC地址;B、封装ARP广播数据包,请求网关1921681254的MAC地址。广播地址为FFFFFFFFFFFF。该数据包会被交换机转发到本网段中除了自己的所有计算机(网络接口)上,意思我的IP地址是19216811,MAC地址是00500FB8E023,我想知道IP地址为1921681254的MAC地址是多少图二PC0上两个整装待发的数据包。C、交换机收到PC0发来的ARP广播数据包。图三D、交换机把收到的PC0发来的ARP数据包转发本网段中除了PC0之外的所有网络接口上(或计算机上),只有IP地址为1921681254的计算机会回答这个数据包,其它的计算机将会将不予理睬。图四E、网关1921681254把ARP应答数据包转发给交换机。图五F、PC0收到了网关1921681254的ARP应答数据包,这样就知道了网关1921681254的MAC地址,准备把DNS数据包发送给网关。图六G、DNS查询数据包先发送到交换机。图七H、交换机再把接收到DNS查询数据包转发给本网段的网关上,即图中路由器ROUTER0的FASTETHERNET0/0接口上。图八I、接下来路由器ROUTER0该把DNS数据发向哪里呢它要查一下自己的路由表。我们先来看一下ROUTER0的路由器,该路由器为CISOC2000系列的路由器,使用SHIPROUTE查看路由表。R0SHIPROUTECODESCCONNECTED,SSTATIC,IIGRP,RRIP,MMOBILE,BBGPDEIGRP,IGRPEXTERNAL,OOSPF,IAOSPFINTERAREAN1OSPFNSSAEXTERNALTYPE1,N2OSPFNSSAEXTERNALTYPE2E1OSPFEXTERNALTYPE1,E2OSPFEXTERNALTYPE2,EEGPIISIS,L1ISISLEVEL1,L2ISISLEVEL2,IAISISINTERAREACANDIDATEDEFAULT,UPERUSERSTATICROUTE,OODRPPERIODICDOWNLOADEDSTATICROUTEGATEWAYOFLASTRESORTISNOTSETR1721600/16120/2VIA19216832,000004,SERIAL0/0120/2VIA19216842,000024,SERIAL0/1R1723000/16120/2VIA19216832,000004,SERIAL0/0120/2VIA19216842,000024,SERIAL0/1C19216810/24ISDIRECTLYCONNECTED,FASTETHERNET0/0R19216820/24120/3VIA19216832,000004,SERIAL0/0120/3VIA19216842,000024,SERIAL0/1C19216830/24ISDIRECTLYCONNECTED,SERIAL0/0C19216840/24ISDIRECTLYCONNECTED,SERIAL0/1R19216850/24120/1VIA19216832,000004,SERIAL0/0R19216860/24120/1VIA19216832,000004,SERIAL0/0120/1VIA19216842,000024,SERIAL0/1R19216890/24120/2VIA19216832,000004,SERIAL0/0120/2VIA19216842,000024,SERIAL0/1R192168100/24120/1VIA19216842,000024,SERIAL0/1R192168110/24120/1VIA19216832,000004,SERIAL0/0R192168120/24120/1VIA19216842,000024,SERIAL0/1由ROUTER0的路由表可以看出到19216820/24网段(要访问的WEB服务器19216822在该网段)有两条路可以走我已经标为红色一条是经19216830/24网段、ROUTER1的SERIAL0/0接口IP地址19216832,由ROUTER0的SERIAL0/0接口转发过去;另一条是经19216840/24网段、ROUTER2路由器的SERIAL0/0接口,由ROUTER0的SERIAL0/1接口转发过去。到底使用哪一条路呢,由网络的通信状况决定,如流量等。图九走的是第一条路J、路由器ROUTER1接收到PC0的DNS查询数据包又该把它转发到哪里呢同样查看自己的路由表。R1SHIPROUTECODESCCONNECTED,SSTATIC,IIGRP,RRIP,MMOBILE,BBGPDEIGRP,IGRPEXTERNAL,OOSPF,IAOSPFINTERAREAN1OSPFNSSAEXTERNALTYPE1,N2OSPFNSSAEXTERNALTYPE2E1OSPFEXTERNALTYPE1,E2OSPFEXTERNALTYPE2,EEGPIISIS,L1ISISLEVEL1,L2ISISLEVEL2,IAISISINTERAREACANDIDATEDEFAULT,UPERUSERSTATICROUTE,OODRPPERIODICDOWNLOADEDSTATICROUTEGATEWAYOFLASTRESORTISNOTSETR1721600/16120/1VIA19216852,000021,SERIAL0/1R1723000/16120/1VIA192168112,000026,SERIAL0/3R19216810/24120