第四部分,虚拟链路配置。我们都知道,在ospf多区域中,所有与主干区域(ospf0)相连接的其他区域可以相互学系路由信息,但是,如果是非主干区域和非主干区域相连,就不能相互学习路由信息,这时候,我们可以通过虚拟链路技术,即在主干区域和非主干区域之间建立一个逻辑链接,这样即把所有的非主干区域都连接到主干区域上,从而实现各区域相互学习路由信息。

网络拓扑图如下:

网络拓扑图上有5个ospf区域,正常情况下,R1路由表中只有ospf0、ospf1、ospf2三个区域中的路由信息,而与ospf3、ospf4无法通信,所以,使用pc0最多只能ping通R3的左边接口。要解决此问题,实现pc0ping通pc1,即在R2和R3之间建立一条虚拟链路,相当于把ospf3直接连接到ospf0,到这一步,ospf0、ospf1、ospf2、ospf3三个区域之间的路由信息已经可以互通。同理,现在ospf3相当于已经直接和主干区域(ospf0)相邻,与刚才部分同理,在R3和R4之间建立一条虚拟链路,达到ospf4直接与ospf0相连的效果,最后实现5个ospf区域路由表信息互相学习。

代码:

##基础配置

#r0

en
conf t
int f0/0
ip add 192.168.10.1 255.255.255.0
no shut
int s0/0/0
ip add 192.168.20.1 255.255.255.0
no shut
exit
route ospf 1
network 192.168.10.0 0.0.0.255 area 1
network 192.168.20.0 0.0.0.255 area 0

#r1

en
conf t
int s0/0/1
ip add 192.168.30.1 255.255.255.0
no shut
int s0/0/0
ip add 192.168.20.2 255.255.255.0
no shut
exit
route ospf 1
network 192.168.30.0 0.0.0.255 area 0
network 192.168.20.0 0.0.0.255 area 0

#r2

en
conf t
int s0/0/1
ip add 192.168.40.1 255.255.255.0
no shut
int s0/0/0
ip add 192.168.30.2 255.255.255.0
no shut
exit
int tunnel 1
tunnel source s0/0/1
tunnel destination 192.168.40.2
ip add 10.1.1.1 255.255.255.0
exit
router ospf 1
network 10.1.1.0 0.0.0.255 area 0
network 192.168.30.0 0.0.0.255 area 0
network 192.168.40.0 0.0.0.255 area 2

#r3

en
conf t
int s0/0/1
ip add 192.168.50.1 255.255.255.0
no shut
int s0/0/0
ip add 192.168.40.2 255.255.255.0
no shut
exit
int tunnel 1
tunnel source s0/0/0
tunnel destination 192.168.40.1
ip add 10.1.1.2 255.255.255.0
int tunnel 2
tunnel source s0/0/1
tunnel destination 192.168.50.2
ip add 20.1.1.1 255.255.255.0
exit
route ospf 1
network 10.1.1.0 0.0.0.255 area 0
network 20.1.1.0 0.0.0.255 area 0
network 192.168.50.0 0.0.0.255 area 3
network 192.168.40.0 0.0.0.255 area 2

#r4

en
conf t
int f0/0
ip add 192.168.60.1 255.255.255.0
no shut
int s0/0/0
ip add 192.168.50.2 255.255.255.0
no shut
exit
int tunnel 1
tunnel source s0/0/0
tunnel destination 192.168.50.1
ip add 20.1.1.2 255.255.255.0
exit
route ospf 1
network 20.1.1.0 0.0.0.255 area 0
network 192.168.50.0 0.0.0.255 area 3
network 192.168.60.0 0.0.0.255 area 4

结果检测:

使用pc0向pc1发送icmp数据包,能收到正确的反馈。

虚拟链路(virtual-link)的更多相关文章

  1. ubuntu /etc/network/interfaces 中配置虚拟链路

    ubuntu /etc/network/interfaces 中配置虚拟链路 平常做一些关于网络的测试时,像一些需要在二层上运行的功能,一个网卡不足够的情况下,可使用 ip link 工具加一些虚拟的 ...

  2. 虚拟主机 (Virtual Host)

    虚拟主机 (Virtual Host) 是在同一台机器搭建属于不同域名或者基于不同 IP 的多个网站服务的技术. 可以为运行在同一物理机器上的各个网站指配不同的 IP 和端口, 也可让多个网站拥有不同 ...

  3. Oracle 11g 虚拟列 Virtual Column介绍

    Oracle 11G 虚拟列 Virtual Column Oracle 11G 在表中引入了虚拟列,虚拟列是一个表达式,在运行时计算,不存储在数据库中,不能更新虚拟列的值. 定义一个虚拟列的语法: ...

  4. ORACLE虚拟索引(Virtual Index)

    ORACLE虚拟索引(Virtual Index)   虚拟索引概念 虚拟索引(Virtual Indexes)是一个定义在数据字典中的假索引(fake index),它没有相关的索引段.虚拟索引的目 ...

  5. 虚拟社会(Virtual Society)

    虚拟社会(Virtual Society),又称赛博社会(Cyber Society),是指不同网民之间经由计算机.远程通讯终端等技术设备相互连接起来以进行信息的共享.互动与交流,并在其中进行社会交往 ...

  6. CMSIS-RTOS 时间管理之虚拟定时器Virtual Timers

    虚拟定时器Virtual Timers CMSIS-RTOS API里有几个向下计数的虚拟定时器,它们实现计数完成时用户的回调功能.每个定时器都可以配置成单次计数或重复计数模式,它们可以在定义定时器结 ...

  7. Android tp的虚拟按键(virtual key)处理

    Android tp的虚拟按键处理 现在在越来越多的Android的手机都是虚拟按键来操作,但是对于开发者来说可能会关心Android对虚拟按键如何处理的.对Linux熟悉的人可能会说,it's ea ...

  8. (59)zabbix拓扑图展示链路状况Link indicators

    Link indicators介绍 上一篇已经了解了如何配置zabbix map,也提到了如何连接两个map元素,这节我们来讲两个map元素之间的链路指示配置. 我们需要在链路上配置trigger,如 ...

  9. linux 虚拟文件系统----------Virtual File System VFSkky

    在了解虚拟文件系统之前,必须先知道什么是 Kernal  Space 与 User  Space. Kernal Space 与User Space 的差别,在于内存使用上安全机制的差异. kerna ...

随机推荐

  1. API网关在API安全性中的作用

    从单一应用程序切换到微服务时,客户端的行为不能与客户端具有该应用程序的一个入口点的行为相同.简单来说就是微服务上的某一部分功能与单独实现该应用程序时存在不同. 目前在使用微服务时,客户端必须处理微服务 ...

  2. 领扣(LeetCode)二叉树的所有路径 个人题解

    给定一个二叉树,返回所有从根节点到叶子节点的路径. 说明: 叶子节点是指没有子节点的节点. 示例: 输入: 1 / \ 2 3 \ 5 输出: ["1->2->5", ...

  3. python:类4——魔法方法(定制序列、迭代)、生成器、推导式

    一.定制序列(容器类型) http://bbs.fishc.com/forum.php?mod=viewthread&tid=48793&extra=page%3D1%26filter ...

  4. Linux内核版本 uname命令 GNU项目 Linux发行版

    1.内核版本由linux内核社区统一编码和发布,格式如下图: major.minor.patch-build.desc 主版本号.次版本号.对次版本号的修订次数-编译次数.当前版本的特殊信息 次版本号 ...

  5. PHP是怎样重载的

    PHP 的重载跟 Java 的重载不同,不可混为一谈.Java 允许类中存在多个同名函数,每个函数的参数不相同,而 PHP 中只允许存在一个同名函数.例如,Java 的构造函数可以有多个,PHP 的构 ...

  6. 构思一个在windows下仿objc基于动画层ui编程的ui引擎

    用c/c++编程有些年了,十个指头可以数齐,在涉入iOS objc开发后,有种无比舒服的感觉,尤其在UI开发上. 在QuartzCore.framework下动画和透明窗口等许多效果的事都变得那么方便 ...

  7. LVM扩容案例

    LVM基础命令: pvdisplay 查看检查pv pvremove /dev/sdb #清除一个pv fdisk -l 检查磁盘 df -h 检查全部磁盘大小 df -Th 检查磁盘大小和分区格式类 ...

  8. vue router路由跳转了,但是页面没有变(已解决)

    小白学习 router.js:两个组件之间跳转 但是路由变了,页面没有改变的原因是因为app.vue里面没有router-view(很关键)

  9. linux系统资源查看常用命令

    1.vmstat vmstat是Virtual Meomory Statistics(虚拟内存统计)的缩写,可对操作系统的虚拟内存.进程.IO读写.CPU活动等进行监视.它是对系统的整体情况进行统计, ...

  10. HashMap面试题,看这一篇就够了!

    目录 序言 一.JDK7中的HashMap底层实现 1.1 基础知识 1.2 put()方法 1.2.1 特殊key值处理 1.2.2 扩容 1.2.3 如何计算bucket下标? 1.2.4 在目标 ...