目 录
OSPF邻接状态的分析................................................................................................ 1
一、实验原理.............................................................................................................. 1
二、实验目的.............................................................................................................. 1
三、实验拓扑.............................................................................................................. 1
四、实验配置.............................................................................................................. 1
五、实验分析.............................................................................................................. 3
六、实验现象.............................................................................................................. 3
七、实验结果.............................................................................................................. 3
八、实验拓展.............................................................................................................. 5
九、Exchange............................................................................................................. 6
十、Loading............................................................................................................... 7
十一、Full.................................................................................................................. 7
将Linux系统配置成DNS主服务器....................................................................... 9
一、实验目的.............................................................................................................. 9
二、实验环境.............................................................................................................. 9
三、实验分析.............................................................................................................. 9
四、实验内容及操作步骤......................................................................................... 9
五、问题总结............................................................................................................ 12
实习感想.................................................................................................................... 13
OSPF邻接状态的分析
一、实验原理
OSPF(open shortest path first)协议是先进网络中使用最广泛的动态路由协议,区别于RIP和EIGRP,它是一种链路状态的路由协议。启用OSPF的路由器都会以自身为根,通过计算收到的链路状态信息,得到一条到达目的网络的最优路径。不同于距离矢量的路有协议,链路状态路由协议的每一个路由条目都有自身计算得出,不是有其他路由器宣告。
二、实验目的
在OSPF协议进行协商的过程中,不同路由器之间需要建立邻居,之后需要建立邻接关系。在建立邻接状态的过程中,需要选举出DR和BDR(本次试验在广播链路中进行),而这些过程都需要在路由器建立邻接关系的过程中完成。本次实验需要掌握OSPF建立邻接关系的七个状态,以及过程中都发生了什么。
三、实验拓扑
四、实验配置
R1:
no ip domain lookup //关闭域名解析查找命令
interface Loopback0
ip address 1.1.1.1 255.255.255.255 //配置环回口地址
interface FastEthernet0/0
ip address 14.1.1.1 255.255.255.0 //配置fa0/0口地址
router ospf 110 //启用OSPF进程,进程号110
log-adjacency-changes
network 1.1.1.1 0.0.0.0 area 0 //宣告主机1.1.1.1
network 14.1.1.0 0.0.0.255 area 0 //宣告14.1.1.0网段
line con 0
exec-timeout 0 0 //防止超时退出
logging synchronous //防止日志更新打断命令行
R2:
no ip domain lookup //关闭域名解析查找命令
interface Loopback0
ip address 2.2.2.2 255.255.255.255 //配置环回口地址
interface FastEthernet0/0
ip address 14.1.1.2 255.255.255.0 //配置fa0/0口地址
router ospf 110 //启用OSPF进程,进程号110
log-adjacency-changes
network 2.2.2.2 0.0.0.0 area 0 //宣告主机2.2.2.2
network 14.1.1.0 0.0.0.255 area 0 //宣告14.1.1.0网段
line con 0
exec-timeout 0 0 //防止超时退出
logging synchronous //防止日志更新打断命令行
R3:
no ip domain lookup //关闭域名解析查找命令
interface Loopback0
ip address 3.3.3.3 255.255.255.255 //配置环回口地址
interface FastEthernet0/0
ip address 14.1.1.3 255.255.255.0 //配置fa0/0口地址
router ospf 110 //启用OSPF进程,进程号110
log-adjacency-changes
network 3.3.3.3 0.0.0.0 area 0 //宣告主机3.3.3.3
network 14.1.1.0 0.0.0.255 area 0 //宣告14.1.1.0网段
line con 0
exec-timeout 0 0 //防止超时退出
logging synchronous //防止日志更新打断命令行
R4:
no ip domain lookup //关闭域名解析查找命令
interface Loopback0
ip address 4.4.4.4 255.255.255.255 //配置环回口地址
interface FastEthernet0/0
ip address 14.1.1.4 255.255.255.0 //配置fa0/0口地址
router ospf 110 //启用OSPF进程,进程号110
log-adjacency-changes
network 4.4.4.4 0.0.0.0 area 0 //宣告主机4.4.4.4
network 14.1.1.0 0.0.0.255 area 0 //宣告14.1.1.0网段
line con 0
exec-timeout 0 0 //防止超时退出
logging synchronous //防止日志更新打断命令行
五、实验分析
在实验过程中,蚯蚓已经利用GNS3自带的抓包工具抓取了建立邻接关系发送的所有包,我们这里先来看在建立关系的过程中,DR和BDR的选举过程。
在我们刚开始接触OSPF协议的过程中,对于DR和BDR的选举好像很简单的样子——首先选举DR,接着选举BDR。选举的依赖就是路由器优先值,接下来是比较路由器的Route ID,以此为依据来选举。但是往往在实验过程中我们发现,明明Route ID小的路由器却成为了DR或者BDR,这个和我们学习的东西又矛盾,百思不得其解。
六、实验现象
R4(config-router)#do sh ip os nei
Neighbor ID Pri State Dead Time Address Interface
1.1.1.1 1 FULL/DR 00:00:36 14.1.1.1 FastEthernet0/0
2.2.2.2 1 FULL/BDR 00:00:39 14.1.1.2 FastEthernet0/0
3.3.3.3 1 2WAY/DROTHER 00:00:32 14.1.1.4 FastEthernet0/
在R4上查看邻居表发现,Route Id较高的3.3.3.3没有成为DR,反而1.1.1.1成为了DR。而即使如此,也应该是R2成为DR,R1成为BDR,但是实验结果和我们学习的好像不符。
七、实验结果
在路由器刚启用OSPF协议到最后完成邻接关系的建立,总工会经历七个状态:Down、Init、Two-way、Exstart、Exchang、Loading、Full。而OSPF协议中DR、BDR的选举在Two-way状态之后进行。
在Two-way状态之前,路由器发送的OSPF Hello包中的DR和BDR字段都标志为:0.0.0.0
这是蚯蚓利用wirshark工具打开的抓取的hello包,在GNS3-0.8以上的版本应该都已经有集成的了。而且wirshark工具的使用很简单,推荐使用。
当路由器从接收到的hello包中看到了自身的Route ID之后,就进入了Two-way状态(启用了OSPF的路由器未收到hello包时Down状态,当OSPF路由器在hello死亡时间内收到hello包时处于Init状态)。此时,启用OSPF的路由器开始选角DR、BDR。
蚯蚓在实验的过程中,首先在R1和R2上进行了配置,所以,选举过程最先参与的是R1、R2。这里就很好的解释了为什么R3没有成为DR、BDR的原因。在完成DR和BDR的选举之后,即使后来有更加优先的路由器加入整个广播网络,网络中的DR和BDR也不会改变。
新的问题又产生:明明R2的Route Id高于R1,为什么R1成为了DR,而R2成为了BDR。
路由器在Two-way状态开始后,向224.0.0.5发送hello包。在hello包中宣告自己是DR,而DR字段,则是连接该网络的接口地址。路由器会建立一个具有选举资格的列表(优先级为0,不具选举资格),该列表中包含所有未宣告自身为DR的路由器(而宣告自身为DR的路由器没有进入该列表的资格)。问题就出在这里:古话说的好,先下手为强,R1第一个向整个网络宣告“我是DR”,同时它也在建立上述的表,但是就不把自己放在表里面。其他路由器还未来得及向大家宣告“我是DR”,就已经被R1“洗脑”,自觉的在表中排除了R1的位置,开始争夺BDR的归属权。当所有Route争个你死我活为了老二位置的时候,殊不知已经有Route先它们一步已经得到了老大的位置,就算它们成为了BDR,上头还有DR压着,以后的所有事情,还是得听DR的(所有DRother都向DR发送信息,有DR向DRother发送信息)。
这里,我们来查看接下来的hello包:
R1:
此时,R1已经将自己标记成为DR,而BDR还没有产生。
R2:
R2被“欺骗”,将自己放到了BDR的位置,殊不知自己比R1更有“才华”。
R3:
R4:
可怜的R3和R4,因为来的迟,什么都得不到,只能成为DRother。
八、实验拓展
看惯武侠玄幻小说的朋友应该知道,想要成为掌门,有好多渠道和办法,但最直接简单的莫过于干了掌门,然后自己上位。当然这种事情,副掌门做的是最多的(其实蚯蚓向引用局长副局长来说明的,但是想到 社会大环境,还是用掌门更加靠谱)。
我们加进来一个新的路由器,产生一个新的拓扑图。
(一) 拓扑图
(二) 配置
R5:
no ip domain lookup //关闭域名解析查找命令
interface Loopback0
ip address 5.5.5.5 255.255.255.255 //配置环回口地址
interface FastEthernet0/0
ip address 14.1.1.5 255.255.255.0 //配置fa0/0口地址
router ospf 110 //启用OSPF进程,进程号110
log-adjacency-changes
network 5.5.5.5 0.0.0.0 area 0 //宣告主机5.5.5.5
network 14.1.1.0 0.0.0.255 area 0 //宣告14.1.1.0网段
line con 0
exec-timeout 0 0 //防止超时退出
logging synchronous //防止日志更新打断命令行
(三) 关闭R1
Neighbor ID Pri State Dead Time Address Interface
2.2.2.2 1 FULL/DR 00:00:39 14.1.1.2 FastEthernet0/0
5.5.5.5 1 2WAY/DROTHER 00:00:34 14.1.1.5 FastEthernet0/0
14.1.1.4 1 FULL/BDR 00:00:31 14.1.1.4 FastEthernet0/
从红色加粗字体中我们可以发现,当DR死亡以后,BDR立刻成为DR,而在剩下的路由器中启用Route Id更加优先的路由器成为BDR。而我将原本的R4的loopback口关闭,让它的物理接口成为Route Id,结果R4就成为了BDR。实验结果验证:当DR宕掉之后,BDR成为DR,而剩下的路由器中,Route-id不管是否来自于loopback,都只是比较值的大小。
截止上面的过程,two-way状态已经结束,DR和BDR的选举过程也结束。这时,就进入了Exstart状态,这个状态是为了接下来数据库描述数据包的交换做准备的。通过比较Rid号的大小,Rid大的就成为了master,而另一个就成为了slave(这个和DR和BDR的选举无任何关系)。主从关系的确定通过发送DBD来确定,DBD数据包中DB Description字段中的第8位数字置“0”,则表示发送该数据包的路由器为slave;如果置“1”,则表示为master。
截图是一个由14.1.1.5接口发送给14.1.1.1接口的一个DBD数据包,通过观察我们发现该数据包中的DB Desdriptiion字段被置为“1”。
R1
*Mar 1 00:52:13.807: OSPF: Rcv DBD from 5.5.5.5 on FastEthernet0/0 seq 0x16D8 opt 0x52 flag 0x7 len 32 mtu 1500 state EXSTART
*Mar 1 00:52:13.811: OSPF: NBR Negotiation Done. We are the SLAVE
这是在R1上重新启用OSPF进程时所产生的日志信息,通过观察可以发现,R1将自身认为slave,那么R5必然是master。从而验证:1——master;0——slave。
九、Exchange
主从关系确立之后,就开始交换数据库描述信息。这个信息的交换也是由DBD数据包来完成,但这个DBD的始发路由器必然是master(主)。
截图中,首先14.1.1.5接口向14.1.1.1接口发送序列号为5552的DBD数据包,14.1.1.1接口路由器接收到该包之后便向接口14.1.1.5发送一个序列号相同的DBD数据包。而在之前14.1.1.1接口向14.1.1.5接口发送过一个序列号为2988的DBD数据包,被忽略。从该实验现象可以看出,确立主从关系之后,DBD数据包必然是由master(主)路由器先发起,slave(从)路由器响应。所以,DBD数据包的结束也是由slave(从)执行。
十、Loading
DBD数据包对于简单的LSA有了描述之后,路由器通过比对之后,如果有发现本地拓扑表中的链路并不完全,就会发起链路状态请求,向它的邻居路由器发送请求包(LSR)。而邻居路由器则会发送LSU来应答LSR,当路由器收到了LSU之后,就会发送LSAck来回复确认。至此完成一次可靠地请求回应。
十一、Full
所有的链路状态都已经请求发送完毕,区域内的所有路由器中的拓扑表都收敛。
R1:
Send hello to 224.0.0.5 area 0 on FastEthernet0/0 from 14.1.1.1
OSPF: Interface Loopback0 going Up
Rcv hello from 2.2.2.2 area 0 from FastEthernet0/0 14.1.1.2
2 Way Communication to 2.2.2.2 on FastEthernet0/0, state 2WAY
Send immediate hello to nbr 2.2.2.2, src address 14.1.1.2, on FastEthernet0/0
Send hello to 14.1.1.2 area 0 on FastEthernet0/0 from 14.1.1.1
End of hello processing
Backup seen Event before WAIT timer on FastEthernet0/0
DR/BDR election on FastEthernet0/0
Elect BDR 5.5.5.5
Elect DR 2.2.2.2
DR: 2.2.2.2 (Id) BDR: 5.5.5.5 (Id)
Send DBD to 2.2.2.2 on FastEthernet0/0 seq 0x14FA opt 0x52 flag 0x7 len 32
Rcv DBD from 2.2.2.2 on FastEthernet0/0 seq 0xAB8 opt 0x52 flag 0x7 len 32 mtu 1500 state EXSTART
NBR Negotiation Done. We are the SLAVE
Send DBD to 2.2.2.2 on FastEthernet0/0 seq 0xAB8 opt 0x52 flag 0x0 len 32
Send DBD to 5.5.5.5 on FastEthernet0/0 seq 0x16D8 opt 0x52 flag 0x0 len 32
Rcv DBD from 2.2.2.2 on FastEthernet0/0 seq 0xAB9 opt 0x52 flag 0x3 len 132 mtu 1500 state EXCHANGE
OSPF: Send DBD to 2.2.2.2 on FastEthernet0/0 seq 0xAB9 opt 0x52 flag 0x0 len 32
Rcv DBD from 2.2.2.2 on FastEthernet0/0 seq 0xABA opt 0x52 flag 0x1 len 32 mtu 1500 state EXCHANGE
OSPF: Exchange Done with 2.2.2.2 on FastEthernet0/0
OSPF: Send LS REQ to 2.2.2.2 length 60 LSA count 5
OSPF: Send DBD to 2.2.2.2 on FastEthernet0/0 seq 0xABA opt 0x52 flag 0x0 len 32
OSPF: Synchronized with 2.2.2.2 on FastEthernet0/0, state FULL
%OSPF-5-ADJCHG: Process 110, Nbr 2.2.2.2 on FastEthernet0/0 from LOADING to FULL, Loading Done
蚯蚓在R1上重启了OSPF进程,BDR(2.2.2.2)立刻成为了DR,而Rid为5.5.5.5的路由器R5成为了BDR。同时蚯蚓在R1上用命令“show ip ospf events”,观察了OSPF建立邻接关的详细系过程。红色字体中标注的都是应该注意的方面,有兴趣的看官可以分析日志信息来从中获取一些有用的东西。
至此,实验结束。
将Linux系统配置成DNS主服务器
一、实验目的
配置网络,并进行检测,确保能够在本地网络中联网通信(给出网络接口配置文件和测试结果)。假设你的Linux系统作为DNS服务器使用,请根据以下要求配置成DNS主服务器。
a)所管理的域名为lmn.com域,其网络为192.168.1.0;
b)在正向解析域文件lmn.com.zone中建立以下资源记录
IN dns dns.lmn.com.
dns.lmn.com. IN A 192.168.1.45
www.lmn.com. IN A 192.168.1.186
ftp.lmn.com. IN A 192.168.1.9
bbs.lmn.com IN CNAME www
c)建立反向解析域文件1.168.192.db,实现上述地址的反向
解析
d)使用nslookup或dig进行测试,并给出测试结果。
二、实验环境
Linux操作系统下
三、实验分析
首先要安装bind,使用命令rpm –q|grep bind检查是否安装bind。然后配置文件:/etc/named.conf,建立反向解析域文件1.168.192.db:检测/etc/named.conf文件的配置并启动DNS服务器。
四、实验内容及操作步骤
<1>检验是否安装Bind
<2>配置abc.com域如下:
zone "lmn.com" IN{
type master;
file "lmn.com.zone.db";
allow-update{none;};
};
建立反向解析域文件如下:
zone "1.168.192.in-addr.arpa"{
type master;
file "1.168.192.db";
allow-update{none;};
};
<3>检测/etc/named.conf文件的配置并启动DNS服务器
<4>测试:
五、问题总结
由于当时网络那块学的不是特别熟练,所以在做的时候总是出现一些各种各样的问题。刚开始的配置文件经常出错,大体上的思想明明是没有问题的,但还是在后面的运行中出现了找不到文件之类的问题,在同事的帮助下总算是找到了问题的所在。
实习感想
从学校走向社会,首要面临的问题便是角色转换的问题。从一个学生转化为一个单位人,在思想的层面上,必须认识到二者的社会角色之间存在着较大的差异。学生时代只是单纯的学习知识,而社会实践则意味着继续学习,并将知识应用于实践,学生时代可以自己选择交往的对象,而社会人则更多地被他人所选择。诸此种种的差异。不胜枚举。但仅仅在思想的层面上认识到这一点还是不够的,而是必须在实际的工作和生活中潜心体会,并自觉的进行这种角色的转换。
三个月的实习期很快过去了,是开端也是结束。展现在自己面前的是一片任自己驰骋的沃土,也分明感受到了沉甸甸的责任。在今后的工作和生活中,我将继续学习,深入实践,不断提升自我,努力创造业绩,继续为中心创造更多的价值。
最后感谢学校、单位领导以及同事对我的支持和帮助,我会继续努力的。