使用GNS3模拟三层交换环境进行snmp4j实验

前提

1.下载安装GNS3
2.下载cisco ios镜像,这里使用unzip-c3640-js-mz.124-10.bin(模拟交换机似乎都使用这个的)。

配置GNS3

1.在编辑菜单下的首选项中,可以将语言设置为中文。

2.在编辑菜单下的IOS与Hypervisors中添加IOS,如图所示将unzip-c3640-js-mz.124-10.bin添加进去,其他IOS也可以同样的方法添加进去(注意一个底板有多个IOS时,哪一个设置为默认IOS)。

ios

3.GNS3并不能模拟交换机,我们使用3640添加交换模块进行模拟,二层、三层都用可以进行模拟。为了在拓扑图中区分三层、二层交换,可以在编辑菜单下的标示符管理器中,添加自定义节点。

以下三个图片添加了交换机、三层交换机(都使用3600类型,即配置的3640IOS)、终端节点:

sw
msw
computer

拓扑图连接

这个拓扑是三层交换实现不同VLAN之间的通信的常见实验。R16为三层交换机,R14、R15为二层交换机,底下的三个终端分属两个VLAN中。

最终连接图:

t2

拓扑建立步骤:

1.在左侧的deveices(如下图)选择之前添加的节点放入工作区

t1

2.为3个交换机分别添加模块,都添加NM-16ESW:
(右键交换机 配置)

t3

3.点选左侧的网线图标将交换机连接起来。注意连接终端时可以选择物理网卡、虚拟网卡(请看文章 如何在windows环境下添加虚拟网卡)、NGS3自带的VPCS(选择nio_udp开头的设备),如果不进行snmp4j实验,分别选择不同VPCS即可。我这边三台终端分别连接了一块系统虚拟的网卡(C9)、一块桥接VMware的网卡(C12)、一台VPCS(C13),如下图:

c9
c12
c13

配置交换机

R16三层交换机配置:

#vlan10
R16#vlan database
R16(vlan)#vlan 10
VLAN 10 added:
    Name: VLAN0010
R16(vlan)#exit
APPLY completed.
Exiting....
R16#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
R16(config)#int vlan 10
R16(config-if)#ip address 192.168.1.1 255.255.255.0
R16(config-if)#no sh
R16(config-if)#exit

#vlan20
R16#vlan database
R16(vlan)#vlan 20
VLAN 10 added:
    Name: VLAN0010
R16(vlan)#exit
APPLY completed.
Exiting....
R16#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
R16(config)#int vlan 20
R16(config-if)#ip address 192.168.2.1 255.255.255.0
R16(config-if)#no sh
R16(config-if)#exit

R16(config)#int range f0/0 -1
R16(config-if-range)#switchport trunk encapsulation dot1q
R16(config-if-range)#switchport mode trunk
R16(config-if-range)#
*Mar  1 00:14:12.331: %DTP-5-TRUNKPORTON: Port Fa0/0-1 has become dot1q trunk
*Mar  1 00:14:12.835: %LINEPROTO-5-UPDOWN: Line protocol on Interface Vlan10, changed state to up
*Mar  1 00:14:12.839: %LINEPROTO-5-UPDOWN: Line protocol on Interface Vlan20, changed state to up
R16(config-if-range)#no sh
R16(config-if-range)#exit
R16(config)#snmp-server community public ro  #设置只读字符串,public为团体名称,ro为只读

R14二层交换机配置:


R14#vlan database
R14(vlan)#vlan 10
VLAN 10 added:
    Name: VLAN0010
R14(vlan)#exit
APPLY completed.
Exiting....
R14#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
#二层交换机关闭routing
R14(config)#no ip routing
R14(config)#int f0/1
R14(config-if)#switchport access vlan 10
R14(config-if)#no sh
R14(config-if)#int f0/0
R14(config-if)#switchport trunk encapsulation dot1q
R14(config-if)#switchport mode trunk
R14(config-if)#
*Mar  1 00:17:19.939: %DTP-5-TRUNKPORTON: Port Fa0/0 has become dot1q trunk
R14(config-if)#no sh

R15二层交换机配置与R14基本一致,区别为R15建立的vlan为20:R15(vlan)#vlan 20

VPCS的配置与测试

打开VPCS

vpcs

如果要设置第一台vpc,在窗口中打入“1”即可(我这里的1是C13这台机器,位于VLAN20中),这里配置好ip网关即可:

vpcs1

然后ping 192.168.1.1和192.168.2.1,通畅即表示整个配置已经成功。

snmp4j实验

[CCNA学习1]网络分层

关于这一系列文章

其实CCNA在大学时期就学习过,不过之后没有去考认证也没有实际的应用,就慢慢陌生了。最近工作中有需要,不得不再回头补充补充~
下面的文章基本是按照《CCNA学习指南》(当年的教科书:))的章节来进行的,希望自己每两天能写一篇。

什么是OSI模型

“开放系统互联(Open System Interconnection,OSI)描述信息是如何从一台网络设备传递到另一台网络设备的”,非常的笼统。其实它最直接的作用是一个技术指导,把网络模块化,帮助厂商、网管理解各个设备的处理数据、传输数据的方式。

OSI模型分层

OSI模型分为7层:应用层、表示层、会话层、传输层、网络层、数据链路层、物理层。

1.第七层:应用层

应用层指的是能够感知网络的应用程序,很明显应用程序本身并不是OSI模型所谓的应用层,应用层是为应用程序提供了知道网络的存在和利用网络的方式。简单的说,就是它提供了应用程序利用网络所需的协议和服务。
常见的应用层实例:telnet、FTP、HTTP、POP3、SMTP。

2.第六层:表示层

表示层负责定义信息是如何通过用户正在使用的界面传输并呈现给用户的。这一层定义了文本、图形、视频等各种格式如何传输到应用层并有应用层使用。简单的说,表示层确定数据传输并呈现给用户的方式。表示层的协议标准实例包括:ASCII、BMP、JPG、MPEG等。

3.第五层:会话层

会话层负责连接的建立和终止,也负责区分多个网络连接。为了建立或终止链接,会话层会与传输层进行通信。简单的说,会话层负责网络链接的建立、维持和终止。其实例包括RPC和NFS.

4.第四层:传输层

传输层负责连接的建立、维持和终止的实际技术细节,同时提供可靠和不可靠的数据传输。可靠的连接(包含TCP/IP的TCP)含有错误侦测和差错校验,有错会重发。而不可靠的连接(包含TCP/IP的UDP)反之,仅仅是尽量送达.
传输层主要的功能:连接管理、可靠和不可靠的数据传输、流控制、多路分配和分段。
1.可靠的连接:TCP提供了可靠的连接,包含使用序号和确认(ACK),接受者可以以此要求重发或者对无须的数据排序;并且在连接建立时会有握手过程,TCP会有3次握手。
2.不可靠的连接:有些应用建立可靠的连接并没有意义,比如DNS服务,DNS返回的数据是极其短,可靠连接显得多余,没有应答时,应用完全可以向备用DNS服务器在此发起请求。所以也称这一类为”无连接“的服务。
3.数据段:即将大数据分成一小段一小段进行分块传输。
4.连接的多路复用:因为一台机器上可以有多个连接,要唯一区分这些连接,传输层给每个连接分配唯一号码,称为端口(port)或者套接字(socket)。每个连接都有一个源端口和目的端口。
5.流控制:可选的流控制可以确保网络设备不会向接收设备发送过多信息,导致缓冲区溢出造成的丢弃。有两种实现:就绪\未就绪信号,窗口操作。前者:接收者超出能力时,向发送者发送未就绪信号,发送停止,当发送者收到就绪信号时才会恢复数据发送,这里会存在两个问题,其一未就绪信号发出时,很多发来的信息会被丢弃,其二这两个信号的参与会造成信息延迟。后者:窗口操作比流控制复杂,它定义了窗口的大小,窗口大小规定在发送在必须等待接收站的确认(ACK)之前可以发送的数据量。一旦收到ACK。发送站就可以发出先一个窗口大小的数据。

5.第三层:网络层

这一层的功能相当多,这一层为使用逻辑地址或第三层地址的网络提供逻辑拓扑。这些地址用于网络设备的分组。网络层的3个功能:定义用于第三层的逻辑地址;基于逻辑地址的网络号寻找到达目的设备的路径;将不同的数据链路层设备连接到一起,如以太网、FDDI、串行、令牌环。
在拥有不同网络号的设备之间传输数据,需要使用路由器,路由器可以利用逻辑地址中的信息对如何到达目的地做出智能的决策。
深入:
1.第三层寻址:运行在这一层的协议有:TCP/IP、IPX、AppleTalk等,每种协议都有自己的定义逻辑寻址的方法,相对于第二层寻址,可以通过逻辑地址构建非常大规模的网络分层方案。
二层MAC地址只需要在同一物理网段上是唯一的,但是不需要在不同网段(即广播域)保持唯一,而三层寻址全网内每个设备都有一个唯一的网络号+主机号。
2.路由选择表:路由器是运行在网络层的设备,其利用逻辑网络号做出路由决策。其内部建立包含路径信息的路由选择表。路径信息包括网络号、路由器哪个接口到达这个网络号、路径的度量值(到达接收站的成本)、路由器如何得知这个网络号、以及该信息获得多长时间。度量值用于选择最佳路径(有很多标准如带宽、延迟、跳数等)。路由就收到一个分组时会根据报头的网络号查看路由表,匹配后从对应接口发出,否则会被丢弃。
3.路由器的优点:由于路由工作在比数据链路层高的层,使用逻辑寻址,所以与网桥、交换机等数据链路设备比,有如下优点:
第三层寻址允许建立更大规模网络。
路由器可以控制广播和组播。
路由器可以跟好的把不同的二层技术连接在一起。
路由器可以利用多个VLAN在同一接口上交换分组。
路由还有用户排队、访问控制(ACL)等高级功能。

6.第二层:数据链路层

网络层为设备提供逻辑地址,而数据链路层提供物理地址或硬件地址。这些地址称为媒体访问控制(MAC)地址。