0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

什么是开源路由操作系统VyOS

汽车电子技术 来源:码农与软件时代 作者: 码农与软件时代 2023-02-20 16:13 次阅读

一、VyOS由来

2005年,Vyatta公司成立,10月发布虚拟网络软件;

2006年,Vyatta发布商业订购版本,同时,开源了虚拟路由软件Open Flexible Router(OFR);

2012年,Brocade收购Vyatta,将虚拟路由软件更名为Brocade Vyatta 5400 vRouter,不再开源;独立开发人员从Vyatta Core 6.6 R1版fork一个分支继续进行开发,诞生了VyOS;

2017年,AT&T收购Brocade的网络Vyatta团队,推出dNOS(disaggregated Network Operating System)软件;

2021年,Ciena公司接手Vyatta团队。

二、VyOS特性

  • 支持KVM、XEN、VMWare、Hyper-V、VirtualBox等平台;
  • 支持BGP、OSPFv2、OSPFv3、RIP、Policy-based routing等路由协议和功能;
  • 支持Ethernet、802.1q VLAN、NIC bonding、Bridges、STP、802.11 wireless、PPPoE等网络接口
  • 支持Stateful firewall、Source and destination NAT、VPN、GRE、VxLAN等功能;
  • 支持DHCP、DNS、SSH、IGMP、QoS等网络服务;
  • 支持VRRP、Conntrack sync、WAN failover and load balancing等高可用特性。

三、VyOS命令模式

Vyos命令模式与思科差不多,分为操作模式和配置模式。

默认情况下,VyOS处于操作模式,命令提示符显示$。执行命令configure,可进入配置模式,命令提示符显示#:

vyos@vyos$ configure
vyos@vyos#

配置完成后,执行命令commit、save,然后exit退出。

四、常用命令行

1.接口配置

外部/WAN接口是eth0,通过DHCP接收其接口地址。

内部/LAN接口是eth1,使用静态IP地址192.168.0.1/24。

执行命令:

set interfaces ethernet eth0 address dhcp
set interfaces ethernet eth0 description 'OUTSIDE'
set interfaces ethernet eth1 address '192.168.0.1/24'
set interfaces ethernet eth1 description 'INSIDE'

2.DHCP和DNS

配置DHCP和DNS服务,VyOS为相应的默认网关和DNS服务器。

默认网关和DNS递归地址为192.168.0.1/24,地址范围192.168.0.2/24-192.168.0.8/24保留并用于静态分配。

set service dhcp-server shared-network-name LAN subnet 192.168.0.0/24 default-router '192.168.0.1'
set service dhcp-server shared-network-name LAN subnet 192.168.0.0/24 name-server '192.168.0.1'
set service dhcp-server shared-network-name LAN subnet 192.168.0.0/24 domain-name 'vyos.net'
set service dhcp-server shared-network-name LAN subnet 192.168.0.0/24 lease '86400'
set service dhcp-server shared-network-name LAN subnet 192.168.0.0/24 range 0 start 192.168.0.9
set service dhcp-server shared-network-name LAN subnet 192.168.0.0/24 range 0 stop '192.168.0.254'
set service dns forwarding cache-size '0'
set service dns forwarding listen-address '192.168.0.1'
set service dns forwarding allow-from '192.168.0.0/24'

3.NAT

允许主机通过 IP 伪装通过外部/WAN 网络进行通信

set nat source rule 100 outbound-interface 'eth0'
set nat source rule 100 source address '192.168.0.0/24'
set nat source rule 100 translation address masquerade

4.防火墙

阻止所有未首先从内部/LAN 端启动的流量。

set firewall name OUTSIDE-IN default-action 'drop'
set firewall name OUTSIDE-IN rule 10 action 'accept'
set firewall name OUTSIDE-IN rule 10 state established 'enable'
set firewall name OUTSIDE-IN rule 10 state related 'enable'
set firewall name OUTSIDE-LOCAL default-action 'drop'
set firewall name OUTSIDE-LOCAL rule 10 action 'accept'
set firewall name OUTSIDE-LOCAL rule 10 state established 'enable'
set firewall name OUTSIDE-LOCAL rule 10 state related 'enable'
set firewall name OUTSIDE-LOCAL rule 20 action 'accept'
set firewall name OUTSIDE-LOCAL rule 20 icmp type-name 'echo-request'
set firewall name OUTSIDE-LOCAL rule 20 protocol 'icmp'
set firewall name OUTSIDE-LOCAL rule 20 state new 'enable'

五、VyOS API接口

1.VyOS提供了HTTP API接口,进行查询、配置、重置等相关操作。

https://docs.VyOS.io/en/equuleus/automation/VyOS-api.html#VyOS-api

以配置为例:

curl -k --location --request POST 'https://vyos/configure' \\
--form data='{"op": "set", "path": ["interfaces", "dummy", "dum1", "address", "10.11.0.1/32"]}' \\
--form key='MY-HTTPS-API-PLAINTEXT-KEY'
response:
{
"success": true,
"data": null,
"error": null
}

2.VyOS支持通过ansible进行配置,以实现路由器的自动化配置。

六、配置示例

选用VyOS作为IaaS平台的网络服务软件,以防火墙配置为例。

配置以VyOS为视角,设定网络链路为:VyOS--VPCTest,则下图的入方向是指VyOS的入方向。业务网络的规则集如下:

图片

进入到vyos后台,执行命令configure进入配置模式。Show ?

图片

查看端口信息

图片

查看防火墙信息:show firewall

图片

七、相关资料

https://www.sdnlab.com/25617.html
https://docs.vyos.io/en/equuleus/quick-start.html#quick-start
https://www.sdnlab.com/17348.html
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 命令
    +关注

    关注

    5

    文章

    657

    浏览量

    21924
  • 配置
    +关注

    关注

    1

    文章

    184

    浏览量

    18299
  • 操作模式
    +关注

    关注

    0

    文章

    4

    浏览量

    1329
收藏 人收藏

    评论

    相关推荐

    能在DSP上跑的开源操作系统

    请问各位朋友,想在DSP上的跑一个小点的实时操作系统,有没有开源的,代码量比较少,比较容易移植的操作系统,能支持多核是做好。
    发表于 09-25 16:20

    智能路由器用开源系统的原因是什么

    为什么新兴智能路由器厂商们这么喜欢开源操作系统?这要从硬件行业的潜规则说起。
    发表于 08-02 06:51

    物联网有哪些开源实时操作系统

    基于MCU的开源实时操作系统(RTOS)ARM mbed OS,ARM公司专为物联网 (IoT) 中的“物体”设计的开源嵌入式操作系统,主要支持ARM Cortex-M微控制器Free
    发表于 09-18 09:05

    物联网为何需要开源操作系统?物联网开源操作系统有哪几种?

    操作系统是什么?操作系统通常具有哪些功能?什么是开源操作系统开源操作系统的优势有哪些?物联网为
    发表于 06-16 06:37

    开源操作系统大全

    开源操作系统即公开源代码的操作系统软件,它遵循开源协议使用、编译和发布。自由和开放源代码软件中最著名的是 Linux ,它是一种类 Unix
    发表于 10-27 15:13

    一文带你看懂物联网开源操作系统

    物联网、开源操作系统是目前IT业界的热门词汇,也正是这三个词汇构成了物联网开源操作系统。那么,对于物联网开源
    发表于 12-22 14:25 1219次阅读

    探讨十大物联网开源操作系统

    物联网作为新时代的宠儿,有其独到之处,操作系统是物联网的灵魂,开源操作系统更是集结了各物联网大亨的理论精髓,物联网、开源操作系统这三个词汇
    的头像 发表于 01-08 15:37 3477次阅读

    物联网十大经典开源操作系统

    物联网作为新时代的宠儿,有其独到之处,操作系统是物联网的灵魂,开源操作系统更是集结了各物联网大亨的理论精髓,物联网、开源操作系统这三个词汇
    的头像 发表于 01-18 14:58 1w次阅读

    国产嵌入式操作系统的发展思考

    嵌入式操作系统历史悠久、门类繁多、用途广泛,不仅包括嵌入式实时多任务操作系统(RTOS)、开源的 Linux、机器人和路由
    发表于 10-23 15:04 1927次阅读

    物联网的开源操作系统有哪一些

    物联网作为新时代的宠儿,有其独到之处,操作系统是物联网的灵魂,开源操作系统更是集结了各物联网大亨的理论精髓,物联网、开源操作系统这三个词汇
    发表于 11-08 14:49 1788次阅读

    物联网十大经典的开源操作系统

    物联网作为新时代的宠儿,有其独到之处,操作系统是物联网的灵魂,开源操作系统更是集结了各物联网大亨的理论精髓,物联网、开源操作系统这三个词汇
    的头像 发表于 12-25 18:22 2383次阅读

    介绍几种开源嵌入式操作系统

    介绍几种开源嵌入式操作系统(c++ 嵌入式开发实例)-该文档为介绍几种开源嵌入式操作系统总结文档,是一份很不错的参考资料,具有较高参考价值,感兴趣的可以下载看看………………
    发表于 08-04 10:25 20次下载
    介绍几种<b class='flag-5'>开源</b>嵌入式<b class='flag-5'>操作系统</b>

    openEuler:面向数字基础设施的开源操作系统

    openEuler是面向数字基础设施的开源操作系统。介绍了场景套件、基础服务及内核等。
    的头像 发表于 11-10 15:40 2105次阅读
    openEuler:面向数字基础设施的<b class='flag-5'>开源</b><b class='flag-5'>操作系统</b>

    芯动科技正式加入OpenCloudOS操作系统开源社区

    近日,芯动科技有限公司作为初始成员,加入OpenCloudOS操作系统开源社区。  
    的头像 发表于 05-05 16:47 1243次阅读

    芯动科技加入OpenCloudOS操作系统开源社区

    近日,芯动科技有限公司作为初始成员,加入OpenCloudOS操作系统开源社区。
    的头像 发表于 05-06 11:10 1203次阅读