zoukankan      html  css  js  c++  java
  • 网络基础--网络层以下的总结

    复习总结

    前言:这是深圳某公司实习培训的前两周的内容总结,总结只是对我自己的一个整理,希望对大家有帮助。

    TCP/IP VLSM

    • 网络工程师:应付各种复杂的网络,网络的项目的落地,全方位的人才。沟通管理能力。
      三次握手:
    • 第一次A向B发送:Send SYN(seq=100,ctl=SYN)
    • B的SYN received
    • 第二次B->A握手:Send SYN ACK(seq=300(随机的),ack(确认号)101,ctl=SYN,ack)
    • A的SYN received
    • 第三次A->B握手:Established(seq=101(序列号),ack=301(确认号),ctl=ack)
    • 划分子网:是为了有效利用IPv4地址,方便管理,减少流量广播。IP地址是以网络号和主机号来标示网络上的主机的,只有在一个网络号下的计算机之间才能"直接"互通,不同网络号的计算机要通过网关(Gateway)才能互通。但这样的划分在某些情况下显得并十分不灵活。为此IP网络还允许划分成更小的网络,称为子网(Subnet),这样就产生了子网掩码。子网掩码的作用就是用来判断任意两个IP地址是否属于同一子网络,这时只有在同一子网的计算机才能"直接"互通。

    主机A-----路由器B------主机C之间通信过程。

    • A的应用层进程提出请求。
    • 下发到A的传输层,然后给数据包加上源端口(本进程的端口)和目的端口。
    • 下发到A的网络层,给数据加上源IP地址和目的IP地址。
    • 下发到A的数据链路层,加上A的Mac地址和下一跳B的MAC地址(默认网关,如果此时没有默认网关B的MAC地址,那么A就会发送广播,当B收到广播就回复,其他的主机不回复。从而A就得到B的MAC地址。)。
    • 下发到物理层传输
    • B接受到数据,首先上传到链路层判断目的MAC地址是否是本机的MAC地址,如果是,则去掉MAC地址,向上层传输,网络层判断数据的目的IP地址是否是本机的IP地址,如果是,则去掉IP地址,
      继续上传,否则把网络层的数据包原样恢复,下下层传输,到了数据链路层,查看ARP表,查找下一跳MAC地址,把数据包加上B的源MAC地址和目的地址,向下传输,发送。

    **通信类型 **

    *单播:一对一
    *广播:主机必须收。
    *组播:交换机可以过滤。

    • 网络地址:在ipv4的网络地址中最小的地址为网络地址,主机部分均为0.
    • 广播地址:网络位置的不变,主机位置全部变为1。255.(内网的主机向广播地址发送消息,内网中所有的主机都会收到消息。网络地址和广播地址不能给主机用。交换机在配置vlan前所有接口都是一个广播域,但配置vlan后每一个vlan都是一个广播域。)
    • 主机地址:分配给网络中的终端设备的地址。
    • 子网划分:在图片中,p27张。

    IP地址的类别:

    • 私有IP地址(只能在内网中使用):
      10.0.0.0---10.255.255.255
      172.16.0.0----172.31.255.255
      192.168.0.0----192.168.255.255

    IPv6:

    • IPV6地址的分类划分(没有广播这一说法。):
    • 单播地址:
      1、全球单播地址
      2、本地站点地址,格式为EFC0::/10
      3、本地链路地址,格式为FE80::/10
    • 组播地址:以FF开头的地址,用来标识一组接口,发送到每一个接口。
    • 任播地址:与单播地址使用相同的地址空间,也用来标识一组接口,发送的时候只发送到一个最近的接口。只能作为目的地址使用,不能当源地址使用。

    IPv6过度技术:

    • 双协议栈技术:设备同时支持IPv4和IPv6两个协议栈,最为彻底,运用于网站建设。
    • 隧道技术:通信的双方都是IPv4,通过在IPv6的头部上前加IPv4头部的方式。发送方加头部,接受方解析头部(特可以4转6,同理)。
    • NAT地址转化:IPv6的主机对IPv4的服务器的访问。主机通过域名解析,把服务器的IPv4转成(在ipv4的头部加前缀,组成一个IPv6的地址)IPv6地址然后再通信。到了服务器,再通过域名解析(去前缀),把转化过后的服务器地址再转化回IPv4,交给服务器。实质上是一个地址的映射。

    Trunk

    • 当一条链路,需要承载多个Vlan信息的时候,需要使用Trunk来实现。一般见于交换机之间或者交换机与路由器之间。
    • 协议:1、ISL(思科专有的协议。) 2、802.1Q协议。
    • 802.1Q协议:共有协议,打标签的方式。在源目的地址的后面插入一个tag标签。
    • 标签长度18bit。trunk并非对所有的Vlan都打标记,除了Native,Vlan等。
    • 不同Vlan之间通信需要通过路由器,基于端口划分。
    • vlan范围:0-4096 ,0和4096作为保留,不能使用。1是所有的vlan默认端口,不能删除,可用范围2-1000。

    VLAN配置

    • 创建VLAN:  
      valn 2 name VLAN2
    • 将端口划入特定的VLAN
    interface fa0/1  
    switchport mode access  
    switchport access [vlan vlan|dynamic]  
    
    • Trunk配置(路由器的两端都要配置,并且封装协议要一致):

    • 配置trunk封装方式(只有在网络需要多个Vlan的时候才需要trunk)(在我自己的机子上配置和上面access一样,no shut都不用,封装协议默认是dot1Q):
      interface f0/15 switchport trunk encapsulation {dot1Q|negotiate}

    • 对一个端口的配置恢复默认:default interface f0/1
      -开启trunk端口模式:
      switchPort mode {trunk(常用)|dynamic}

    • 查看trunk:show interfaces trunk

    • 配置双臂路由:

    • `1.交换机这边:a.switchport mode trunk
      b.switchport access vlan 10或者其他

    • 2.挨着路由器这边:
      a.int f0/0 b.no shu c.int f0/0.10(进入子接口) d.en dot 10(对vlan配置协议)
      e.ip add 192.168.10.254 255.255.255.0(配置网关地址) f.no shu

    access和truck 主要是区分VLAN中交换机的端口类型,俩者区别如下:

    • 端口用途不同:truck端口为与其它交换机端口相连的VLAN汇聚口,access端口为交换机与VLAN域中主机相连的端口;
    • trunk一般是打tag标记的,一般只允许打了该tag标记的vlan 通过,所以该端口可以允许多个打tag标记的vlan 通过,而access端口一般是untag不打标记的端口,而且一个access vlan端口只允许一个access vlan通过。

    STP端口状态:

    • Blocking:非指定端口,不转发帧(frame)(从上向下状态慢慢改变。)
    • Listening:侦听数据帧。不学习MAC地址和不转发帧。有转发延迟15秒。
    • Learning:学习构建MAC地址。不转发frame,有延迟15S。
    • Forwarding:RP和DP端口,转发frame,同时学习地址。

    RIP协议

    • 当一台路由器,同时运行了两种不同的动态路由选择协议,学习到去往同一个目的地的路由,这时比较AD值,取AD值小的路径转入路由表,另一个只会在优选路径DOWN时,才会出现和使用。

    • 一台路由器,当他从同种动态路由协议中,去往同一个目的地但不同方向时,则比较metric度量值,选择优先的,转入路由表,进行数据的转发使用。
      避免环路机制:(二层采用STP生成树协议)

    • 定义最大的跳数。16跳不可达

    • 水平分割:默认开启,交换路由信息单方向可达。

    • 路由中毒:路由断掉了以后,将该路由跳数变得很大。

    • 毒性反转:

    • 印制计数器:

    • 触发更新:不用等到更新周期到来,直接更新。

    • RIP基于UDP,端口是520的应用层协议。

    • 管理性距离:120;
      1、router rip 2、network 192.168.12.0(网段)

    • 注意双向配置,才能ping通,查看show ip route


    OSPF协议:

    • SPF算法(二层采用STP生成树协议):采用此算法计算到达目的地的最短路径 。

    • 管理距离值:120

    • 在路由之间交换传送的是链路状态(即LSA),不是路由表。(链路状态指:路由接口和描述接口以及与其邻居之间的关系。)

    • 接口开销计算公式:cost=10的8次方/入接口带宽(b/s)。
      OSPF报文类型:

    • Hello:建立和维护OSPF邻居关系。

    • DBD:链路状态数据库描述信息(描述LSDB中LSA头部信息)。

    • LSR:链路状态请求,向OSPF邻居请求链路信息。

    • LSU:链路状态更新(包含一条或多条LSA)

    • LSAck:对LSU中的LSA进行确认。

    OSPF的基本运行步鄹:

    • 1、建立邻接关系。hello包。通过组播地址:224.0.0.5发送给运行了OSPF协议的路由器。
    • 2、必要时(多路型访问和以太网访问时才选举)进行DR和BDR的选举(DR:选举代表,其他人都要和DR建立邻居信息,BDR,备份选举人。)。
    • 2、1:目的:减小LSA泛洪信息。DR选举规则:选取接口优先级最高的,默认优先级都是1,如果所有的路由器优先级都相等,则比较Route-ID的大小,这个是唯一的,ID大的则选举成DR,次大的选取位BDR。DR具有非抢占性,如果稳定,则不会更新。
    • 2、2:route—ID:手工配置或者自动获取(如果配置了Loopback接口,则选择最高的Loopback的IP地址,否则选取最高的活跃的物理地址。(ID是全网唯一的))。
    • 3、发现路由。
    • 4、选择合适的路由。
    • 5、维护路由信息。

    LSA泛洪:

    • DR和BDR监听224.0.0.6这一组播地址。

    • DR利用组播地址224.0.0.5通知其他路由器。

    • 所有的OSPF路由器监听224.0.0.5这一组播地址。
      OSPF配置:

    • 开启OSPF进程:router ospf process-id

    • 宣告特定的网络到OSPF区域:network address wildcard-mask area area-id


    ACL功能:

    • 匹配感兴趣的流量。
    • 流量控制。
      标准访问控制流量
    • 根据源地址做过滤。
    • 针对整个协议采取相关动作。
    • 1-99 1300-1999
    • 扩展访问控制列表
    • 能根据源,目的地址,端口号等待进行过滤。
    • 能允许或拒绝特定的协议。
    • 编号区间:100-199 2000-2699
      应用时要求关联方向,如果关联的进站方向,则只影响从这个接口进站的流量有影响。
    • 两个标准默认均是丢弃。
    • 不能编辑一行或删除一行。(刷脚本的方式)。
      ACL只能对穿越本地路由器的流量做过滤,不能对路由器本地始发的流量做过滤。
    • 在特定接口的某个方向(in,out),针对某种协议,只能应用一个ACL。

    为啥需要NAT:

    • IPv4 的地址即将枯竭。缓解ipv4枯竭问题,
    • IPv6是128位。
    • NAT,私有地址转化位公有地址,主机就可以访问公网了。
    • 内部本地,内部全局概念:p55.
      静态NAT
    • 一对一转化。
      动态NAT
    • 定义一个ip池,合法的共有IP地址,需要就拿一个ip,用完了就归还,实际上还是一对一。
      端口复用(PAT)
    • 又称端口地址转换,首先是一个动态地址转化,路由器通过记录地址应用程序端口等唯一标识一个转换。
    • 真正的解决了IPv4 地址枯竭问题。
  • 相关阅读:
    Prommetheus 插件监控 ES
    Linux LVM条带化
    MYSQL wait_timeout以及connect_timeout.这两个有什么区别
    alertmanager配置文件说明(转载)
    腾讯云MongoDB: skip查询内核优化(转载)
    MongoDB主从复制介绍和常见问题说明(转载)
    MongoDB 批量更新、批量新增、批量删除、批量替换 —— bulkWrite操作
    MongoDB Cluster 数据平衡优化
    MongoDB副本集提高读写速率
    Postgresql中时间戳与日期的相互转换(同样适用于GreenPlum)
  • 原文地址:https://www.cnblogs.com/lixianhu1998/p/13122242.html
Copyright © 2011-2022 走看看