一,交换机的基本原理

1.1 数据链路层的功能

(1)数据链路层负责网络中相邻节点之间可靠的数据通信,并进行有效的流量控制。

(2)数据链路层的作用包括数据链路的建立,维护与拆除,帧包装,帧传输,帧同步,帧的差错控制以及流量控制等。

(3)数据链路层在物理线路上提供可靠的数据传输,对网络层而言为一条无差错的线路。

1.2 以太网及其发展

以太网工作在数据链路层

1.3 MAC地址

(1)计算机联网必须的硬件是安装在计算机上的网卡

(2)通信中,用来标识主机身份的地址就是制作在网卡上的一个硬件地址。每块网卡在生产出来后,都有一个全球唯一的编号来标识自己,这个地址就是MAC地址,即网卡的物理地址

(3)MAC地址由48位二进制数组成,通常分成六段,用16进制表示,其中前24位是生产厂商向IEEE申请的厂商编号,后24位是网络接口卡序列号

(4)MAC地址的第8位为0时,表示该MAC地址为单播地址;为1时,表示该MAC地址为组播MAC地址。

(5)单播的发送方式为一对一,即一台主机发送的数据只发送给另一台主机。

(6)广播方式为一对多,即一台主机发送一个数据,在这个网段的所有主机都能收到

(7)组播方式介于单播和广播之间,也是一对多,但接收者不是网段上的全体成员,而是一个特定的组的成员。

1.4 以太网帧格式

以太网有多种帧格式,这里介绍最为常用的Ethernet 2的帧格式

类型 用途
目的地址(DA) 标识了帧的目的站点的MAC地址
源地址(SA) 标识了发送帧的站点的MAC地址
类型 用来标识上层协议的类型
数据 封装了通过以太网传输的高层协议信息
帧校验序列(FCS) 是从DA开始到数据域结束这部分的校验和。校验和的算法是32位的循环冗余校验法(CRC)

1.5 了解交换机

(1)交换机的品牌众多,像Cisco,华为,H3C,TP-Link,神州数码,锐捷等厂家都生产了很多不同型号的交换机

(2)常见的Cisco的交换产品系列主要包括Cisco 2960系列,Cisco 3560系列,Cisco 4500系列和Cisco 6500系列

a)Cisco 2960是一款入门级交换机,常用于连接客户端主机实现10/100/1000兆位以太网互连

b)Cisco 3560是一款企业级交换机,可用于直接连接客户端主机,也可用于互连入门级交换机

1.6 交换机的工作原理

(1)交换机并不会把收到的每个数据信息都以广播的方式发给客户端,是由于交换机可以根据MAC地址智能地转发数据帧

(2)交换机存储的MAC地址表将MAC地址和交换机的接口编号对应在一起,每当交换机收到客户端发送的数据帧时,它就会根据MAC地址表的信息判断如何转发

1.6.1 MAC地址的学习

假设A主机发送数据帧(源MAC地址为00-00-00-11-11-11,目标MAC地址为00-00-00-22-22-22)到交换机的1号接口,交换机首先查询MAC地址表中1号接口对应的源MAC地址条目。如果条目中没有数据帧的源MAC地址,交换机就会将这个帧的源地址和收到该数据帧的接口编号(1号口)对应起来,添加到MAC地址表中

1.6.2 广播未知数据帧

如果交换机没有在MAC地址表中找到数据帧目的地址所对应的条目,交换机就无法确定该从哪个接口将数据帧转发出去,于是它被迫选用广播的方式,即除了1号口之外的所有接口都将转发这个数据帧。于是,网络中的主机B和主机C都会收到。

1.6.3 接收方回应消息

主机B会响应这个广播,并回应一个数据帧(源MAC地址为00-00-00-22-22-22,目标MAC地址为00-00-00-11-11-11),交换机也会将此帧的源MAC地址和接口标号(2号口)对应起来,添加到MAC地址表中

1.6.4 交换机实现单播通信

现在,主机A和主机B之间的通信不用借助广播了,因为MAC地址表中已经有它们的条目。主机A发送数据帧的目标地址为00-00-00-22-22-22,交换机会发现这个地址对应的接口标号为2,于是交换机将只向2号口转发数据帧

1.6.5 老化时间

(1)由于交换机MAC地址条目是动态的,所以它不会永远存在MAC地址表中,而是在300s(老化时间)后会自动消失

(2)但是如果在此期间,交换机又收到对应该条目MAC地址的数据帧,老化时间将重新开计时(重置300s)

二,IP地址概述与应用

2.1 IP地址的定义及分类

2.1.1 IP地址的格式

互联网上连接的网络设备和计算机都有唯一的地址,以此作为该主机在Internet上的唯一标识,称其为IP地址。如同我们写一封信,要标明信件的发信人地址和收信人地址,邮件人员通过该地址来投递信件一样,在计算机网络中,每个被传输的数据包也要包括一个源IP地址和一个目的IP地址。

IP地址由32位二进制数组成,如某台连接在互联网上的计算机的IP地址如下所示:
11010010.01001001.10001100.00000110

很显然,这些数字对于人来说不太容易记忆且可读性比较差,因此,人们就将组成计算机IP地址的32位二进制数分成四段,每段八位,中间用圆点隔开,然后将每八位二进制数转换成十进制数(这种形式叫做点分十进制)。这样,上述计算机的IP地址就变成了210.73.140.6

2.1.2 IP地址的分类

  • [x] IP地址由两部分组成:网络部分和主机部分。

    • 网络部分:用于标识不同的网络
    • 主机部分:用于标识在一个网络中特定的主机
  • [x] IP地址的网络部分由IANA(Internet地址分配机构)统一分配,以保证IP地址的唯一性。为了便于管理,IANA将IP地址分为A,B,C,D,E五类,按照二进制表示方法根据IP地址前几个比特位,可以判断IP地址属于哪类。目前在Internet上使用最多的IP地址是A,B,C这三类,IANA根据机构或组织的具体需求为其分配A,B,C类网络地址。具体主机的IP地址由得到某一网络地址的机构或组织自行决定如何分配。

  • [x] 每个类别的IP地址的网络部分和主机部分都有相应的规则。

  • A类地址:

(1)在A类地址中,规定第1个八位组为网络部分,其余三个八位组为主机部分,即A类地址=网络部分+主机部分+主机部分+主机部分。

(2)IP地址的前几个比特位称为引导位,对A类地址来说,它的第1个八位组的第1个比特位是0.因此它的第1个八位组的范围就是00000000~01111111.换算成十进制就是0~127,其中127又是一个比较特殊的地址,我们用于本机测试的地址就是127.0.0.1。

(3)由于A类地址的第一个地址块(网络号为0)和最后一个地址块(网络号为127)保留使用,即全0表示本地网络,全1表示保留作诊断用。因此A类地址的有效网络范围为1~126.全世界只有126个A类网络,每个A类网络可以拥有的主机数就是后面24个比特位的组合,为2的24次方个。

特别提示

主机部分不能全为0或1,都是0代表的是网络ID,全为1代表的是本网络的广播地址,因此每个A类网络拥有的最大可用主机数为2的24次方-2.

A类地址适宜在大型网络中使用

  • B类地址

(1)在B类地址中,规定前两个八位组为网络部分,后两个八位组为主机部分,即B类地址=网络部分+主机部分+主机部分。

(2)B类地址中作为引导位的前两个比特位必须是10,因此它的网络部分的范围就是1000000.00000000~10111111.11111111。其中第1个八位组换算成十进制就是128~191.B类地址的有效网络范围是网络部分中后14个比特位的组合。为214个。每个B类地址拥有的最大主机数为216-2。B类地址适宜在中等规模的网络中使用。

  • C类地址

(1)在C类地址中,规定前三个八位组为网络部分。最后一个八位组为主机部分。即C类地址=网络部分+网络部分+网络部分+主机部分。

(2)C类地址中作为引导位的前三个比特位必须是110.因此它的网路部分的范围就是11000000.00000000.00000000~11011111.11111111.11111111。其中第1个八位组换算成十进制就是192~223。C类地址的有效网络范围是网络部分中后21个比特位的组合。为221个。每个C类地址拥有的最大主机数为28-2。C类地址适合在主机数量比较少的中小型网络中使用。

特别提示

D类地址是用于组播通信的地址,E类地址是用于科学研究的保留地址,它们都不能在互联网上作为节点地址使用。

2.1.3 Internet 上的合法IP地址

目前在Internet上只使用A,B,C这三类地址,而且为了满足企业用户在Internet上使用的需求,从A,B,C这三类地址中分别划出一部分地址供企业内部网络使用。这部分地址称为私有地址,私有地址是不能在Internet上使用的。私有地址包括以下三组。

  • [x] 10.0.0.0 ~ 10.255.255.255
  • [x] 172.16.0.0 ~ 172.31.255.255
  • [x] 192.168.0.0 ~ 192.1678.255.255

2.1.4 子网掩码

前面学习了IP地址及其分类,下面来看一个与IP地址密切相关的概念---子网掩码。在网络中,不同主机之间通信的情况可以分为如下两种。

  • [x] 同一个网段中两台主机之间相互通信
  • [x] 不同网段中两台主机之间相互通信

特别提示

具有相同网络地址的IP地址称为同一个网段的IP地址

如果是同一网段内两台主机通信,则主机将数据直接发送给另一台主机;如果不在同一网段内的两台主机通信,则主机将数据发送给网关,由网关再进行转发。

为了区分这两种情况,进行通信的计算机需要获取远程主机IP地址的网络部分以做出判断。

  • [x] 如果源主机的网络地址=目标主机的网络地址,则为相同网段主机之间的通信
  • [x] 如果源主机的网络地址!=目标主机的网络地址,则为不同网段主机之间的通信

因此对一台计算机来说,关键问题就是如何获取远程主机IP地址的网络地址信息,这就需要借助子网掩码(Netmask)。

下面介绍子网掩码的组成。与IP地址一样,子网掩码也是由32个二进制位组成。对应IP地址的网络部分用1表示,对应IP地址的主机部分用0表示。通常也是用四个点分开的十进制数表示。当为IP网络中的节点分配IP地址时,也要一并给出每个节点所使用的子网掩码。对A,B,C这三类地址来说,通常情况下都使用默认子网掩码。

  • [x] A类地址的默认子网掩码是255.0.0.0
  • [x] B类地址的默认子网掩码是255.255.0.0
  • [x] C类地址的默认子网掩码是255.255.255.0

有子网掩码后,只要把IP地址和子网掩码做逻辑“与”运算,所得的结果就是IP地址的网络地址。

例如:给出IP地址192.168.1.189 子网掩码255.255.255.0。将IP地址和子网掩码进行“与”运算就可以计算出IP地址的网络ID。运算过程如下所述。

计算出网络ID就可以判断不同的IP地址是否位于同一网段了。

使用点分十进制的形式表示掩码。书写比较麻烦。为了书写简便,经常使用位计数形式表示掩码。位计数形式是在地址后加“/”,"/"后面是网络部分的位数,即二进制掩码中“1”的个数。例如:IP地址192.168.1.100。掩码255.255.255.0。可以表示成192.168.1.100/24。

Linux运维入门(二):网络基础知识梳理02的更多相关文章

  1. Linux运维七:网络基础

    1:网线 2:交换机,路由器 交换机(Switch)意为“开关”是一种用于电(光)信号转发的网络设备.它可以为接入交换机的任意两个网络节点提供独享的电信号通路.最常见的交换机是以太网交换机.其他常见的 ...

  2. linux运维需要掌握的基础知识

    踏入linux运维工程师这一职业,其实有很多工具技能需要掌握,下面我来给大家一一介绍. 1.shell脚本和另一个脚本语言,shell是运维人员必须具备的,不懂这个连入职都不行,至少也要写出一些系统管 ...

  3. Linux运维学习笔记-网络技术知识体系总结

    传统网络知识体系 未来网络SND模型架构

  4. Linux运维之shell脚本基础知识

    1.bash中的算术运算 let运算符 [root@:vg_adn_tidbCkhsTest ~/tidb-bench/sysbench]#echo $i [root@:vg_adn_tidbCkhs ...

  5. Linux运维入门到高级全套常用要点

    Linux运维入门到高级全套常用要点 目 录 1. Linux 入门篇................................................................. ...

  6. Linux运维入门到高级全套系列PDF

    Linux运维入门到高级全套系列PDF(转) [日期:2016-08-01] 来源:Linux社区  作者:Linux [字体:大 中 小]     Linux 学习技巧 初学者可以自己安装虚拟机,然 ...

  7. Linux 运维入门到跑路书单推荐

    一.基础入门 <鸟哥的Linux私房菜基础学习篇>:最具知名度的Linux入门书<鸟哥的Linux私房菜基础学习篇>,全面而详细地介绍了Linux操作系统. https://b ...

  8. 教老婆学Linux运维(二)Linux常用命令指南【上】

    目录 教老婆学Linux(二)Linux常用命令指南[上] 一.概述 二.常用命令 教老婆学Linux(二)Linux常用命令指南[上] 作者:姚毛毛的博客 tips:文章太长,分两篇发出,本篇发前三 ...

  9. Linux运维基础入门(三):网络基础知识梳理03

    一,ARP协议 使用ARP协议可以查出擅自更改IP地址主机的MAC地址.在学习ARP协议前需要了解广播和广播域的相关概念. 1.1 广播与广播域 在超市找人时,如果不知道对方的位置就需要到服务台通过广 ...

随机推荐

  1. hibernate 多对多一个对象出现多条记录问题

    hibernate 多对多时,当须要依据它关联的对象查找的时候,会出现一个对象有多条记录的问题 用 left join fetch 抓取查询的时候还是会出现这问题,是由于主表在关联表中有多条记录 用 ...

  2. 笔记本设置wifi热点并抓包

    现在很多人喜欢蹭wifi热点,这里演示一下怎么利用笔记本设置wifi热点来钓鱼.本机是win10操作系统. 一.设置笔记wifi热点:右键点击右下角网络图标 -> 打开“网络和Internet设 ...

  3. C++内存管理原则

    内存可分配的地方有2个: 栈Stack和堆Heap. 内存管理的方式有3种: RAII, 智能指针或者GC. 不推荐自己管理裸指针. C++的内存管理其实是一个哲学问题: 怎样才能确定一个东西没有被其 ...

  4. javascript基础-js继承

    1.prototype方式 示例:没有使用prototype(下列这些代码只能获取array1数组的总和,而无法对array2数据进行求和) var array1 = new Array(1,4,9, ...

  5. LogUtils日志管理工具

    public class LogUtils { public static final int VERBOSE = 1; public static final int DEBUG = 2; publ ...

  6. java代码-----实现打印三角形

    总结:今天我有个体会,喜欢不代表了解,了解不代表精通.我好失败 对于正三角形,就是注意空格.打星号.的实现. package com.a.b; public class Gl { public sta ...

  7. Java-Runoob-面向对象:Java 接口

    ylbtech-Java-Runoob-面向对象:Java 接口 1.返回顶部 1. Java 接口 接口(英文:Interface),在JAVA编程语言中是一个抽象类型,是抽象方法的集合,接口通常以 ...

  8. python中break continue exit() pass区别

    1.break break是终止本次循环,比如你很多个while循环,你在其中一个while循环里写了一个break,满足条件,只会终止这个while里面的循环,程序会跳到上一层while循环继续往下 ...

  9. .NET System.Web.HttpContext.Current.Request报索引超出数组界限。

    移动端使用Dio发送 FormData, 请求类型 multipart/form-data, FormData内可以一个或多个包含文件时. 请求接口时获取上传的fomdata数据使用 System.W ...

  10. mongoDB在windows下安装和配置.

    1.首先在官网下载mongoDB的安装包: http://www.mongodb.org/downloads 这里我们下载zip格式的下载,其他的没安装过,不会,就不说了. 2.解压文件后: 3.在D ...