Ubuntu18.04安装配置FRR

2023-05-16

FRR

文章描述了如何在Ubuntu18.04的环境下安装配置frr

0. 更新安装源

vi /etc/apt/sources.list

更改文件内容

deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse

加载更新源

sudo apt-get update
sudo apt-get upgrade

1. 安装依赖

首先先更新一下源

apt update

之后下载其余的依赖安装包

apt-get install git autoconf automake libtool make libreadline-dev texinfo pkg-config libpam0g-dev libjson-c-dev bison flex libc-ares-dev python3-dev python3-sphinx install-info build-essential libsnmp-dev perl libcap-dev  libelf-dev libunwind-dev 

2. 编译libyang

apt install cmake libpcre2-dev -y
git clone https://github.com/CESNET/libyang.git
cd libyang
git checkout v2.0.0
mkdir build; cd build
cmake -D CMAKE_INSTALL_PREFIX:PATH=/usr -D CMAKE_BUILD_TYPE:String="Release" ..
make
sudo make install

3. 安装 Protobuf, ZeroMQ

apt-get install protobuf-c-compiler libprotobuf-c-dev
apt-get install libzmq5 libzmq3-dev -y

4. 添加 FRR 用户和组

groupadd -r -g 92 frr
groupadd -r -g 85 frrvty
adduser --system --ingroup frr --home /var/run/frr/ --gecos "FRR suite" --shell /sbin/nologin frr
usermod -a -G frrvty frr

5. 编译安装FRR

git clone https://github.com/frrouting/frr.git frr
cd frr
./bootstrap.sh
./configure \
     --prefix=/usr \
     --includedir=\${prefix}/include \
     --bindir=\${prefix}/bin \
     --sbindir=\${prefix}/lib/frr \
     --libdir=\${prefix}/lib/frr \
     --libexecdir=\${prefix}/lib/frr \
     --localstatedir=/var/run/frr \
     --sysconfdir=/etc/frr \
     --with-moduledir=\${prefix}/lib/frr/modules \
     --enable-user=frr \
     --enable-group=frr \
     --enable-vty-group=frrvty \
make
sudo make install

配置如下

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hBUesdx8-1659844693004)(C:\Users\29973\AppData\Roaming\Typora\typora-user-images\image-20220701105644871.png)]

6. 安装FRR配置文件

install -m 775 -o frr -g frr -d /var/log/frr
install -m 775 -o frr -g frrvty -d /etc/frr
install -m 640 -o frr -g frrvty tools/etc/frr/vtysh.conf /etc/frr/vtysh.conf
install -m 640 -o frr -g frr tools/etc/frr/frr.conf /etc/frr/frr.conf
install -m 640 -o frr -g frr tools/etc/frr/daemons.conf /etc/frr/daemons
install -m 640 -o frr -g frr tools/etc/frr/daemons /etc/frr/daemons

7. 调整系统

vi /etc/sysctl.conf 添加如下配置

net.ipv4.ip_forward=1
net.ipv6.conf.all.forwarding=1

sysctl -p刷新

8. 添加MPLS内核模块

首先在宿主机上加载必要的linux内核MPLS模块,直接分别在宿主机上运行如下命令

modprobe mpls_router
modprobe mpls_gso
modprobe mpls_iptunnel

查看模块是否加载成功

lsmod | grep mpls

在这里插入图片描述
将这3个内核模块添加到容器的配置文件中,确保容器也能加载这些模块

sudo vi /etc/modules

添加如下内容

mpls_router
mpls_gso
mpls_iptunnel

加载内核模块

modprobe mpls-router mpls-iptunnel

vi /etc/sysctl.conf启用 MPLS 转发,【如果没有那么多网卡,请注释】

net.mpls.conf.eth0.input=1
net.mpls.conf.eth1.input=1
net.mpls.conf.eth2.input=1
net.mpls.platform_labels=100000

sysctl -p刷新

9. 安装服务

install -m 644 tools/frr.service /etc/systemd/system/frr.service
# 设置开机自启
systemctl enable frr

10. 启用守护进程

开启你需要的服务,设置为yes,且修改MAX_FDS=1024

vim /etc/frr/daemons

在这里插入图片描述

11. 启用frr

# 启用
systemctl start frr
# 重启
systemctl restart frr

启动后可以使用netstat -nlpt看下端口是否正常。

默认守护程序的路径是/etc/frr/xxx.conf

12. 测试frr

如果输入如下代码,可以进入编辑模式,则frr安装完毕

vtysh
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Ubuntu18.04安装配置FRR 的相关文章

  • Ubuntu18.04配置orb-slam2+ROS,一次性通过./build_ros.sh

    1 换源 建议采用清华的源 xff0c 如果采用阿里的源后面很多依赖会报错 xff0c 换源之后记得更新 xff0c 建议勾选源代码 sudo apt get update 1 1 报错error 解决 xff1a sudo apt get
  • process has died 报错

    报错提示 UnicodeEncodeError 39 ascii 39 codec can 39 t encode characters in position 345 350 ordinal not in range 128 spawn
  • Mysql问题Expression #2 of SELECT list is not in GROUP BY clause and contains nonaggregated column

    java sql SQLSyntaxErrorException Expression 2 of SELECT list is not in GROUP BY clause and contains nonaggregated column
  • 【SAP-FI】承诺项目(Commitment item)详解

    定义 xff1a 承诺项目表示组织在财务管理区域 xff08 FM区域 xff09 内的功能分组 用途 xff1a 承诺项目将影响流动性的预算交易和商业交易分类为收入 xff0c 支出和现金余额项目 您可以将特定责任区域 xff08 资金中
  • 操作系统--03内存管理

    内存管理 第三章 xff1a 内存管理 xff08 存储器管理 xff09 3 内存保护的两种办法 xff1a 3 1 覆盖与交换3 2 连续分配管理方式3 3 动态分区分配算法1 首次适应算法 xff1a 2 最佳适应算法 xff1a 3
  • SCRUM敏捷项目管理实战(深圳站)

    1 内容提要 SCRUM是目前各互联网公司普遍采用的敏捷项目管理模式 xff0c 与传统的项目管理十大知识领域相比 xff0c 敏捷更加直击要害 xff0c 更加强调自组织和跨职能团队 xff0c 更能帮助企业高效率交付和盈利 xff01
  • 2021年最新gitee使用教程

    gitee简介 Gitee com xff08 码云 xff09 是 OSCHINA NET 推出的代码托管平台 xff0c 支持 Git 和 SVN xff0c 提供免费的私有仓库托管 目前已有超过 600 万的开发者选择 Gitee 为
  • 在vscode中运行c、c++(超级简单)

    第一 下载安装vscode 第二 下载插件 链接 xff1a https pan baidu com s 1mLdKbQWxkZJYhwH0ToD9oQ 提取码 xff1a 3kxe 复制这段内容后打开百度网盘手机App xff0c 操作更
  • flameshot安装并配置插入文字描述、设置默认保存路径、将截图内容添加到粘贴板中

    flameshot配置插入文字描述 设置默认保存路径 将截图内容添加到粘贴板中 安装 xff1a https github com flameshot org flameshot releases 下载相应rpm包 xff0c 安装即可 以
  • 静态域[详解]

    不知道静态域是什么 目前有两种想法 1是代表static修饰的属性 方法等的集合 即所有static修饰的都算 2是认为仅仅代表静态代码块 即 static 下面正式研究 34 何为静态域 34 查到的文章基本分静态域 静态常量 静态方法这
  • OpenFlow 流表

    流规则组成 xff1a 每条流规则由一系列字段组成 xff0c 分为基本字段 条件字段和动作字段三部分 一 xff1a 基本字段 duration sec xff1a 表示流表项的生效时间 xff0c 以秒为单位 可以用来控制流表项的生命周
  • Gittee的使用

    Git Linus用C写的分布式版本控制系统 Git官网 xff1a https git scm com Gittee 国内代码托管和协作开发的平台 xff0c 可以看作为中文版的 GitHub 官网 xff1a Gitee 基于 Git
  • 使用VsCode管理Gitee仓库中的项目

    使用VsCode管理Gitee仓库中的项目的大致流程如下 1 首先得下载安装 git xff0c 详见 Git 详细安装教程详解 Git 安装过程的每一个步骤 mukes的博文 xff09 2 为 git 配置 username和email
  • Linux嵌入式开发之内存占用

    一 引言 内存是嵌入式系统中的关键资源 xff0c 内存占用主要是指软件系统的内存使用情况 本篇博客将介绍如何分析内存使用以便进行进一步优化内存占用相关的基础概念和相关工具 二 内存占用 内存占用是应用程序运行时内存的使用或引用数量 对于开
  • 手眼标定——使用 easy_handeye 和 aruco

    整个过程分为以下三步 aruco ros 的配置使用easy handeye 的配置使用标定过程 aruco 的配置使用 clone aruco 项目 到 ros 工作空间 前往 aruco marker 生成网站 打印 marker xf
  • CentOS7.6 Docker 操作(一)

    CentOS7 6 Docker 操作 xff08 一 xff09 CentOS 7 6镜像地址 网易镜像 xff08 可直接复制地址到迅雷 xff0c 下载会快一些 xff09 http mirrors 163 com centos 7
  • 读取excel 表格控件

    直接在实时编辑器里 xff1a T 61 xlsread 39 C Users 86173 Desktop DESKETOP 111 xlsx 39 t 61 textread 39 C Users 86173 Desktop DESKET
  • Eureka注册中心

    3 Eureka注册中心 假如我们的服务提供者user service部署了多个实例 xff0c 如图 xff1a 大家思考几个问题 xff1a order service在发起远程调用的时候 xff0c 该如何得知user service
  • 从docker 拉去指定版本的镜像

    从docker 拉去指定版本的镜像 1 上https hub docker com 网站 xff0c 查询 点击tags查看 2 拉取 docker pull images tags
  • SpringBoot整合mybatis-plus

    导入依赖 在项目pom文件导入依赖 在项目pom文件导入依赖 span class token tag span class token tag span class token punctuation lt span dependency

随机推荐

  • idea mybatisplus 插件使用

    在plugin中安装mybatisplus 插件 使用 配置数据库 生成代码 表新增字段 xff0c 重新生成实体类覆盖 因业务需求 xff0c 表中可能会时不时增加一些字段 xff0c 大多情况下实体类中不会添加表中没有的字段 xff0c
  • axios请求

    可传参数 span class token function axios span span class token punctuation span span class token punctuation span span class
  • kubesphere

    文章目录 KubeSphere简介安装多租户管理WordPressDevOps 作者声明 KubeSphere 默认的 dashboard 没啥用 xff0c 我们用 kubesphere 可以打通全部的 devops 链路 Kubesph
  • 粒子群算法 PSO

    粒子群算法 粒子群算法 PSO 在PSO中 每个优化问题的潜在解都是搜索空间的一只鸟 xff0c 被称为粒子 xff0c 所有的粒子都有一个由适应度函数决定的适值 xff0c 每个粒子还有一个速度决定它们 飞行 的方向和距离 xff0c 然
  • SEATAdocker-compose部署

    docker compose 文件 span class token key atrule version span span class token punctuation span span class token string 39
  • docker-compose 部署ELK

    目录结构 docker compose 文件 span class token key atrule version span span class token punctuation span span class token strin
  • sleuth-zipkin springcloud

    docker compose文件 span class token key atrule zipkin span span class token punctuation span span class token key atrule i
  • 登录session_id用法以及如何验证账号和密码

    登录的时候 xff0c session start session id 61 session id 把 session id储存在本地 xff08 app储存在app xff0c 电脑用cookie储存 xff09 xff0c 再次请求的
  • 正点原子MiniFly Firmware V1.5开源四轴代码硬件部分分析2:motor.c。

    一些参考 xff1a 电机控制基础 定时器基础知识与PWM输出原理 知乎 zhihu com include 34 sys h 34 include 34 delay h 34 include 34 motors h 34 include
  • 使用百度地图POI爬取需要的数据

    目标 xff1a 爬取阿克苏地区内的所有医院数据 一 百度地图开放平台注册 xff0c 获取到AK xff08 1 xff09 在百度地图开放平台完成注册 这个平台是百度地图为开发者提供接口用的 xff0c 有很多其他的功能 xff0c 这
  • RT-Thread 笔记整理

    1 AI xff1a 从前例中学习 xff1b 传统 xff1a 基于经验 2 IOT xff08 internet of things xff09 设备 xff08 传感器将原始数据上传 xff09 gt Gateway网关 gt clo
  • Realsense

    使用说明 xff1a 1 组装拍摄三脚架与滑动条轨 xff0c 将RealSense相机与手机一同装置在三脚架的滑动条轨上 2 连接RealSense到笔记本电脑 xff0c 不需任何配置即可直接适配设备 3 打开PC端软件 xff0c 调
  • 变频器基础:变频器工作原理与常用功能

    参考文献 1 向晓汉 宋昕 变频器与步进 伺服驱动技术完全精通教程 M 第1版 北京 化学工业出版社 2015 2 王永华 现代电气控制及PLC应用技术 M 第5版 北京 北京航空航天大学出版社 2018 3 王兆安 刘进军 电力电子技术
  • 线性系统的矫正方法——PID控制理论学习笔记

    主要谈及直流电机的速度PID控制 xff0c 在智能车中还有方向PID控制 xff08 舵机调整方向 xff09 参考文献 1 胡寿松 自动控制原理 M 第六版 北京 科学出版社 2015 2 陈伯时 电力拖动自动控制系统 运动控制系统 M
  • Linux驱动的软件架构(一):驱动的软件设计模式理念

    这个内容是我观看 Linux设备驱动开发详解 的学习笔记 xff0c 其实书里面是先讲了关于驱动的很多的基础知识 xff0c 然后再讲驱动的软件架构 但是我最近深深地沉迷于自顶向下的学习逻辑 xff0c 所以打算先对整个驱动有了框架之后 x
  • java.lang.NoClassDefFoundError: com/jspsmart/upload/SmartUploadException

    问题描述 我在使用Smartupload上传图片的时候 xff0c 代码没问题 xff0c 编译也没有报错 xff0c 但是启动服务器 xff0c 便出现了java lang NoClassDefFoundError com jspsmar
  • datetime-local数据类型和Date数据类型转化(前端到后端,后端到前端)

    前端的datetime local传递到后端为Date类型 前端的input输入框 span class token tag span class token tag span class token punctuation lt span
  • Ubuntu18.04中LXC安装配置以及简单使用

    LXC安装配置 安装LXC sudo apt install lxc y 安装完毕之后 xff0c 默认的文件路径为 etc lxc 查看LXC版本 sudo lxc version 然后创建Ubuntu的LXC容器 t 指定模板 xff0
  • STM32 串口详解

    目录 01 USART的特点 02 USART简介 2 1 数据传输模型 2 2 帧结构 2 3 波特率 03 STM32的USART 04 代码配置 01 USART的特点 USART是通用异步收发传输器 xff08 UniversalA
  • Ubuntu18.04安装配置FRR

    FRR 文章描述了如何在Ubuntu18 04的环境下安装配置frr 0 更新安装源 vi etc apt sources list 更改文件内容 deb http mirrors aliyun com ubuntu bionic main