局域网

请看ecrown博客:http://blog.csdn.net/ecrown/archive/2005/01/12/249740.aspx

基础

现在交换机路由器的边界越来越模糊。很多路由器都带有交换机的功能。接下来的实验将会通过cisco路由器来代替GSN3中傻瓜式交换机

相关概念

单播

Unicast,一对一发送信息

组播

Groupcast,一对多(同一个组成员)发送信息,

广播

..\tcp卷一实验设计\广播探析.pdf

单工

单方向通信(如广播台)

半双工

能互相通信,但不能同时通信(如对讲机)

全双工

能同时互相通信(如打电话)

冲突域

    冲突域环境下,不管设备发送任意类型的数据,都会造成数据冲突

    中继器和集线器连接的网络,都属于同一个冲突域。

广播域

    广播域环境下,只有出现广播数据,其他设备才都会收到此数据。

    交换机相连的网络处于同一广播域,但是,不同接口处在不同冲突域

    路由器相连的网络处在不同的广播域,不同接口在不同广播域。

CSMA/CDCarrier  Sense Multiple Access with Collision Detection

载波侦听多路访问/冲突检测(半双工环境下,缓冲冲突)

原理:

    网卡开启侦听功能,当检测到数据时,则不发送

    当检测不到数据时,可对外发送数据,并发送JAM信号,防止其他人发送

 

设备

网线->中继器->集线器->网桥->交换机->路由器

路由器可能会被淘汰,但是交换机不会的。还有,现在市场上甚至还出现了七层防火墙的产品。

设备配置

GNS3中选择cisco3600交换机,并为其配置NM-16ESW接口

wKiom1gZmJvg5KzmAAAtIfVJVRk313.png

为了看顺眼一些,可以修改图标、物件名称

wKiom1gZmJyAGkDLAAAMywIDxwk594.png

别误会~~PC1PC2也是通过c3600改图标过来的~~

wKioL1gZmJzQUdtgAAA4Jztdpzw931.png

基本部署

wKioL1gZmJzgTLWfAABGK16Mbb0619.png

一开始的目标都是两台机器互相联通

wKioL1gZmOzDdIk7AABvtOerMxs764.png

wKiom1gZmO3TEAQfAAEFwqsG6AM415.png

注意到这个时候是不需要在交换机上面写上路由信息的,但是他们之间就能联通。我们在交换机上更多的是查看mac

wKioL1gZmO7hzwvkAABTp__ZakM574.png

为什么会生成这张表?这个交换机是0配置的呀,这个还有没有王法?后面会解释~~

标准

附上来着TCP/IP卷一的格式封装标准

wKiom1gZmRnhJ98oAAJCjZgm2Ak579.png-wh_50

链路标准

IEEE 802.3:标准以太网 10M

IEEE 802.3u:快速以太网 100M

IEEE 802.3z:吉比特以太网 1000M

物理标准

10baseT

100baseT

100baseTX

1000baseFX

帧标准

每一层对数据的叫法都不一样

应用层

Data数据

传输层

Segment数据段

网络层

Packet数据帧

链路层

Frame数据帧

物理层

Bit比特

交换机原理

首先明确各种表

MAC

MAC-Interface,交换机转发使用的表项

基于源MAC学习(自动学习)

路由表

Route-Interface,路由器转发使用的表项

运行路由协议学到的

ARP

IP-MAC,实现数据封装

根据ARP问答生成

基础功能

帧转发(转发数据)

地址学习(建立MAC表)
环路防止(属于STP后面详细介绍)

转发原则

前面设备部署的简单例子,之所以会出现MAC表,就是源于这个

  • 基于源MAC地址学习,基于目标MAC地址转发

  • 同一接口可以学习到多个MAC地址(一个端口一个MAC信息)

  • 同一个MAC地址从多个接口学习到,并且选择后学习到的接口

  • 收到未知/广播/组播帧, 向本VLAN的其他所有接口转发(即将不在表中的信息泛洪出去)

  • 一旦地址表满,就会从本vlan其他接口泛洪新收到的帧,直到现存地址条目老化为止

转发方式

虽然说有CRC检验会相对的降低交换效率,但是现在的CPU的计算能力越来越强大,些许二进制计算倒也问题不大的。

直通转发cut-through

定义:交换机检测到目标地址(前14字节)后即转发帧

特征:延迟小、无错误校验

存储转发store and forward

定义:完整地收到帧并检查无错后才转发

特征:延迟大、有CRC校验

片断转发fragment free

定义:交换机检测到帧的前64字节后即转发

特征:延迟小、有最小帧大小校验

VLAN技术

概念

Virtual LAN,虚拟局域网,可以用于实现广播域隔离并且实现局域网内部安全互访。

原理

(1)      范围

04095

保留,仅限系统使用,用户不能查看和使用这些VLAN

1

正常,cisco默认VLAN,用户能够使用该VLAN,但无法删除

2~1001

正常,用于以太网的VLAN,用户可以随意创建、使用和删除这些VLAN

1002~1005

正常,用于FDDI和令牌环的CISCO默认VLAN,用户不能删除VLAN1002~1005

1006~1024

保留,尽显系统使用,用户不能查看和使用这些VLAN

1025~4094

拓展VLAN,仅用于以太网VLAN

这些分区对于现今的云技术、云服务来说太小了,因此在这个基础上衍生出Vxlan的概念,这个之后我学通了,再讨论

(2)      分类

数据VLAN

最常规的VLAN,连接主机

管理VLAN

用于管理员对交换机进行管理

语音VLAN

用于连接语音电话

私有VLAN

用于实现进一步的安全隔离

本征VLAN

自然VLAN,用于实现标签优化

部署

这次的部署目的是ping不通(划分vlan之后当然ping不通了啊)。在前面的基础上继续完善即可。

wKiom1gZmZ_yMc8rAAB_Ys3sId0539.png-wh_50

wKioL1gZmZ-zRmY5AABY2mupsLQ968.png-wh_50

wKiom1gZmaDCGEj3AAEEeUhO95I740.png-wh_50

实验结果

wKioL1gZmaDDKKlKAAAg6FTipUU586.png-wh_50

观察交换机本地VLAN信息

wKiom1gZmaGz99lZAACMuIQ5CgM019.png-wh_50

Trunk技术

背景

Trunk之前,每个VLAN对应一个网线/链路/接口,这样比较消耗交换机的接口资源。NVLAN N根网线

wKiom1gZmlPj4G5DAADwLHXg90k071.png-wh_50

这次的用的机子数目有些多~~交换机路、PC都是同样通过C3600改变图标过来的,配置参考前面的内容。

初始化配置

wKioL1gZmnWSFfdaAACM1gaac9A114.png

wKiom1gZmnbjaAhUAAB-U6kwh3Q779.png

注意ping不通就对了,因为在这之前我们已经划分了VLAN,讲道理必须ping不通

wKioL1gZmnaATqXaAACo_e3re6s305.png

此次实验目的:相同VLAN要互相ping

wKiom1gZmnfC9EO3AAAtclqJiLY812.png

wKioL1gZmnfBhxZeAABGclBMOwI432.png

wKiom1gZmniDM6y2AAB3fu5X9XA600.png

wKiom1gZmniwj9agAABDZHhwq7c352.png

(多扯一些别的~~万一你ping不通,那么需要先查找一下交换机的表中有没有路径信息

wKioL1gZmniiJTY9AABZ6pbZWKY169.png

CDP协议是思科私有的,全称是cisco discoverprocotal思科发现协议是链路层的协议,如果这里没有,那么重新实验)

这个实验其实就是一个反例,证明如果不用trunk的时候,部署的过程多么繁杂,写配置很麻烦,而且非常浪费资源。)

功能

Trunk用于承载不同vlan的流量,通过打标签实现这个功能。打标签的遵循802.1Q标准

实验继续

在原来实验的基础上,我们把其中一条链路删除

wKioL1gZm1uj8b24AAD-OuE9GuE201.png-wh_50

先把相应的接口关闭,虽然在虚拟环境下没啥事,但在工程环境下,还是谨慎一些的好~

wKiom1gZm3yRee2vAAAc2IkSgik337.png

wKioL1gZm32zNOPQAAAbPuNqsBc107.png

之后将f0/3的配置删除,即重新部署,这里会介绍两种不同的删配置的方法

    这种方法是很有针对性的删除,不要那些属性就删除那些属性

wKiom1gZm32Ai1d3AAAeDtH8R9o448.png

②   如果遇到很复杂的配置,倒不如全删了重新写,则可以用这种方式

wKioL1gZm33AbqmbAAATFEkUe28004.png

之后设置trunk属性

wKiom1gZm37QPoIfAABQe56Hf0M714.png

wKiom1gZm36TYjNqAABc-s0RXHI821.png

检查是否配置成功

wKiom1gZm8aB_IhKAAB7dekafgY658.png-wh_50

之后在f0/3那条链路上抓包分析

wKioL1gZm8bwKGC9AAC3FPo-v4o440.png-wh_50

在链路层和网络层之间出现了一行特殊的标签。为啥这个是在中间呢?正是因为使用802.1Q的行业标准(嵌入式)

接着重点来了,面试高频出现的场景来了!!!

Trunk优化一:NATIVE VLAN

VLAN不打标签,节省资源,一个交换机只能有一个NATIVE VLAN,默认VLAN1

本征VLAN

wKioL1gZm8ejXdymAADccTqXpIQ075.png-wh_50

我们体会一下native vlan

wKioL1gZnAuTPS_hAAH5Wdlv_f0453.png

wKiom1gZnAzCI-ZFAABm3Rn2zKE284.png

wKioL1gZnAzgJSnSAAATed4sZJM515.png

设置完成后检查连通性,同时抓包

wKiom1gZnA3yxbMeAACURjLBsAU478.png

wKioL1gZnA3yUPleAAAYwgwS8ko473.png

要多ping几次因为机子的响应时间有些长

少了一个标签

wKioL1gZnJSClrFAAAC0jqTVc8I337.png-wh_50

这样做的意义是一半的数据包长度变短

Trunk优化二: ALLOW VLAN

默认TRUNK链路将所有VLAN流量都进行转发,这样的话,广播或垃圾流量也会经过TRUNK

使得网络带宽收到影响;通过ALLOW VLAN能够限制特定经过的VLAN流量

wKiom1gZnJXx6KvyAAE1t6HZivo269.png-wh_50

wKioL1gZnLjjgZabAAAUQKQQZog025.png

此时vlan20绝对是ping不通的,不信?你自己试试就知道了,此时vlan20的信息已经被过滤了

这个功能的意义是企业内部核心部门信息过滤,核心部门的信息不会流出

如何做到跨vlan通信?

两个主机分别连接着SW1SW2,交换机将主机各种划分在不同的VLAN,交换机是二层交换机,PCIP处于同网段,尝试用不同方法实现PC互通。

wKiom1gZnUiQQ1QPAAEV6w_DCEs135.png-wh_50

把原来native vlanallowed vlan的信息都取消

wKiom1gZnVuioor7AAC_itloCIQ965.png

wKioL1gZnVujxvFcAAA8X9dvXBs079.png

为了避免干扰,我们把PC2PC3暂停

wKioL1gZnXaC-_qCAADosglMEAg356.png-wh_50

方法一:

这里需要关闭STPCDP,后面会解释

wKiom1gZnYmTEaTJAAAcg-LhQHI413.png

wKioL1gZnYnD5qnyAAAc9dUcHEk077.png

设置SW1native vlanvlan10SW2native vlanvlan20,此时一定会报错。路由器认为这个端口坏了,是软件层面上坏了,虽然物理层没有坏

wKiom1gZnaKgRaFHAABE5Bm5uFY324.png

wKioL1gZnaOB47SuAAFP5McDYfk447.png

wKiom1gZnaPDBglAAAAfiFyzy0Q807.png

方法二

wKioL1gZnaOBgWyyAABNIEOa4i4857.png

wKioL1gZnaSCdiNJAAAouahnvaw188.png

其实这两个方法的本质原理都是不打标签。

wKiom1gZnbyxu8bvAABUAjtujnM592.png-wh_50