2020.10.15星期四  正式班D8

一、上节课复习

  1. OSI七层协议

  2. socket

    1. socket是对传输层以下的封装
    2. IP+port标识唯一一个基于网络通讯的软件
  3. TCP与UDP

    1. TCP:因为在通信之前必须建立双向链接,通常都是客户端主动连接服务端的

      ​ 所以必须先启动服务器才能启动客户端

    2. UDP:不需要先启动服务端

  4. DHCP

    1. IP地址

    2. 子网掩码

    3. 网关

    4. dns服务器所在的IP地址

      获取方式:

      ​ 静态配置:手动

      ​ 动态获取:DHCP

  5. dns

    将域名解析成IP

    浏览器DNS缓存-》本地操作系统DNS缓存-》本地HOSTS缓存-》本地DNS缓存-》递归或迭代查询

二、今日内容

  1. IP地址的结构与分类

    1. A类:0NNNNNNN.Host.Host.Host
    2. B类:10NNNNNN.Network.Host.Host
    3. C类:110NNNNN..Network.Network.Host
  2. 特殊IP地址

    1. 网络地址:网络号部分正常,主机号部分全为0。如172.16.45.0就是一个B类网络地址

    2. 广播地址:网络号部分正常,主机号部分全为(即255),用于向网络所有设备进行广播

      ​ 如172.16.45.255就是B类的广播地址

    3. 有限广播地址:指32位全为1(即255.255.255.255)的IP地址,用于本网广播

    4. 回送地址:地址中数字127保留给系统作诊断用,称为回送地址,如127.0.0.1用于回路测试

    5. 私有地址:只能在局域网内使用,不能再Internet上使用的IP地址称为私有IP地址

      1. 10.0.0.0~10.255.255.255表示一个A类地址
      2. 172.16.0.0~172.31.255.255表示16个B类地址
      3. 192.168.0.0~192.168.255.255表示256个C类地址
      4. 这些地址不会被Internet分配,也不会被路由。虽不能直接与Internet网连接但可与Internet通讯。
      5. 在Internet上,不需要与Internet通讯的设备,如打印机可使用这些地址以节省IP地址资源
    6. 0.0.0.0表示所有不清楚主机和目的网络,不是真正意义上的IP地址。

      (不清楚是指在本机路由表里没有指定条目指明如何到达)

  3. 子网掩码

    1. 作用:识别IP地址中的网络地址和主机地址
    2. 32位二进制,网络部分全为1,主机部分全为0
    3. 表示方法:
      1. 网络前缀:即"/<网络地址位数>"
      2. 十进制:如255.255.255.0表示C类地址默认的24位子网掩码
  4. 子网划分

    1. 指通过借用IP地址中若干主机位充当子网地址,而将原来的网络分为若干个彼此分离的子网

    2. 子网划分与vlan都可以做到隔离广播域,只是子网划分是三层隔离,而vlan是二层

    3. C类子网划分

    4. 子网划分步骤

      1. 确定要划分的子网数以及每个子网的主机数
      2. 求出子网数目对应的二进制的位数N及主机数目对应的二进制数的位数M
      3. 对该ip地址的原子网掩码,将其主机地址部分的前N位置1(其余全部置0)或后M位置0(其余全置1)即得出该ip地址划分子网后的子网掩码
    5. 子网地址

      1. 减少网络流看
      2. 提高网络性能
      3. 简化管理
      4. 易于扩大地理范围
  5. 子网划分与vlan

    1. 处于同一个局域网LAN之内的网络节点之间可以直接通信

      处于不同局域网段的设备之间的通信则必须经过路由器才能通信。

    2. vlan的特点

      1. 可以不用通过路由器来隔离不同广播域
      2. 可以突破地理位置的限制,在逻辑上划分出不同的广播域
    3. 带vlan交换机的端口分类:

      1. Access port:这些端口被打上了 VLAN Tag。离开交换机的 Access port 进入计算机的以太帧中没有 VLAN Tag,这意味着连接到 access ports 的机器不会觉察到 VLAN 的存在。离开计算机进入这些端口的数据帧被打上了 VLAN Tag。

      2. Trunk port: 有多个交换机时,组A中的部分机器连接到 switch 1,另一部分机器连接到 switch 2。要使得这些机器能够相互访问,你需要连接两台交换机。 要避免使用一根电缆连接每个 VLAN 的两个端口,我们可以在每个交换机上配置一个 VLAN trunk port。Trunk port 发出和收到的数据包都带有 VLAN header,该 header 表明了该数据包属于那个 VLAN。因此,只需要分别连接两个交换机的一个 trunk port 就可以转发所有的数据包了。通常来讲,只使用 trunk port 连接两个交换机,而不是用来连接机器和交换机,因为机器不想看到它们收到的数据包带有 VLAN Header。

    4. vlan的类型

      1. 基于端口的vlan(untagged VLAN - 端口属于一个VLAN,数据帧中没有VLAN tag)

        这种模式中,在交换机上创建若干个VLAN,在将若干端口放在每个VLAN 中。每个端口在某一时刻只能属于一个VLAN。一个 VLAN 可以包含所有端口,或者部分端口。每个端口有个PVID (port VLAN identifier)。这种模式下,一个端口上收到的 frame 是 untagged frame,因此它不包含任何有关 VLAN 的信息。VLAN 的关系只能从端口的 PVID 上看出来。交换机在转发 frame 时,只将它转发到相同 PVID 的端口。

        连接两个交换机的同一个 VLAN 中的两个计算机需要通信的话,需要在两个交换机之间连两根线

      2. Tagged VLANs (数据帧中带有 VLAN tag)

        这种模式下,frame 的VLAN 关系是它自己携带的信息中保存的,这种信息叫 a tag or tagged header。当交换机收到一个带 VLAN tag 的帧,它只将它转发给具有同样 VID 的端口。一个能够接收或者转发 tagged frame 的端口被称为 a tagged port。所有连接到这种端口的网络设备必须是 802.1Q 协议兼容的。这种设备必须能处理 tagged frame,以及添加 tag 到其转发的 frame。

        一根线就可以了实现跨交换机的同VLAN 内的计算机互相通信

    5. vlan的不足

      1. VLAN 使用 12-bit 的 VLAN ID,所以 VLAN 的第一个不足之处就是它最多只支持 4096 个 VLAN 网络(当然这还要除去几个预留的),对于大型数据中心的来说,这个数量是远远不够的。
      2. VLAN 是基于 L2 的,所以很难跨越 L2 的边界,在很大程度上限制了网络的灵活性。
      3. VLAN 操作需手工介入较多,这对于管理成千上万台机器的管理员来说是难以接受的。
  6. 二层交换机

    1. 功能

      1. MAC 地址学习:当交换机从它的某个端口收到数据帧时,它将端口的 ID 和帧的源 MAC 地址保存到它的内部MAC表中。
      2. 数据帧转发:交换机在将从某个端口收到数据帧,再将其从某个端口转发出去之前,它会做一些逻辑判断
      3. 加 VLAN 标签/去 VLAN 标签

正式班D8的更多相关文章

  1. 正式班D5

    2020.10.10星期六 正式班D5 一.上节课复习 1.硬盘分类 ​ 1.机械磁盘 ​ io时间=平均寻道时间+平均延迟时间 ​ buffer:写缓冲区 ​ cache:都缓存 ​ 2.固态硬盘 ...

  2. 正式班D7

    2020.10.13星期二 正式班D7 一.上节课复习 Linux发展 批处理系统 多道技术 分时操作系统 multics->Unix->minix->Linux(如Redhat.c ...

  3. 正式班D9

    2020.10.16星期五 正式班D9 一.vmware workstation的使用 虚拟机管理软件 定义 虚拟机(Virtual Machine)软件是一套特殊的软件,它可以作为操作系统独立运行, ...

  4. 正式班D11

    2020.10.20星期二 正式班D11 bash解释器交互式环境特性 命令和文件自动补全(Tab只能补全命令和文件) 快捷键 CTRL+C ==>终止前台运行的程序 CTRL+D ==> ...

  5. 正式班D12

    2020.10.21星期三 正式班D12 一.目录结构 系统目录结构 目录 文件夹:存放的是具体有哪些文件 文件:存放的就是具体的数据 需要记住的 /dev/cdrom # 光盘设备,光盘里存放的内容 ...

  6. 正式班D13

    2020.10.22星期四 正式班D13 修改文件内容 vim编辑 vim基础 可理解为Windows下的文本编辑器 vim可用来修改配置.写脚本 三种模式(命令模式.输入模式.末行模式) 命令模式按 ...

  7. 正式班D14

    2020.10.23星期五 正式班D14 9.5 文件处理三剑客(支持|) 9.5.1 sed流式编辑器 事先制定好编辑文件的指令,让sed自动完成对文件的整体编辑(同一时间内存中只有文件中一条) # ...

  8. 正式班D16

    2020.10.27星期二 正式班D16 目录 9.9 字符处理命令 9.9.1 sort排序 9.9.2 uniq去重 9.9.3 cut处理规律文本 9.9.4 tr替换 9.9.5 wc统计 9 ...

  9. 正式班D20

    2020.11.02星期五 正式班D20 目录 11 软件包管理 11.1 软件包介绍 11.1.1 编程语言分类 11.1.2 三种安装包 11.2 rpm包管理 11.2.1 rpm包简介 11. ...

随机推荐

  1. GET请求和POST请求的request和response的中文乱码问题

    GET请求(request)中文乱码解决方案: 在Services的server.xml的配置文件的第一个Connector标签中添加属性URIEncoding="UTF-8" P ...

  2. ELK入门及基本使用

    预备知识-Restful 起源 在没有前后端分离概念之前,一个网站的完成总是“all in one”,在这个阶段,页面.数据.渲染全部在服务端完成,这样做的最大的弊端是后期维护,扩展极其痛苦,开发人员 ...

  3. Java获取Linux上指定文件夹下所有第一级子文件夹

    说明:需要只获得第一级文件夹目录 package com.sunsheen.jfids.studio.monitor.utils; import java.io.BufferedReader; imp ...

  4. h5内嵌微信小程序,调用微信支付功能

    在小程序中不能使用之前在浏览器中配置的支付功能,只能调用小程序专属的api进行支付. 因为需要在现在实现的基础上,再添加在小程序中调用微信支付功能,所以我的思路是这样的 1.在点击支付按钮时,判断是不 ...

  5. Mybatis动态SQL配置

    使用 if where foreach标签对映射配置文件中sql语句进行动态配置 1.首先在dao接口中设置两个查询方法 package sun.dao; import sun.domain.Quer ...

  6. 蓝奏网盘API

    蓝奏云网盘API 2.0 基于Python3实现,最强的蓝奏云API~ 蓝奏云注册 更新说明 修复了登录时 formhash 错误的问题 解决了多次上传大文件被限制的问题 #3 细化 API 接口的功 ...

  7. docker启动容器报错 Unknown runtime specified nvidia.

    启动docker容器时,报错 问题复现 当我启动一个容器时,运行以下命令: docker run --runtime=nvidia .... 后面一部分命令没写出来,此时报错的信息如下: docker ...

  8. [LeetCode]Mysql系列5

    题目1 1112. 每位学生的最高成绩 编写一个 SQL 查询,查询每位学生获得的最高成绩和它所对应的科目,若科目成绩并列,取 course_id 最小的一门.查询结果需按 student_id 增序 ...

  9. Vue+SpringBoot项目实战(一) 搭建环境

    GitHub 地址: https://github.com/dongfanger/sprint-backend https://github.com/dongfanger/sprint-fronten ...

  10. Python 之 Django框架( Cookie和Session、Django中间件、AJAX、Django序列化)

    12.4 Cookie和Session 12.41 cookie Cookie具体指的是一段小信息,它是服务器发送出来存储在浏览器上的一组组键值对,下次访问服务器时浏览器会自动携带这些键值对,以便服务 ...