冲突解决

This commit is contained in:
estomm
2019-10-22 12:44:04 +08:00
10 changed files with 297 additions and 46 deletions

View File

@@ -74,3 +74,29 @@
-----
# 无线网络和移动网络
=======
协议与技术目录
## 应用层协议
## 传输层协议
### TCP协议
### UDP协议
## 网络层协议
### IPV4协议
### IPV6协议
### CIDR编址
### NAT/NPAT网络地址转换
### ICMP网络控制报文协议
### RIP路由信息协议
### OSPF开放最短路优先
### BGP协议
### ARP地址解析协议
## 链路层协议

View File

@@ -102,6 +102,7 @@
### HOL
如果交换结构不能快得使所有分组都能无时延的通过它传送则在输入端口也将出现分组排队。输入队列按照FCFS工作
<<<<<<< HEAD
## 6 路由器环回接口
@@ -261,4 +262,4 @@ ip route 215.34.10.0 255.255.252.0 Serial 5/0
看上去用传输层和IP层的方法来处理环回数据似乎效率不高但它简化了设计因为环回接口可以被看作是网络层下面的另一个链路层。网络层把一份数据报传送给环回接口就像传给其他链路层一样只不过环回接口把它返回到IP的输入队列中。
另一个隐含的意思是送给主机本身IP地址的IP数据报一般不出现在相应的网络上。例如在一个以太网上分组一般不被传出去然后读回来。某些BSD以太网的设备驱动程序的
另一个隐含的意思是送给主机本身IP地址的IP数据报一般不出现在相应的网络上。例如在一个以太网上分组一般不被传出去然后读回来。某些BSD以太网的设备驱动程序的

View File

@@ -219,4 +219,40 @@ IPv6地址有三种类型单播、多播和任意点播。广播地址已不
![](\image/ipv6多播.png)
1. 多播:一组接口(一般属于不同节点)的标识符。送往一个多播地址的包将被传送至有该地址标识的所有接口上。
1. 多播:一组接口(一般属于不同节点)的标识符。送往一个多播地址的包将被传送至有该地址标识的所有接口上。
## 7 常见地址说明
### MAC地址
### IPV4地址
### IPV6地址
### 广播地址
主机位都为1是广播地址。
### 网络地址(网络号)、主机地址(主机号)、子网掩码
将IP地址分为网络地址与主机地址。通过子网掩码就可以判断两个IP在不在一个局域网内部。子网掩码可以看出有多少位是网络号有多少位是主机号。
### 网关接口
网间连接器、协议转换器。实现局域网与广域网的互联。
## 8 常见表格说明
### 路由表
### 交换机表
### ARP表
### NAT表

View File

@@ -75,3 +75,58 @@ BGP是因特网中使用的自制系统间的选路协议它极其复杂。
基于一棵基于源的树进行多播 选路该方法为多播组中的每个源构建一颗多播选路数。实际中采用了RPF算法来构建该树同时使用剪枝算法来修正该树。剪枝算法是指如果一台路由器接收到了娿一个多播分组而它无加入到该分组的主机就向其上游发送一个剪枝报文收到该剪枝报文的路由器将不会向该路由器转发该多播组的分组如果一台路由器的每个下游路由器都向它发送了剪枝报文它就向其上游发送一个剪枝报文。
因特网中使用的多播选路算法有DVMRPDistance Vector Multicast Routing Protocol和PIMProtocol-Independent Multicast
## 6 ARP地址解析协议
MAC地址到IP地址的映射
网络层用于在因特网中标识主机并为主机之间提供选路和转发功能但是物理上一个接口能否接收报文则取决于它的链路层地址。对于广播和组播IP地址和链路层地址之间的关系是有固定算法的所以很容易由IP地址得到链路层地址但是对于单播就必须有一种方法来将IP地址和链路层地址关联起来在IPv4中这是通过地址解析协议ARP来实现的。ARP为IP地址和对应的硬件地址之间提供了动态映射。
### 多播地址的MAC地址
IPv4中多播地址与MAC地址的对应关系如图
![](\\image/多播mac地址.png)
即MAC地址的高25比特固定为00000001 00000000 01011110 0低23比特取自IP多播地址的低23比特。由于除了作为前缀的4个比特之外还有5个比特未进入MAC地址因而一个MAC多播地址对应了32个IP多播地址。
IPv6中多播地址与MAC地址的对应关系如图
![](\\image/多播mac地址2.png)
即MAC地址的高16比特固定为3333低32比特取自IP多播地址的低32比特。
### ARP报文
![](\image/arp地址解析协议.png)
* 以太网报头中的前两个字段是以太网的源地址和目的地址。目的地址为全1的特殊地址是广播地址。电缆上的所有以太网接口都要接收广播的数据帧。
* 两个字节长的以太网帧类型表示后面数据的类型。对于ARP请求或应答来说该字段的值为0x0806。
* 形容词hardware(硬件)和protocol(协议)用来描述ARP分组中的各个字段。例如一个ARP请求分组询问协议地址这里是IP地址对应的硬件地址这里是以太网地址
* 硬件类型字段表示硬件地址的类型。它的值为1即表示以太网地址。协议类型字段表示要映射的协议地址类型。它的值为0x0800即表示IP地址。它的值与包含IP数据报的以太网数据帧中的类型字段的值相同。
* 接下来的两个1字节的字段硬件地址长度和协议地址长度分别指出硬件地址和协议地址的长度以字节为单位。对于以太网上IP地址的ARP请求或应答来说它们的值分别为6和4。
* 操作字段指出四种操作类型它们是ARP请求值为1、ARP应答值为2、RARP请求值为3和RARP应答值为4我们在第5章讨论RARP。这个字段必需的因为ARP请求和ARP应答的帧类型字段值是相同的。
* 接下来的四个字段是发送端的硬件地址在本例中是以太网地址、发送端的协议地址IP地址、目的端的硬件地址和目的端的协议地址。注意这里有一些重复信息在以太网的数据帧报头中和ARP请求数据帧中都有发送端的硬件地址。
* 对于一个ARP请求来说除目的端硬件地址外的所有其他的字段都有填充值。当系统收到一份目的端为本机的ARP请求报文后它就把硬件地址填进去然后用两个目的端地址分别替换两个发送端地址并把操作字段置为2最后把它发送回去。
### ARP原理
当一台主机需要和另一台主机通信时它会首先查找路由表来获得下一跳的信息如果下一跳信息中不包含MAC地址它就需要解析下一跳的MAC地址这时它就发送一个ARP请求到下一跳而下一跳收到该请求后就会发送一个ARP应答报文来告诉请求者它的MAC地址。在获得这个MAC地址之后主机就可以继续自己的通信过程了。
ARP请求报文是一个广播报文目的MAC地址为全F而源MAC地址为自己的MAC地址。负载中的信息包含了发送者的IP地址和MAC地址以及目的IP地址目的MAC地址为全0一个例子如图
![](\image/arp请求报文.png)
ARP响应报文是一个单播报文只会被发送给请求者。一个例子如图
![](image/arp响应报文.png)
### ARP代理
如果ARP请求是从一个网络的主机发往另一个网络上的主机那么连接这两个网络的路由器就可以回答该请求这个过程称作委托ARP或ARP代理(ProxyARP)。这样可以欺骗发起ARP请求的发送端使它误以为路由器就是目的主机而事实上目的主机是在路由器的“另一边”。路由器的功能相当于目的主机的代理把分组从其他主机转发给它。
### 免费ARP
一个ARP特性称作免费ARP(gratuitousARP)。它是指主机发送ARP查找自己的IP地址。通常它发生在系统引导期间进行接口配置的时候。
免费ARP可以有两个方面的作用
一个主机可以通过它来确定另一个主机是否设置了相同的IP地址。
如果发送免费ARP的主机正好改变了硬件地址很可能是主机关机了并换了一块接口卡然后重新启动那么这个分组就可以使其他主机高速缓存中旧的硬件地址进行相应的更新。一个比较著名的ARP协议事实[Plummer1982]是如果主机收到某个IP地址的ARP请求而且它已经在接收者的高速缓存中那么就要用ARP请求中的发送端硬件地址如以太网地址对高速缓存中相应的内容进行更新。主机接收到任何ARP请求都要完成这个操作ARP请求是在网上广播的因此每次发送ARP请求时网络上的所有主机都要这样做
5.IPv6的地址解析
IPv6不适用ARP协议而是使用ICMPv6协议中的ND(neighbor discover)来完成对应的解析过程。

View File

@@ -1,25 +0,0 @@
# OSPF 实验
> 兄弟,停下来把,这种抄书行为有点愚蠢。
## 1 OSPF协议概述及基本配置
### 实验原理
开放最短路优先协议OSPF基于链路状态算法的内部网关协议。每一台路由器将其周边的链路状态描述出来发送给网络中相邻的路由器。经过一段时间的链路状态信息交互每台路由器都保存了一个链路状态数据库该数据库是整个网络完整的链路状态描述。
特点
* 适应范围广
* 收敛速度快
* 无自环
* 支持验证、组播发送、路由分级、等值路由等功能。
自治系统和区域
自治系统Autonomy System,AS是由同一机构管理的使用同一组选路策略的路由器的集合。能够决定在本系统内部采用何种路由选择协议。
区域
值一个路由器的集合相同的区域有相同的拓扑结构数据库。OSPF把AS划分成多个链路状态域。
### 基本配置

View File

@@ -78,6 +78,53 @@ RJ-45连接器水晶头。包括直通线和交叉线两种接线方式。
* 通过Telnet远程登录进行相关配置
## 4 报文分析软件
# MTU
mtu 100
undo mtu
# speed
speed [100|10|negotiation] //100M,10M,自动协商
# display
display interfaces ethernet number
```
### 交换机以太网端口视图
```
shutdown
undo shutdown
duplex full //设置全双工状态
undo duplex //回复以太网全双工状态
spreed [10|100|auto]
mdi [across|auto|normal] //设置接口网线类型
flow-control //流量控制
undo flow-control //解除流量控制
port link-type [acces|hybrid|trunk] //设置接口链路类型
undo port link-type
display interface Ethernet1/0/1
```
### VLAN视图
### VLAN接口视图
### RIP视图
### OSPF视图
### ACL视图
## 5 简单局域网组建实验

View File

@@ -1,12 +1,16 @@
# BGP实验
目录
1. BGP基本分析
1. BGP协议基本分析
2. 状态机的分析
3. BGP的路由聚合
4. BGP的基本路由属性分析
5. BGP的同步机制
6. BGP的路由策略及应用
7. BGP设计型实验
@@ -17,9 +21,25 @@
## 1 BGP基本分析
BGP的路由只包含BGP路由器。仅指明下一跳。
BGP组成的AS之间的网络结构拓扑图是全连接的并不是。
BGP协议中带有很多属性信息便于进行路由策略和路由过滤。
对于路由的routing-table来说OSPF与BGP是一样的他们只是不同的路由信息传播策略与路由信息生成策略。但具体的路由过程是完全一致的。
也就是说,最终都要提供目的地址和下一跳地址,生成路由表,进行路由转发。
## 2 状态机的分析
## 3 BGP的路由聚合
## 4 BGP的基本路由属性分析
## 5 BGP的同步机制
## 6 BGP的路由策略及应用
路由策略可以分为三类
* 路由发布
* 路由接受
* 路由引入
*
## 7 BGP设计型实验

View File

@@ -11,7 +11,7 @@
- [BGP报文交互中的角色](#bgp%e6%8a%a5%e6%96%87%e4%ba%a4%e4%ba%92%e4%b8%ad%e7%9a%84%e8%a7%92%e8%89%b2)
- [BGP的路由器号Router ID](#bgp%e7%9a%84%e8%b7%af%e7%94%b1%e5%99%a8%e5%8f%b7router-id)
- [BGP路由生成](#bgp%e8%b7%af%e7%94%b1%e7%94%9f%e6%88%90)
- [BGP与IGP交互机制](#bgp%e4%b8%8eigp%e4%ba%a4%e4%ba%92%e6%9c%ba%e5%88%b6)
- [BGP与IGP交互机制-路由注入方式](#bgp%e4%b8%8eigp%e4%ba%a4%e4%ba%92%e6%9c%ba%e5%88%b6-%e8%b7%af%e7%94%b1%e6%b3%a8%e5%85%a5%e6%96%b9%e5%bc%8f)
- [3 BGP工作原理](#3-bgp%e5%b7%a5%e4%bd%9c%e5%8e%9f%e7%90%86)
- [3.1 BGP的报文](#31-bgp%e7%9a%84%e6%8a%a5%e6%96%87)
- [BGP报文头](#bgp%e6%8a%a5%e6%96%87%e5%a4%b4)
@@ -38,7 +38,9 @@
- [MED属性](#med%e5%b1%9e%e6%80%a7)
- [Community团体属性](#community%e5%9b%a2%e4%bd%93%e5%b1%9e%e6%80%a7)
- [Originator_ID属性和Cluster_List属性](#originatorid%e5%b1%9e%e6%80%a7%e5%92%8cclusterlist%e5%b1%9e%e6%80%a7)
- [6 BGP选择路由策略](#6-bgp%e9%80%89%e6%8b%a9%e8%b7%af%e7%94%b1%e7%9a%84%e7%ad%96%e7%95%a5)
- [6 BGP路由策略](#6-bgp%e8%b7%af%e7%94%b1%e7%ad%96%e7%95%a5)
- [路由策略分类](#%e8%b7%af%e7%94%b1%e7%ad%96%e7%95%a5%e5%88%86%e7%b1%bb)
- [路由策略实施机制](#%e8%b7%af%e7%94%b1%e7%ad%96%e7%95%a5%e5%ae%9e%e6%96%bd%e6%9c%ba%e5%88%b6)
- [与路由选择相关的过滤器](#%e4%b8%8e%e8%b7%af%e7%94%b1%e9%80%89%e6%8b%a9%e7%9b%b8%e5%85%b3%e7%9a%84%e8%bf%87%e6%bb%a4%e5%99%a8)
- [路由选择](#%e8%b7%af%e7%94%b1%e9%80%89%e6%8b%a9)
- [7 BGP的其他机制](#7-bgp%e7%9a%84%e5%85%b6%e4%bb%96%e6%9c%ba%e5%88%b6)
@@ -95,6 +97,13 @@ BGP按照运行方式分为EBGPExternal/Exterior BGP和IBGPInternal/Int
* EBGP运行于不同AS之间的BGP称为EBGP。为了防止AS间产生环路当BGP设备接收EBGP对等体发送的路由时会将带有本地AS号的路由丢弃。
* IBGP运行于同一AS内部的BGP称为IBGP。为了防止AS内产生环路BGP设备不将从IBGP对等体学到的路由通告给其他IBGP对等体并与所有IBGP对等体建立全连接。为了解决IBGP对等体的连接数量太多的问题BGP设计了路由反射器和BGP联盟。
BGP设备将最优路由加入BGP路由表形成BGP路由。BGP设备与对等体建立邻居关系后采取以下交互原则
1. 从IBGP对等体获得的BGP路由BGP设备只发布给它的EBGP对等体。
2. 从EBGP对等体获得的BGP路由BGP设备发布给它所有EBGP和IBGP对等体。
3. 当存在多条到达同一目的地址的有效路由时BGP设备只将最优路由发布给对等体。
4. 路由更新时BGP设备只发送更新的BGP路由。
5. 所有对等体发送的路由BGP设备都会接收。
### BGP报文交互中的角色
BGP报文交互中分为Speaker和Peer两种角色。
@@ -114,7 +123,7 @@ BGP的Router ID在BGP网络中必须是唯一的可以采用手工配置
* 半动态注入路由器选择性的将IGP发现的动态路由信息注册到BGP当中。
* 静态注入静态配置某条路由到BGP当中。
### BGP与IGP交互机制
### BGP与IGP交互机制-路由注入方式
BGP与IGP在设备中使用不同的路由表为了实现不同AS间相互通讯BGP需要与IGP进行交互即BGP路由表和IGP路由表相互引入。
@@ -277,13 +286,7 @@ Route-refresh报文不会改变BGP状态。
* 如果收到TCP拆链通知那么BGP断开连接转至Idle状态。
## 3.3 BGP对等体之间的交互原则
BGP设备将最优路由加入BGP路由表形成BGP路由。BGP设备与对等体建立邻居关系后采取以下交互原则
1. 从IBGP对等体获得的BGP路由BGP设备只发布给它的EBGP对等体。
2. 从EBGP对等体获得的BGP路由BGP设备发布给它所有EBGP和IBGP对等体。
3. 当存在多条到达同一目的地址的有效路由时BGP设备只将最优路由发布给对等体。
4. 路由更新时BGP设备只发送更新的BGP路由。
5. 所有对等体发送的路由BGP设备都会接收。
BGP路由通告原则
1. 连接建立时BGP Speaker只把本身用的最优路由通告给对等体。
@@ -373,14 +376,25 @@ MED属性仅在相邻两个AS之间传递收到此属性的AS一方不会再
### Originator_ID属性和Cluster_List属性
Originator_ID属性和Cluster_List属性用于解决路由反射器场景中的环路问题。
## 6 BGP选择路由策略
## 6 BGP路由策略
### 路由策略分类
* 路由发布
* 路由接受
* 路由引入
### 路由策略实施机制
![](image/BGP路由策略处理过程.png)
### 与路由选择相关的过滤器
* 路由策略。设定匹配条件,属性匹配后进行设置操作。
* 访问控制列表。匹配路由信息的目的网段地址或吓一跳地址,过滤不符合条件的路由信息。
* 前缀列表。匹配路由信息的目的地之或直接作用于路由器对象
* 自制系统路径信息访问控制列表。匹配BGP路由信息
* 团体属性列表。匹配BGP路由信息的自治系统域。
* 路由策略routing policy。设定匹配条件,属性匹配后进行设置操作。
* 访问控制列表(Access Conrole list)。匹配路由信息的目的网段地址或吓一跳地址,过滤不符合条件的路由信息。
* 前缀列表(IP-Prefix)。匹配路由信息的目的地之或直接作用于路由器对象
* 自制系统路径信息访问控制列表(AS-Path List)。匹配BGP路由信息
* 团体属性列表(Community-list)。匹配BGP路由信息的自治系统域。
### 路由选择
@@ -418,7 +432,11 @@ PE上某个VPN实例的VPNv4路由的ERT匹配其他VPN实例的IRT后复制到
### 路由聚合
在大规模的网络中BGP路由表十分庞大给设备造成了很大的负担同时使发生路由振荡的几率也大大增加影响网络的稳定性。
路由聚合是将多条路由合并的机制,它通过只向对等体发送聚合后的路由而不发送所有的具体路由的方法,减小路由表的规模。并且被聚合的路由如果发生路由振荡,也不再对网络造成影响,从而提高了网络的稳定性。
路由聚合是将多条路由合并的机制,它通过只向对等体发送聚合后的路由而不发送所有的具体路由的方法,减小路由表的规模。并且被聚合的路由如果发生路由振荡,也不再对网络造成影响,从而提高了网络的稳定性。路由聚合的优点:
* 只通告聚合路由
* 聚合但一直特定的具体路由
* 改变聚合路由的AS路径属性
* 聚合时生成AS-SET集合
BGP在IPv4网络中支持自动聚合和手动聚合两种方式而IPv6网络中仅支持手动聚合方式
@@ -429,6 +447,8 @@ BGP在IPv4网络中支持自动聚合和手动聚合两种方式而IPv6网络
为了避免路由聚合可能引起的路由环路BGP设计了AS_Set属性。AS_Set属性是一种无序的AS_Path属性标明聚合路由所经过的AS号。当聚合路由重新进入AS_Set属性中列出的任何一个AS时BGP将会检测到自己的AS号在聚合路由的AS_Set属性中于是会丢弃该聚合路由从而避免了路由环路的形成。
### BGP同步机制
BGP规定一个BGP路由器不讲从内部BGP对等体得到的路由信息通告给外部对等体除非该路由信息也能通过IGP得到。
### BGP安全性
BGP使用认证和通用TTL安全保护机制GTSMGeneralized TTL Security Mechanism两个方法保证BGP对等体间的交互安全。

View File

@@ -231,6 +231,7 @@ display ip routing-table
```
## 4 OSPF协议实验
### OSPF基本配置
```
# display ospf命令的说明下面是三个不同的表格。
display ospf peer //显示的是邻居信息,有几个邻居路由器
@@ -269,8 +270,78 @@ display adjacent-table //显示邻接信息。
```
## 4 交换机系统视图
## 5 BGP实验
### BGP 基本分析
```
# 启动BGP进程
bgp 100 //启动bgp指定as号
router-id 1.1.1.1 //配置BGP的router-id
# 配置BGP对等体配置BGP对等体时如果指定对等体所属的AS编号与本地AS编号相同表示配置IBGP对等体。如果指定对等体所属的AS编号与本地AS编号不同表示配置EBGP对等体。为了增强BGP连接的稳定性推荐使用路由可达的Loopback接口地址建立BGP连接。
[BGP]peer 12.1.1.1 as-number 100 //创建BGP对等体
[BGP]peer 12.1.1.1 connet-interface lookback 0 //指定发送BGP报文的源接口并可指定发起连接时使用的源地址。缺省情况下BGP使用报文的出接口作为BGP报文的源接口。
[BGP]peer 12.1.1.1 ebgp-max-hop 2 //指定建立EBGP连接允许的最大跳数。 缺省情况下EBGP连接允许的最大跳数为1即只能在物理直连链路上建立EBGP连接。
[BGP]peer peer 3.1.1.2 next-hop-local //强制下一跳地址为自身。用来配置IBGP。
# 配置BGP对等体组只能用来配置EBGP
group 1 [ external | internal ]//创建对等体组。
peer 1 as-number 100//配置EBGP对等体组的AS号。
peer 12.1.1.2 group 1//向对等体组中加入对等体
# 配置BGP引入路由BGP协议本身不发现路由因此需要将其他路由如IGP路由等引入到BGP路由表中从而将这些路由在AS之内和AS之间传播。BGP协议支持通过以下两种方式引入路由
Import方式按协议类型将RIP路由、OSPF路由、ISIS路由等协议的路由引入到BGP路由表中。为了保证引入的IGP路由的有效性Import方式还可以引入静态路由和直连路由。
Network方式逐条将IP路由表中已经存在的路由引入到BGP路由表中比Import方式更精确。
import-router protocol //引入路由
default-route imported//允许BGP引入本地IP路由表中已经存在的缺省路由。
network 1.1.1.1 mask //配置BGP逐条引入IPv4路由表或IPv6路由表中的路由。
```
### BGP状态转换分析
```
[user]debugging bgp event
[user]terminal debugging
[user]reset bgp all
[user]display bgp peer //可以显示bgp邻居信息用来查看对等体是否已经建立。
[user]display bgp routing-table peer ip-address advertised-routes/received-routes //用来检查bgp通告的路由信息
[user]display bgp routing-table
```
### BGP路由聚合
```
[R]bgp 100
[R-bgp]aggregate 192.168.0.0 255.255.240.0 [detail-suppressed]//同网段路由聚合。当有detail-suppressed的时候只通告聚合路由。
[R-bgp]undo aggregate 192.168.0.0 255.255.240.0
```
### BGP路由属性
```
# 路由引入
import-route direct
```
### BGP的路由策略
```
# 访问控制列表
[R]acl number acl-number
[R-acl-number]rule rule-number permit|deny source-addr source-addr-mask | any//定义acl过滤规则
[R]peer 10.0.0.1 filter-policy acl-number {export|import}//应用acl访问控制列表
# 自制系统路径信息访问列表
ip as-path-acl as-path-acl-number {permit|deny} as-regular-expression//定义AS-path过滤规则
peer peer-address as-path-acl as-path-acl-number {import|export}//应用对等体的AS路径过滤器。
# 路由策略
route-policy policy-name {permit|deny}node node-number//定义route-policy路由策略过滤规则
peer peer-address route-policy policy-name {import|export}//应用对等体路由策略
if-match
apply//使用对等体路由策略
# 复位BGP
reset bgp all|peer-id
```

Binary file not shown.

After

Width:  |  Height:  |  Size: 72 KiB