liuyulin
发布于 2024-02-02 / 31 阅读
0
0

HCI

HCI

HCIA

IP协议

地址分类:

  • A类地址:0.0.0.0~127.255.255.255

  • B类地址:128.0.0.0~191.255.255.255

  • C类地址:192.0.0.0~223.255.255.255

  • D类地址:224.0.0.0~239.255.255.255(组播)

  • E类地址:240.0.0.0~255.255.255.255(保留)

特殊地址:

  • 网络地址:主机号全0

  • 广播地址:主机号全1

  • 组播地址:D类地址

  • 255.255.255.255:受限制的广播地址

  • 0.0.0.0:常用于寻找自己的ip,例如在我们的RARP,BOOTP和DHCP协议中,若某个未知IP地址的无盘机想要知道自己的IP地址,它就以255.255.255.255为目的地址,向本地范围(具体而言是被各个路由器屏蔽的范围内)的服务器发送IP请求分组。

  • 回环地址:127.0.0.0/8

子网划分:

向主机位借位,形成子网,划分了子网之后,每个子网的主机数量就会减少。

ICMP协议

internet消息控制协议,是IP协议的辅助协议,用于在网络设备之间传递各种差错和控制信息,对于收集各种网络信息、诊断和排除各种网络故障等方面起着至关重要的作用。

ping就是发送ICMP包

ICMP包结构: | 以太网头部 | IP头部 | ICMP报文 | 以太网尾部 |

ICMP报文: | Type | Code | Checksum |

Type

Code

描述

0

0

Echo Reply

3

0

网络不可达

3

1

主机不可达

3

2

协议不可达

3

3

端口不可达

5

0

重定向

5

0

Echo Request

ICMP重定向:在特定情况下,当路由器检测到一台机器使用非最优路径的时候,它会向该主机发送一个ICMP重定向报文,请求主机改变路由

路由

路由就是指导数据如何转发的技术,通过路由表里的路由条目判断走哪条路是最优的。

路由条目包含:

  • 目的网络:目的网段的网络号

  • 掩码:目的网段的掩码

  • 出接口(Interface):数据包从本路由器发出的接口

  • 下一跳(Nexthop):到达目的网端的下一跳的设备地址

  • 其他条目:

    • Proto:该路由的协议类型,也即是通过什么协议获知该路由的。直连or静态or动态

    • Pre:路由协议优先级。有多个选择的时候选择优先级高的路径,数字越小越优先

    • Cost:路由开销。路由开销最小将称为当前的最优路径

路由优先级的比较过程:

  • 首先比较路由的掩码,掩码越长越优先

  • 然后比较路由的preference,数字越小越优先

  • 然后比较路由的cost,数字越小越优先

  • 如果都相同,则形成等价路由

缺省路由:用0.0.0.0/0表示去往所有目标都走这条路由

路由递归:路由表中的下一跳并不是直连的,需要使用路由递归计算下一跳路径,实际使用中应该避免出现路由递归

等价路由:两条路消耗相同

浮动路由:去同一个目标有多条路,有备用路由

路由汇总CDIR,将最小的网段和最大的网段放在一起,取相同的部分就是汇总后的路由。不过路由汇总可能会引发环路。

OSPF动态路由

使用OSPF协议,每个设备会将它的拓扑信息交给它的邻居,邻居再交给邻居的邻居,这样整个网络中每个设备都有整网的拓扑信息,每个路由器就能画出全网的拓扑图,进而计算出去往全网的最佳路径。

  • Router-ID:路由器唯一标识符,Rout-Id是以ip地址的格式来配置,只是路由器的名字

  • OSPF Area:用于标识一个OSPF的区域

  • Cost:OSPF开销

OSPF报文:

  • Hello 周期性发送,用来发现和维护OSPF邻居关系,一段时间没收到邻居发来的Hello包,就认为邻居失效了,要删除与该邻居相连的路由

  • Database Description:用来描述LSDB(链路状态数据库)的摘要信息,用于两台设备进行数据库同步

  • LinkStateRequest:向对方请求所需的LSA,设备只有在OSPF邻居双方成功交换DD报文之后才会向对方发出LSR报文

  • LinkStateUpdate:用于向对方发送其所需的LSA

  • LinkStateACK:用来对收到的LSA进行确认

OSPF的工作过程主要分为三个步骤:分别是形成邻居,形成邻接关系,计算路由,完成会形成三张表,是OSPF邻居表,LSDB表和OSPF路由表

OSPF三张表:

  • 邻居表:

以太网(LAN)

以太网是最常见的局域网(local area network)采用的最通用的通信协议标准,标准定义了在局域网中采用的电缆类型和信号处理方法

  • 广播域:一个节点发广播的时候,其他节点才能收到

  • 冲突域:一个节点发出的报文,其他节点也能收到

  • 单播域:一个节点发出只有目标节点能收到

以太网帧

以太网的数据包,有两种格式,绝大多数使用Ethernet_H格式,一台交换机应该能识别这两种格式。

Ethernet_H格式:| D.MAC(6B) | S.MAC(6B) | Type(2B) | 用户数据(46-1500B) | FCS(4B) |

IEEE 802.3格式:| D.MAC(6B) | S.MAC(6B) | Length(2B) | LLC(3B) | SNAP(5B) | 用户数据(38-1492B) | FCS(4B) |

以太网要求数据包必须要在46字节以上,不到46字节的数据包要在尾部加上若干0构成以太网尾部。

mac

mac地址前24bit由IEEE分配,标识生产厂商

交换机三种数据帧处理方式

  • 泛洪:未查到对应信息,就发给所有端口

  • 转发:查到对应信息,就转发给目标端口

  • 丢弃:查到对应信息,发现数据包的出接口和入接口相同的时候,就会将数据包丢弃

ARP

Address Resolution Protocol 地址解析协议,是根据ip地址获取物理地址的一个tcp/ip协议。主机发送信息时将包含目标ip地址的ARP请求广播到网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后将该ip地址和物理地址存入本机的ARP缓存中并保留一段时间,下次请求直接查询ARP缓存以节约资源。

交换机交换过程

查询主机1的ARP缓存

如果主机1ARP缓存中没有查到 就发送ARP广播 交换机收到主机1的ARP请求 学习主机1的mac地址 然后将ARP广播继续发送 主机2收到ARP广播之后回一个ARP Reply 告诉主机1主机2的mac 交换机收到主机2发送的ARP Reply 也就学习到了主机2的mac 主机1收到ARP Reply就知道了主机2的mac 更新ARP缓存

VLAN

划分虚拟局域网

数据包在TRUNK口发出的时候是要带标签 而从ACCESS口发出来可以不带标签

Trunk口发出的数据会在原始以太网数据帧上添加802.1Q Tag标签,添加之后的数据帧:

| 目标mac地址 | 源mac地址 | Tag | 类型 | Data | FCS |

802.1Q Tag:

| TPID(16bit) | PRI(3bit) | CFI(1bit) | vlanID(12bit) |

TPID(标签协议标识符):标识数据帧的类型,值为0x8100时表示是802.1Q帧,固定的

PRI(优先级):标识帧的优先级,主要用于Qos

CFI(标准格式指示符):在以太网环境中,该字段的值为0

VLAN ID:标识该帧所属的VLAN

ACCESS
  • 接收帧

    • 接口收到untagged帧:接收到该帧,并打上该接口的PVID

    • 接口收到tagged帧:当该帧的vlanId与该接口的pvid相同时,接收该帧;当该帧的vlanId与该接口的PVID不同时,丢弃该帧。

  • 发送帧

    • 帧的vlanID与接口的pvid相同:先剥离该帧的tag,然后再将其从该接口发出

    • 帧的vlanID和接口的pvid不同:禁止将该帧从该接口发出

TRUNK
  • 接收帧

    • 接口收到untagged帧:该帧打上PVID,当PVID在该接口允许通过的VLAN列表里时接收该帧;当PVID不在允许通过的VLAN列表里时,丢弃该帧

    • 接口收到tagged帧:当该帧的VLAN ID在该接口允许通过的VLAN列表里时,接收该帧,否则丢弃该帧

  • 发送帧

    • 帧的VLAN ID与接口的PVID相同:当该帧的VLAN ID在该接口允许通过的VLAN列表中,则将该帧的Tag剥除,然后将其从该接口发送出去

    • 帧的VLAN ID与接口的PVID不同:如果VLAN ID不在允许通过的VLAN列表中,则禁止将该帧从接口中发送出去

vlan分配技巧

VLAN ID的分配在有效范围内,可以随意分配和选取,但是为了提高VLAN ID的连续性,可以采用VLAN ID和子网关联的方式进行分配



评论