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 地址枯竭问题。
  • 相关阅读:
    Java 泛型 泛型的约束与局限性
    Java 泛型 泛型方法
    Java 泛型 泛型数组
    Java 泛型 协变性、逆变性
    Java 泛型 协变式覆盖和泛型重载
    Java 泛型 泛型代码和虚拟机
    Insertion Sort List
    Remove Duplicates from Sorted List II
    String to Integer (atoi)
    SpringMvc源码入门
  • 原文地址:https://www.cnblogs.com/lixianhu1998/p/13122242.html
Copyright © 2011-2022 走看看