0:上一节内容的补充VTP
一:概述
概念:什么是VTP
VTP(vlan trunk protocol)即vlan中继协议。vtp通过网络保证vlan配置的统一性,vtp在系统管理中增加,删除,跳转vlan,自动的将信息向网络中的其他交换机进行广播。
此外,vtp减少了那些可能导致安全问题的配置,便于管理,只要在vtp server做相应的设置,vtp client会自动学习vtp server的vlan 信息。
在cisco的交换机上,为了减少管理员对于vlan表的配置,可以开启一个vtp的功能,步骤如下:
1:服务端交换机,可以增删改本地vlan,并将其传递给client
conf t
vtp domain 名字 服务端域名
vtp password 密码 服务端密码
vtp mode server 服务端模式
exit
2:客户端交换机,同步来自client transparent模式交换机的vlan表,不可以对其增删改
conf t
vtp domain 名字 服务端域名
vtp password 密码 服务端密码
vtp mode client 服务端模式
exit
3:transparent模式交换机:也叫透明端模式的交换机,可以帮助传送vlan表信息,但自身不同步,有其自己的本地vlan表,并可对其进行增删改。
若没有开启vtp,则不接受vlan表,也不帮助传送给其他vtp模式下的交换机。
在服务端交换机和客户端交换机之间,启用了trunk的情况下,且域名密码相同,那么就可以同步vlan表了。
三种模式的区别:
vtp中的server并不是指自己是vtp服务器,而是server模式具有控制vlan的权限,可以随意添加,删除,修改vlan信息
vtp的client模式,这个client也不是指自己是vtp的客户端
不可以添加,修改,删除vlan(与server模式的唯一区别)
可以主动将自己的vlan信息发送给其他设备
也可以同步其他设备发送过来的vlan信息,也可以转发其他设备发的同步信息
vtp的transparent模式,
可以添加修改本地的vlan
不会主动将自己的vlan信息发送给其他设备,也不会同步其他设备发送过来的vlan信息,但是可以转发其他设备发的同步信息,
透明模式下的交换机在vtp网络中是单独存在的,因为透明模式可以转发其他设备的信息,所以甚至可以当透明模式的那台交换机不存在
二:实验内容:
如图配置三台交换机
三台交换机类似设置
并把每条连接线都配置成trunk线,然后在server的交换机上,创建vlan,那么会自动经过中间的transparent交换机达到左边的client交换机上,自动完成vlan配置
一:单臂路由
学习单臂路由之前:首先明确:
1 vlan控制广播域
2 不同的vlan间无法通信
3 一个vlan = 一个网段。如:vlan 10 — IT — 10.1.1.0/24
4 不同vlan之间是靠路由来通信的
没有单臂路由之前:若要实现不同VLAN段之间的通信,则需要在经过的路由器上连接不同的线,代表着不同的VLAN网段,这样就会导致路由器需要很多个接口,显然不现实。如下图,两个网段就需要两根线。
什么是单臂路由:
单臂路由(router-on-a-stick)是指在路由器的一个接口上通过配置子接口(或“逻辑接口”,并不存在真正物理接口)的方式,实现原来相互隔离的不同VLAN(虚拟局域网)之间的互联互通。
那怎么理解呢?
图中的路由器的f0/0端口到交换机的f0/3接口的连线,可以称之为“单臂”。
那么单臂路由怎么配置呢?
路由器的f0/0是真实的物理端口,可以称之为f0/0.1和f0/0.2的“父端口”。有了子端口之后,父端口不能配置IP。
命令如下:
conf t
int f0/0.1
encapsulation dot1Q 10 # 申明遵守802.1Q标签标准,然后这个子端口属于vlan 10网段
ip address 10.1.1.254 255.255.255.0
no shut
int f0/0.2
encapsulation dot1Q 20
ip address 20.1.1.254 255.255.255.0
no shut
int f0/0
no shut # 父端口要手动开启
分析整个单臂路由的过程:
上图的过程分析:
假设交换机的MAC地址表和路由器的路由表都已经学习完毕了
那么路由表就是:
C 10.1.1.0/24 F0/0.1
C 20.1.1.0/24 F0/0.2
现在要想PC1可以ping通PC2,
假设电脑在封装三层的时候,先把IP包头封装好,然后再封装2层帧
所以就是这样的: ? AA 10.1 20.1 目标MAC还不知道,要想获得目标MAC,那么PC1就会判断目标IP20.1,发现不是同一个网段,那么就会去找网关。
PC1发送一个ARP广播,问谁是网关,因为PC1是属于vlan 10,所以PC2是收不到的,从F0/3出去,在出去的时候,这个帧就会被加入一个标签(因为F0/3是TRUNK端口),代表是vlan 10网段的。也就是这样:?AA 10 10.1 20.1
同样的也不会往f0/0.2走,因为路由器也预先设置了:int f0/0.2 encapsulation dot1Q 20,所以只会往f0/0.1走。
路由器收到ARP的广播之后,会单播一个应答给PC1,告诉他,我(网关)的MAC地址是CC。到此为止,帧结构就是:CC AA 10.1 20.1
然后这个PC1把封装好的帧就给到了交换机
从交换机F0/1进入,进入交换机内部,交换机识别到目标MAC是CC,又因为交换机的MAC地址表 CC 对应的是 F0/3,所以从F0/3出去。
F0/3是个TRUNK端口,所以帧结构由 CC AA 10.1 20.1 变成 CC AA 10 10.1 20.1,插入了vlan 10标签
然后进入到f0/0.1,路由器收到帧之后第一件事就是检查目标MAC地址是不是自己,发现是CC,是自己,然后就会把帧头给去掉,就只剩下了10.1 20.1,然后把IP包送往路由器内部,
识别到目标IP是20网段的,进而匹配路由表,20网段对应的是f0/0.2,所以10.1 20.1这个在f0/0.2准备转发出来,又因为路由器设置了encapsulation dot1Q 20,所以会在源IP前面添加一个vlan 20标签,
然后路由器会把CC当成源MAC地址给加上去,所以就是:? CC 20 10.1 20.1,目标MAC还不知道,所以路由器就发送ARP广播(广播中加入了vlan 20标签),问IP为20.1的MAC地址是多少?
广播路过F0/3的时候,因为这是trunk端口,只会向vlan 20网段转发,然后PC2收到广播之后,反馈一个单播给路由器,告诉他自己的MAC地址是BB。此时路由器把帧填充完整,BB CC 20 10.1 20.1
这个帧路过F0/3的时候,会去掉vlan 20标签,变成 BB CC 10.1 20.1,进入交换机内部,然后依据MAC地址表,发现BB对应的是F0/2,所以从F0/2出去,送达到PC2
至此,完成了整个不同vlan的通信。
小实验:
单臂路由的缺点:
二:DHCP中继
2.1:概念、命令
DHCP是为了自动分配IP地址给各个PC端
这是在路由器上设置DHCP
conf t
ip dhcp pool xx
network 10.1.1.0 255.255.255.0
default-router 10.1.1.254
dns-server 40.1.1.1
lease 1 12 0 租期续约时间,单位为 天,时,分
ip dhcp excluded-address 10.1.1.1 10.1.1.50 排除的ip地址区间,也可设置为单个,
exit
2.2:小实验
这里个人有个疑问点??
当把图中的交换机(从左到右的顺序)进行vtp设置为:client,transparent,server会发现vlan可以同步好,但是只有10网段和30网段的能够被dhcp自动分配ip地址,且只有这两个网段能互通
后来,就只在最左边的交换机进行vtp配置,其他两台不动,然后就可以了
vtp domain xxx
传几张实验图:
三:ICMP协议
ICMP:
ICMP(internet control message protocol) Internet控制报文协议。它用于在IP主机,路由器之间传递控制消息
控制消息是指:网络通不通,主机是否可达,路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要作用。
ICMP使用IP的基本支持,ICMP实际上时IP的一个组成部分,必须由每个IP模块实现。
1 端口号:没有端口号,就好像是问tcp/ip协议的端口号一样,并不是指应用层的一个具体端口协议。
2 ICMP协议是干什么的?
网络探测与回馈机制
1 网络探测
2 路由跟踪
windows:tracert IP地址
linux或路由:traceroute IP地址
3 错误反馈
3 ICMP的封装格式
ICMP头 + 数据(一般没有意义,做填充作用)
ICMP头:ICMP类型、代码
ICMP类型:通过抓包软件可以抓到ICMP类型值
8:ping请求
0:ping应答
3:目标主机不可达
11:TTL超时,路由环路
代码:比如说类型是3,代码是1,表示的是目标主机不可达的类型中的具体的一种