基于lxd容器搭建路由器_FlowerMin的博客-程序员秘密

技术标签: lxd容器  路由仿真  网络  路由器  lxc  linux  

网络拓扑结构如下:
在这里插入图片描述
自己画的,请勿盗用!

先连接主机c1与路由器R1
R1前面已经启动,现在启动c1
sudo lxc start c1
创建网络并绑定端口
sudo lxc network create C1R1 ipv6.address=none ipv4.address=12.12.12.1/24
sudo lxc network attach C1R1 c1 eth0
sudo lxc network attach C1R1 R1 eth0
进入R1
sudo lxc exec R1 bash
分配地址
[email protected]:~# ip addr add 12.12.12.2/24 dev eth0
启动网卡
[email protected]:~# ip link set eth0 up
查看网卡配置
[email protected]:~# ip addr
退出容器
[email protected]:~# exit
进入c1
sudo lxc exec c1 bash
分配地址
[email protected]:~# ip addr add 12.12.12.1/24 dev eth0
启动网卡
[email protected]:~# ip link set eth0 up
替换默认网关
[email protected]:~# route delete default
[email protected]:~# route add default gw 12.12.12.2
测试能否ping通
ping 12.12.12.2
退出容器
[email protected]:~# exit

接下来按照上面方法连接主机c2 eth0与路由器R2 eth0并测试
地址分别为12.12.17.1/24与12.12.17.2/24

再连接路由器R1与路由器R2
创建网络并绑定端口
sudo lxc network create R1R2 ipv6.address=none ipv4.address=12.12.14.1/24
sudo lxc network attach R1R2 R1 eth1
sudo lxc network attach R1R2 R2 eth1
进入R1
sudo lxc exec R1 bash
分配地址
[email protected]:~# ip addr add 12.12.14.1/24 dev eth1
启动网卡
[email protected]:~# ip link set eth1 up
查看网卡配置
[email protected]:~# ip addr
退出容器
[email protected]:~# exit
进入R2
sudo lxc exec R2 bash
分配地址
[email protected]:~# ip addr add 12.12.14.2/24 dev eth1
启动网卡
[email protected]:~# ip link set eth1 up
查看网卡配置
[email protected]:~# ip addr
测试
[email protected]:~#ping 12.12.14.1
退出容器
[email protected]:~# exit
9、开启RIP路由协议
进入R1
sudo lxc exec R1 bash
复制RIP协议的配置文件,以便自动配置
[email protected]:~#cp /usr/local/etc/ripd.conf.sample /usr/local/etc/ripd.conf
[email protected]:~#vi /usr/local/etc/ripd.conf
加入如下内容
router rip
version 2
network eth0
network eth1
:wq保存退出,rip配置完成,执行
[email protected]:~#zebra –d
[email protected]:~#ripd –drip
正常启动后,可以用ip route show查看路由是否已经建立
退出[email protected]:~#exit
再进入R2,执行同样操作。用ip route show查看路由会发现多出一条R1分享过来的路由。
在这里插入图片描述
此时进入c2访问c1
[email protected]:~#ping 12.12.12.1会发现能够ping通
在这里插入图片描述
至此完成了c1、c2、R1、R2之间的全部配置,根据拓扑图将c3、R3按照上述步骤,进行主机c3与路由器R3间的配置和路由器R1R2R3间的两两配置,将其添加到网络中。
配置完成六个容器的地址信息分别如下图所示:
在这里插入图片描述
10、若想使用ospf路由协议,过程与rip类似,先
[email protected]:~#cp /usr/local/etc/ospfd.conf.sample /usr/local/etc/ospfd.conf
[email protected]:~#vi /usr/local/etc/ospfd.conf
加入如下内容
router ospf
ospf router-id 192.168.30.254
network 192.168.20.0/24 area 0
network 192.168.30.0/24 area 0
:wq保存退出,ospf配置完成,执行
[email protected]:~#zebra –d
[email protected]:~#rospfd –d
其中,router-id要填,一般填该路由器所有网卡接口ip中最大的。
network后面指要分享的网络。
不报错此时就是启动成功了。

遇到过一个错误: ospfd:error while loading shared libraries:libospf.so.0

解决办法:这个问题应该是没有执行ldconfig导致的,在/usr/local/lib下。
看一下/lib下有哪些相关库,是否缺少ospfd相关的,若缺少,就从/usr/local/lib下复制过来 。在这里插入图片描述
如上图所示,我的里面确实少了ospf的lib,所以我复制过来再执行ospfd -d,成功!
看一下执行结果,很快就有了路由分享:
在这里插入图片描述

我个人中心有文件记录整实验的全部过程,从创建容器安装quagga开始,最后附有常见问题解决方案,如有需要,可前往下载。如果觉得我写的对你有用,请多多支持,网络小白会一点点进步。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/FlowerMin/article/details/106362114

智能推荐

历时七天个人网站成功备案分享(腾讯云)_慕尼黑、的博客-程序员秘密

写在前面: 历时七天,个人网站备案成功,超快!!!域名和服务器都是买的腾讯云的,整个备案过程并没有大家说的那样繁琐,我觉得还挺简单的,文末有我的备案记录。备案注意的点1.备案之前记得把域名实名认证2.腾讯云备案可以通过小程序腾讯云网站备案,在申请备案的时候会提醒你微信扫码的。3.通过小程序备案的好处是它会给你自动添加幕布背景,就不需要等官网给你邮寄幕布啥的,省时省力。4.个人网站很多限...

《数据结构》—— 关于栈的应用:数制的转换_链栈实现数制的转换_唐樽的博客-程序员秘密

十进制转为八进制,用链栈实现,链栈的基本操作不变,定义一个算法调用即可。

用RNN进行文本分类_rnn文本分类_XianxinMao的博客-程序员秘密

本教程的目的是带领大家学会用 RNN 进行文本分类本次用到的数据集是 IMDB,一共有 50000 条电影评论,其中 25000 条是训练集,另外 25000 条是测试集首先我们需要加载数据集,可以通过 TFDS 很简单的把数据集下载过来,如下代码所示dataset, info = tfds.load('imdb_reviews', with_info=True, as_supervised=True)​train_dataset, test_dataset = dataset['trai

如何在Eclipse里显示BPMN格式的流程图_汪子熙的博客-程序员秘密

什么是BPMN?由BPMI(The Business Process Management Initiative)开发了一套标准叫业务流程建模符号(BPMN - Business Process Modeling Notation)。在 BPMI Notation Working Group超过2年的努力,于2004年5月对外发布了BPMN 1.0 规范。后BPMI并入到OMG组织,OMG于20...

echarts实现组织结构图_echarts树图子节点有多个父节点_★花落若轻尘的博客-程序员秘密

echarts实现组织架构图最近在项目终于到了这样一个需求,需要实现一个网站的拓扑图,如下:但是在网上找了许久相关的库也没找到满意的,不过找的过程中发现了这个链接网络拓扑图,有了灵感,于是对其进行改造,哈哈哈,代码链接如下:echarts实现组织结构图,代码有很多不足的地方,仅供在开发中遇到同样问题的你一个解决的思路。其他思路echarts的关系图,一个节点可以有多个父节点和子节点,也可以实现以上需求,如果节点之间的的连线你有没有其他要求(例如折线),可以采用。AntV g6 [便

uni-app,打包后白屏_uniapp打包后apk白屏_逆风罗的博客-程序员秘密

uni-app,打包后白屏问题描述:uni-app,云打包后,运行首页白屏,然后各种百度,也没找到有用的,后面真机调试发现有报错view.umd.min.js:1,然后就在页面注释代码,发现是uniapp获取元素createSelectorQuery报错问题,也就是获取节点的问题,一定要在onReady()钩子函数调用 // 获取设备高度 getHight() { const vm = this; uni.getSystemInfo({ //调用uni-app接口获取屏幕高度

随便推点

Dubbo如何支持本地调用?InJvm方式解析,Java面试常问题_普通网友的博客-程序员秘密

public static final int DEFAULT_PORT = 0;private static InjvmProtocol INSTANCE;public InjvmProtocol() { INSTANCE = this;}public static InjvmProtocol getInjvmProtocol() { if (INSTANCE == null) { ExtensionLoader.getExtensionLoader(Proto

(SRCNN)及pytorch实现_Learning a Deep Convolutional Network for Image Super-Resolution——超分辨率(二)_srcnn 例程_Cpp编程小茶馆的博客-程序员秘密

文章目录Learning a Deep Convolutional Network for Image Super-Resolution算法简介算法流程Patch extraction and representationNon-linear mapping 非线性映射Reconstruction训练测试实验结果Learning a Deep Convolutional Network for ...

UILabel自适应里面的文字,自动调整宽度和高度_duilib 自适应高度_智勇双全詹小神的博客-程序员秘密

UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0,0,0,0)]; // frame之后会重置size。    [label setNumberOfLines:0]; // 允许多行显示    NSString *textStr = @"高考结束后即将步入大学的莘莘学子们,用90后特有的方式“期待”了自己的大学

access设计视图打不开_认清这3种表关系,数据库设计不再难_weixin_39938269的博客-程序员秘密

建立表之间的关系良好的数据库设计目标之一就是消除数据冗余, 要实现这一目标, 可以将数据拆分为多个基于主题的表, 尽量使每条数据只出现一次, 然后在相关表中放置公共字段, 并建立各表之间的关系, 从而将拆分的数据组合到一起, 这也是关系型数据库的运行原理。 在 Access 2016 中, 表的关系类型总共有 3 种关系,分别是一对一、 一对多和多对多关系。一对一关系两个表之间, 主键与主键创建关...

[MyBatis Generator]自动生成 User 类的同时会生成 UserKey 及 UserWithBlob 类的问题的解决_橄榄树心的博客-程序员秘密

文章目录SpringBoot 中使用 MyBatis Generator 生成相关的实体类及Mapper添加 generator 的 Maven 插件添加 generatorConfig.xml 文件注意事项targetProjectUserExampleUserKey 和 UserWithBlobsSpringBoot 中使用 MyBatis Generator 生成相关的实体类及Mapper...

1一9数字行书写法_阿拉伯数字怎么写好看(数字1到10的漂亮手写体)_Badger4us的博客-程序员秘密

数字1到10的漂亮写法【陆风轩】书法公益课,写作经验分享-阿拉伯数字的漂亮行书銮,形声字,来自Jin,án(luán)声音。本义:皇帝在远古时代使用的钟声安装在轭或卡车秤的上方。西周开始流行。 《解释人物》:“嘿,君主骑四匹马,四匹马,八匹马,钟形大象,鸟类和鹤井。”有时它指的是皇帝的汽车,或用作皇帝的代词。如何写出“銮”看起来不错?陆凤轩下面展示了一些更美丽的作品:一,如何写一个手写漂亮的阿拉伯...

推荐文章

热门文章

相关标签