路由基本概念3——路由引入

本文详细介绍了路由引入的概念,包括基本原理、初始度量值设定,以及单点单向、双点单向、单点双向和双点双向四种引入方式。在路由引入过程中可能出现次优路径和路由环路问题,解决方案包括调整路由优先级、过滤和使用Tag技术。通过实例分析,展示了不同引入方式下的网络行为,为网络管理员提供了解决路由问题的参考。
摘要由CSDN通过智能技术生成

目录

路由引入概念

基本概念

路由引入的初始度量值

路由引入更深入的讲解

路由引入的方式

不同路由引入方式存在的问题

单点单向引入场景

双点单向引入

单点双向引入

双点双向引入


路由引入概念

基本概念

路由引入(import注入、redistribute重发布)

为什么需要路引入

由于不同路由协议之间的路由算法、机制、开销等不同,不同的路由协议之间无法直接分享彼此的路由;此时就需要通过路由引入技术将某个路由协议的路由引入到另一个路由协议中也可以相同路由协议之间引入

路由引入的原则

在执行引入的路由器上将某一个协议的活动路由(即引入的路由必须存在于路由表中引入到另外一个路由协议中

注意事项

执行引入的路由器必须同时运行此两种/多种路由协议,才可以执行引入

负责引入的路由器不会改变自身的路由表,引入是外向的,只改变别人,不改变自己

在进行路由引入时,可能会带来次优路径、路由环路等问题(常见的解决方法有修改路由优先级、路由Cost,路由Tag等技术)

假设在设备1上将路由协议A引入到路由协议B,哪些路由会被引入B

设备1从A协议学习到的路由会被引入B协议

设备1上启用了A协议的接口所在的网络路由会被引入B协议

路由引入的初始度量值

华为设备

  • 将其它协议引入到OSPF,默认开销为1,Type2,路由优先级为150(可以通过default cost修改初始度量值)
  • 将其它协议引入到ISIS,默认开销为0,Level-2,路由优先级为15(可以通过default cost修改初始度量值)
  • 将其它协议引入到BGP,默认开销为IGP的度量值,路由优先级为255(可以通过default med修改初始度量值)

路由引入更深入的讲解

在AR10上做路由引入

将RIP的路由引入到ISIS中,然后再将ISIS引入到OSPF中

此时AR11可以学习到哪个网段的路由(只可以学习到30.1.1.0/24和13.13.13.13的路由)

将RIP引入到ISIS,此时使得AR13通过ISIS学习到了RIP的路由;

由于是在AR10上做的引入,所以AR10在引入后关于ISIS的路由与在引入前关于ISIS的路由是相同的,都是只有30.1.1.0/24和13.13.13.13的路由

此时再在AR10上将ISIS引入到OSPF,OSPF只可以学习到30.1.1.0/24和13.13.13.13的路由,无法学习到20.1.1.0/24和12.12.12.12的路由

在AR13上将将RIP的路由引入到ISIS中

在AR10上然后再将ISIS引入到OSPF中

此时AR11可以学习到那个网段的路由(可以学习到30.1.1.0/24、20.1.1.0/24、13.13.13.13、12.12.12.12)的路由

在AR13上将RIP引入到ISIS,此时AR10关于ISIS的路由表学习到了20.1.1.0/24和12.12.12.12的路由

在AR10上将ISIS引入到OSPF,此时AR11就可以学习到30.1.1.0/24、20.1.1.0/24、12.12.12.12、13.13.13.13的路由了


路由引入的方式

单点双向路由引入

 单点单向路由引入(需要下发缺省路由实现互访)

 多点双向路由引入(此处为双点双向)

 多点单向路由引入

 同单点单向,需要下发缺省路由实现互访


不同路由引入方式存在的问题

单点单向引入场景

什么是单点单向

单点单向:在一台设备上,将某个协议路由引入到另一个协议路由中

单点单向可能造成的问题——次优路径

在单点单向引入场景中,如果将低路由优先级引入到高路由优先级中,可能会存在次优路径;将高路由优先级引入到低路由优先级中,则不会存在次优路径

次优场景

在AR5上将RIP引入到ISIS 中

AR4、AR6通过ISIS学习到7.7.7.7,优先级为15

由于AR6在AR5进行路由引入前已经通过RIP学习到了7.7.7.7的路由,优先级为100;所以在AR5进行路由引入后,发现通过ISIS学习到的7.7.7.7的路由优先级更高

此时AR6访问7.7.7.7会使用ISIS学习到的路由(AR6-AR4-AR5-AR7),造成次优路径

如何解决次优路径——通过调整路由的优先级或过滤路由来实现

1、在AR6上将AR5引入的路由的优先级调低(低于RIP的路由优先级,即将优先级数值调到高于100)

2、在AR6上将从RIP学来的路由优先级调高(高于ISIS的路由优先级,即将优先级数值调到小于15)

3、由于AR6已经有RIP和ISIS的地址了,所以可以对从AR5引来的路由做过滤

双点单向引入

什么是双点单向

双点单向:在两台设备上,将某个协议路由引入到另一个协议路由中

双点单向可能造成的问题——会造成次优、路由回馈、环路场景

在双点单向引入场景中,如果将低路由优先级引入到高路由优先级中,可能会存在次优路径;将高路由优先级引入到低路由优先级中,则不会存在次优路径

在双点单向引入场景中,会有路由回馈的场景(R1和AR2设备同时运行了A协议和B协议,此时在AR1上将A引入B,在AR2上将B引入A,将从A协议学到的路由又引入到A协议中,就称为路由回馈),如果发生了路由回馈现象可能会引起环路

次优场景

在此场景中,AR5和AR6只有一个会有次优(具体谁会次优要看AR5和AR6谁先做的引入)

假如AR5先将RIP引入到ISIS,然后AR6再将RIP引入到ISIS

此时AR5将RIP引入到ISIS,造成AR6去往7.7.7.7次优

此时AR6关于RIP的路由表就没有7.7.7.7了,所以此时在AR6上将RIP引入到ISIS中时不引入7.7.7.7

AR5去往7.7.7.7也不会次优

如何解决次优路径——通过调整路由的优先级或过滤路由来实现

1、在AR6上对AR5引入的路由修改优先级(高于ISIS的路由优先级,即将优先级数值调到小于15);在AR5上对AR6引入的路由也修改优先级(高于ISIS的路由优先级,即将优先级数值调到小于15)

2、在AR6上对AR5引入的路由修改优先级(高于ISIS的路由优先级,即将优先级数值调到小于15);在AR5上对AR6引入的路由也修改优先级(高于ISIS的路由优先级,即将优先级数值调到小于15)

3、在AR5上对AR6引入的路由进行过滤,在AR6上对AR5引入的路由进行过滤

次优与环路同时存在场景

将8.8.8.8通过Type2方式引入到OSPF中,设置Cost为2(默认为1)

然后在AR5上将OSPF引入到ISIS中,在AR6上将ISIS引入到OSPF

将8.8.8.8引入到OSPF中;此时AR4、AR5、AR6学习到8.8.8.8的路由,优先级为150,Cost为2;此时AR4、5、6访问8.8.8.8去往AR8,正常

在AR5上将OSPF引入到ISIS中;此时AR6学习到8.8.8.8的路由,优先级为15(将之前优先为150的替换);此时AR6访问8.8.8.8去往AR7,AR6访问8.8.8.8就造成次优路径(单点单向造成次优);AR4和AR5去往8.8.8.8还是正常路径,无次优

在AR6上将ISIS引入到OSPF中(路由回馈);此时AR6去往8.8.8.8的路由是从ISIS学到的,将ISIS引入到OSPF时,此时AR4会从AR6学习到8.8.8.8的路由,优先级为150,Cost为1,Type为2(将之前Cost为2,Type为2的路由替换);此时AR4访问8.8.8.8就去往AR6,AR5访问8.8.8.8去往AR4,AR6访问8.8.8.8去往AR5;在此场景下就形成了路由环路

如何解决次优与环路问题——通过优先级、过滤或Tag解决

1、在AR6上将AR5引入的路由优先级调低,此时AR6去往8.8.8.8就走OSPF,然后在AR6上引入ISIS时就不会引入8.8.8.8的路由了,避免了路由环路与次优

2、在AR6上对AR5引入的路由进行过滤,此时AR6去往8.8.8.8就走OSPF,然后在AR6上引入ISIS时就不会引入8.8.8.8的路由了,避免了路由环路与次优

3、只使用优先级、过滤可以解决次优与环路问题,不过无法解决路由回馈问题,可以使用tag技术来避免路由回馈,在AR5上将OSPF引入ISIS时打上Tag 10,然后在AR6上将ISIS引入OSPF时拒绝引入Tag 10;在AR6上将ISIS引入OSPF时打上Tag 20,然后在AR5上将OSPF引入ISIS时拒绝Tag 20;此时就不存在路由回馈

注意:此场景下Tag只可以解决路由回馈问题,无法解决次优路径问题

单点双向引入

什么是单点双向

单点双向:在一台设备上,将A协议路由引入到B协议路由中,然后再将B协议路由引入到A协议路由中

单点双向可能引起路由次优,不会引起路由回馈

在单点多向引入场景中,如果将低路由优先级引入到高路由优先级中,可能会存在次优路径

因为在单点引入,此设备上的路由表不会发生变化,所以在进行引入是不会进行回馈

次优场景

在AR8上将8.8.8.8宣告进OSPF,在AR5上将ISIS引入OSPF,然后将OSPF引入ISIS

在AR5上将OSPF引入ISIS,AR6通过ISIS学到8.8.8.8优先级更高,AR6去往8.8.8.8的下一跳为AR7

在AR5上将ISIS引入OSPF,此时AR5上ISIS的路由表没有从OSPF引入的路由,所以将ISIS引入到OSPF时,不会发生路由回馈

可以通过通过优先级、过滤解决次优路径

1、在AR6上将AR5引入的路由优先级调低

2、在AR6上对AR5引入的路由进行过滤

双点双向引入

什么是双点双向

双点双向:在一台设备上,将A协议路由引入到B协议路由中,然后再将B协议路由引入到A协议路由中;在另一台设备上,将A协议路由引入到B协议路由中,然后再将B协议路由引入到A协议路由中

双点双向可能引起路由次优、路由环路,一定会存在路由回馈

根据做引入的顺序,解决方式的应用地点可能发生改变

次优与环路场景

将8.8.8.8通过Type2方式引入到OSPF中,设置Cost为2(默认为1)

在AR5上将OSPF引入到ISIS中,然后在AR6上将ISIS引入到OSPF(先)

在AR6上将OSPF引入到ISIS中,然后在AR5上将ISIS引入到OSPF(后)

在AR5上将OSPF引入到ISIS中,然后在AR6上将ISIS引入到OSPF;此时会造成次优与环路(就是多点单向)

在AR6上将OSPF引入到ISIS中,然后在AR5上将ISIS引入到OSPF;

解决上述问题后,此时在进行引入,又会出现环路和次优的问题(AR4去往8.8.8.8的下一跳为AR5,AR5的下一跳为AR7)

并且由于次优,使得双点双向无法实现负载分担(由于AR6关于8.8.8.8的路由是走ISIS,所以在AR6将OSPF引入ISIS后,AR7没有从AR6学习到6.6.6.6的路由;AR7对于8.8.8.8的路由无法负载或没有备份)

如何解决次优与环路、无备用路径的问题——通过优先级、过滤或Tag解决

1、在AR6上将AR5引入的路由优先级调低,此时AR6去往8.8.8.8就走OSPF;在AR5上将AR6引入的路由优先级调低,此时AR6将OSPF引入ISIS时AR6也不会产生次优

2、在AR6上对AR5引入的路由进行过滤,此时AR6去往8.8.8.8就走OSPF;在AR5上对AR6引入的路由进行过滤

3、只使用优先级、过滤可以解决次优与环路问题,不过无法解决路由回馈问题,可以使用tag技术来避免路由回馈,在AR5上将OSPF引入ISIS时打上Tag 10,然后在AR6上将ISIS引入OSPF时拒绝引入Tag 10;在AR6上将ISIS引入OSPF时打上Tag 20,然后在AR5上将OSPF引入ISIS时拒绝Tag 20;在AR6上将OSPF引入ISIS时打上Tag 30,然后在AR5上将ISIS引入OSPF时拒绝引入Tag 30;在AR5上将ISIS引入OSPF时打上Tag 40,然后在AR5上将OSPF引入ISIS时拒绝Tag 40;

以上解决次优、环路的方法不唯一,只是列举了其中比较常用的方式,具体解决方法根据现场环境进行解决即可

华为双点双向路由引入实验配置_静下心来敲木鱼的博客-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/m0_49864110/article/details/128679892?spm=1001.2014.3001.5501

好的,下面我来为您介绍一下如何使用vue-router实现用户登录注册功能。 首先,我们需要安装vue-router,可以通过以下命令进行安装: ``` npm install vue-router --save ``` 然后,在main.js中引入并使用vue-router: ``` import VueRouter from 'vue-router' Vue.use(VueRouter) ``` 接下来,我们新建一个router.js文件,用于配置路由。在该文件中,我们需要定义路由路径和路由组件: ``` import Vue from 'vue' import VueRouter from 'vue-router' import Login from './components/Login.vue' import Register from './components/Register.vue' Vue.use(VueRouter) const routes = [ { path: '/login', component: Login }, { path: '/register', component: Register } ] const router = new VueRouter({ routes }) export default router ``` 在上面的代码中,我们定义了两个路由路径:/login和/register,并分别对应了Login和Register两个组件。 接下来,在App.vue中,我们需要使用<router-view>标签来显示路由组件: ``` <template> <div id="app"> <router-view></router-view> </div> </template> ``` 最后,在main.js中引入router.js,并将其挂载到Vue实例中: ``` import Vue from 'vue' import App from './App.vue' import router from './router' Vue.config.productionTip = false new Vue({ router, render: h => h(App), }).$mount('#app') ``` 至此,我们已经完成了基本的路由配置。接下来,我们可以在Login和Register组件中实现具体的登录和注册功能。 在Login组件中,我们可以使用Vue.js提供的v-model指令来绑定表单输入的数据,并在点击登录按钮时向服务器发送请求验证用户名和密码: ``` <template> <div class="login"> <h1>登录</h1> <form> <label>用户名:</label> <input type="text" v-model="username"> <br> <label>密码:</label> <input type="password" v-model="password"> <br> <button @click.prevent="login">登录</button> </form> </div> </template> <script> export default { data() { return { username: '', password: '' } }, methods: { login() { // 向服务器发送请求验证用户名和密码 } } } </script> ``` 而在Register组件中,我们可以使用v-model指令来绑定表单输入的数据,并在点击注册按钮时向服务器发送请求创建新用户: ``` <template> <div class="register"> <h1>注册</h1> <form> <label>用户名:</label> <input type="text" v-model="username"> <br> <label>密码:</label> <input type="password" v-model="password"> <br> <label>确认密码:</label> <input type="password" v-model="confirmPassword"> <br> <button @click.prevent="register">注册</button> </form> </div> </template> <script> export default { data() { return { username: '', password: '', confirmPassword: '' } }, methods: { register() { // 向服务器发送请求创建新用户 } } } </script> ``` 到这里,我们已经完成了一个简单的用户登录注册功能,并使用vue-router实现了路由跳转。当用户访问/login时,会显示Login组件;当用户访问/register时,会显示Register组件。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

静下心来敲木鱼

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

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

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

打赏作者

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

抵扣说明:

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

余额充值