计算机网络(1)

计算机之间的通信基础
  • 需要得知对方的IP地址
  • 最终是根据MAC地址(网卡地址),输送数据到网卡,被网卡接收
    • 如果网卡发现数据的目标MAC地址是自己,就会将数据传递给上一层进行处理
    • 如果网卡发现数据的目标MAC地址不是自己,就会将数据丢弃,不会传递给上一层进行处理
计算机之间的连接方式
计算机之间的连接方式——网线直连
  • 两台电脑之间需要用交叉线(不是直通线)

ARP协议,广播,获取MAC地址

image-20220825171852066
计算机之间的连接方式——同轴电缆(Coxaial)
  • 半双工通信
  • 容易冲突
  • 不安全
  • 中间断了,整个都瘫了
计算机之间的连接方式——集线器
  • 半双工通信
  • 容易冲突
  • 不安全
  • 跟同轴电缆一样:没有智商
image-20220826101126547 image-20220826101203076 image-20220826102604864
计算机之间的连接方式——网桥(Bridge)
  • 能够通过自学习得知每个接口那侧的MAC地址
    • 从而起到隔绝冲突域的作用
image-20220826104706162
计算机之间的连接方式——交换机(Switch)
  • 相当于接口更多的网桥
  • 全双工通信
  • 比集线器安全(不会被别的电脑抓包)

交换机可以说是局域网的最终方案

二层交换机没有IP地址,三层交换机有IP地址

image-20220826110325512
计算机之间的连接方式——路由器(Router)
  • 网线直连,同轴电缆,网桥,交换机
    • 连接的设备必须在同一网段
    • 连接的设备处在同一广播域
  • 路由器
    • 可以在不同网段之间转发数据
    • 隔绝广播域

主机发数据之前,首先会判断目标主机的IP地址跟它是否在同一个网段。

  1. 同一个网段:

    ARP,通过交换机/集线器传递数据

  2. 不在同一个网段:

    通过路由器转发数据

网关(Gateway):由路由器提供

image-20220828161028871

image-20220828163558420

MAC地址
  • 每一个网卡都有一个6字节(48bit)的MAC地址(Media Access Control Address)
  • 全球唯一,固化在了网卡的ROM中,由IEEE802标准规定
    • 例:组织唯一标识符:40-55-82 网络接口标识符:0A-8C-6D
    • 前3字节:OUI(Organizationally Unique Identifer),组织唯一标识符(由IEEE的注册管理机构分配给厂商)
    • 后3字节:网络接口标识符(由厂商自行分配)
  • OUI查询
    • http://standards-oui.ieee.org/oui.txt
    • https://mac.51240.com/
  • MAC地址的表示格式
    • windows
      • 40-55-82-0A-8C-6D
    • Linux,Android,Mac,iOS
      • 40:55:82:0A:8C:6D
    • Packet Tracer
      • 4055.820A.8C6D
    • 当48位全为1时,代表广播地址
      • FFFF.FFFF.FFFF
  • MAC地址操作
    • 查看MAC地址:ipconfig /all
    • 修改MAC地址
      • 更改适配器选项——属性——配置——高级——网络地址
      • 填写的时候需要把减号(–)去掉
    • 有时可以通过修改MAC地址蹭网
  • MAC地址的获取
    • 当不知道对方主机的MAC地址时,可以通过发送ARP广播获取对方的MAC地址
      • 获取成功后,会缓存IP地址,MAC地址的映射信息,俗称:ARP缓存
    • 相关命令
      • arp -a[主机地址]:查询ARP缓存
      • arp -d[主机地址]:删除ARP缓存
      • arp -s 主机地址 MAC地址:增加一条缓存信息(这时静态缓存,存储时间较久,不同系统的存储时间不同)
IP地址
  • IP地址(Internet Protocol Address):互联网上的每一个主机都有一个IP地址

    • 最初是IPv4版本,32bit(4字节),2019年11月25日,全球的IP地址已经用完
    • 后面推出了IPv6版本,128bit(16字节)
  • 本课程中若不指定版本,默认就是说IPv4版本,后面再单独讨论IPv6

  • IP地址由2部分组成:网络标识(网络ID),主机标识(主机ID)

    • 同一网段的计算机,网络ID是相同的

    • 通过子网掩码(subnet mask)可以计算出网络ID:子网掩码 & IP地址

    • IP地址:192.168.1.10
      子网掩码:255.255.255.0
      	1100 0000.1010 1000.0000 0001.0000 1010
      &   1111 1111.1111 1111.1111 1111.0000 0000
      ----------------------------------------------------
      	1100 0000.1010 1000.0000 0001.0000 0000
      	192.168.1.0
      	
      网络ID:1100 0000.1010 1000.0000 0001
      主机ID:0000 1010
      
    • IP地址:130.168.1.10
      子网掩码:255.255.0.0
      网段:130.168.0.0
      
  • 计算机和其他计算机通信之前,会先判断目标主机与自己是否在同一网段

    • 同一网段:不需要由路由器进行转发
    • 不同网段:交由路由器进行转发
  • IP地址的分类:

    • A类地址:默认子网掩码是255.0.0.0

      image-20220901164043923
    • B类地址:默认子网掩码是255.255.0.0

      image-20220901164125078
    • C类地址:默认子网掩码是255.255.255.0

      image-20220901164203932
    • D类地址:以1110开头:多播地址

    • E类地址:以1111开头,保留为今后使用

    • 只有A\B\C类地址才能分配给主机

      • 主机标识全为0,表示主机所在的网段
      • 主机标识全为1,表示主机所在网段的全部主机(广播)
  • A类地址

    • image-20220912075259004
    • 网络ID
      • 0不能用,127作为保留网段,其中127.0.0.1是本地回环地址(Loopback),代表本机地址
      • 可以分配给主机的
      • 第一部分的取值范围是1~126
    • 主机ID
      • 第2,3,4部分的取值范围是0~255
  • B类地址

    • image-20220912081922798
    • 网络ID

      • 可以分配给主机的

      • 第一部分的取值范围是128~191

      第二部分的取值范围是0~255

    • 主机ID

      • 第三,四部分的取值范围是0~255
      • 每个B类网络能容纳的最大主机数是256*256-2=2的16次方-2=65534
  • C类地址

    • image-20220912132641481
    • 网络ID

      • 可以分配给主机的
      • 第一部分的取值范围是192~223
      • 第二,三部分的取值范围是0~255
    • 主机ID

      • 第四部分的取值范围是0~255
      • 每个C类网络能容纳的最大主机数是256-2=254
  • D类地址,E类地址

    • D类地址:没有子网掩码,用于多播(组播)地址

      • 第一部分的取值范围是224~239
    • image-20220912133200830
    • E类地址:保留为今后使用

      • 第一部分取值范围是240~255
    • image-20220912133302328
子网掩码

子网掩码的CDIR

  • CIDR(Classless Inter-Domain Rounting):无类别域间路由

  • 子网掩码的CIDR表示方法

    • 192.168.1.100/24 代表子网掩码有24个1,也就是255.255.255.0
    • 123.210.100.200/16,代表子网掩码有16个1,也就是255.255.0.0
  • 计算工具:https://www.sojson.com/convert/subnetmask.html

为什么要进行子网划分?

  • 如果需要让200台主机在同一个网段内,可以分配一个C类网段,比如192.168.1.0/24
    • 共254个可用IP地址:192.168.1.1~192.168.1.254
    • 多出54个空闲的IP地址,这种情况并不算浪费资源
  • 如果需要让500台主机在同一个网段内,那就分配一个B类网段,比如191.100.0.0/16
    • 共65534个可用IP地址:191.100.0.1~191.100.255.254
    • 多出65034个空闲的IP地址,这种情况属于极大的浪费资源
  • 如何尽量避免资源浪费?
    • 合理进行子网划分
子网划分
  • 子网划分:借用主机位作子网位,划分出多个子网
  • 可用分为
    • 等长子网划分:将一个网段等分成多个子网,每个子网的可用IP地址数量是一样的
    • 变长子网划分:每个子网的可用IP地址数量可以是不一样的
  • 子网划分器:http://www.ab126.com/web/3552.html
  • 子网划分的步骤
    • 确定子网的子网掩码长度
    • 确定子网中第一个,最后一个主机可用的IP地址
等长子网划分
  • image-20220912154617511
  • 本来有一个C类网段,192.168.0.0/24,划分成2个子网段:

    • A子网:192.168.0.0/25,子网掩码:255.255.255.128,

      192.168.0.1~192.168.0.126 126台

    • B子网:192.168.0.128/25,子网掩码:255.255.255.128

      192.168.0.129~192.168.0.254 126台

  • image-20220912155743936
  • 四个子网的子网掩码都是:255.255.255.192/26

    • A子网的主机可用IP地址
      • 192.168.0.1~192.168.0.62
    • B子网的主机可用IP地址
      • 192.168.0.65~192.168.0.126
    • C子网的主机可用IP地址
      • 192.168.0.129~192.168.0.190
    • D子网的主机可用IP地址
      • 192.168.0.193~192.168.0.254
  • image-20220912160208018
  • image-20220912162632269
变长子网划分
  • 如果一个子网地址快的长度是原网段的(1/2)^n,那么
    • 子网的子网掩码,就是在原网段的子网掩码的基础上增加n个1
    • 不等长的子网,它们的子网掩码也不同
  • image-20220912164746378
  • 假设上图是对192.168.0.0/24进行变长子网划分
    • C网段:子网掩码是255.255.255.128/25
    • B网段:子网掩码是255.255.255.192/26
    • A网段:子网掩码是255.255.255.224/27
    • D网段:子网掩码是255.255.255.252/30
    • E网段:子网掩码是255.255.255.252/30
超网
  • 跟子网反过来,它是将多个连续的网段合并成一个更大的网段
  • 需求:原本有200台计算机使用192.168.0.0/24网段,选择希望增加200台设备到同一个网段
    • 200台在192.168.0.0/24网段,200台在192.168.1.0/24网段
    • 合并192.168.0.0/24,192.168.1.0/24为一个网段:192.168.0.0/23(子网掩码往左移动1位)
    • image-20220913135340480
  • image-20220913135953144 - 主机位没有全为1,不是广播地址。所以192.168.0.255/23可以分配给计算机使用,但是192.168.1.255/23就不能分配给计算机来使用,因为它是个广播地址。
  • 合并四个网段
    • image-20220913140354606
    • 子网掩码向左移动两位,可以合并四个网段
  • image-20220913141236428
  • 合并网段的规律
    • 假设n是2的k次幂(k≥1)
    • 子网掩码左移K位能够合并n个网段
    • image-20220913141626070
    • 如果第一个网段的网络号能被N整除,那么由它开始连续的n个网段,能够通过左移k位子网掩码进行合并
    • 比如
      • 第一个网段的网络号以二进制0结尾,那么由它开始连续的2个网段,能够通过左移1位子网掩码进行合并
      • 第一个网段的网络号以二进制00结尾,那么由它开始连续的4个网段,能够通过左移2位子网掩码进行合并
      • 第一个网段的网络号以二进制000结尾,那么由它开始连续的8个网段,能够通过左移3位子网掩码进行合并
  • 判断一个网段是子网还是超网
    • 首先
      • 查看该网的类型,是A类网络,B类网络,C类网络?
      • 默认情况下,A类子网掩码的位数是8,B类子网掩码的位数是16,C类子网掩码的位数是24
    • 然后
      • 如果该网段的子网掩码位数比默认子网掩码多,就是子网
      • 如果该网段的子网掩码位数比默认子网掩码少,则是超网
    • 比如
      • 25.100.0.0/16是一个A类子网
      • 200.100.0.0./16是一个C类超网
路由
  • 在不同网段之间转发数据,需要有路由器的支持

  • 默认情况下,路由器只知道跟它直连的网段,非直连的网段需要通过静态路由,动态路由告诉它

    • 静态路由
      • 管理员手动添加路由信息
      • 适用于小规模网络
    • 动态路由
    • 路由器通过路由选择协议(比如RIP,OSPF)自动获取路由信息
    • 适用于大规模网络
  • image-20220913154623415
  • 路由器的路由表

    • image-20220913171124767
    • 练习题

      image-20220913171311948

      • image-20220914105821141
数据包的传输过程image-20220914111334791

image-20220914111312894

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

游子无寒衣

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值