vlambda博客
学习文章列表

OpenRT 非 Linux 内核开源【核心网路由器】项目

项目简介

OpenRT 是翼辉信息发起的基于 SylixOS 开源操作系统的【核心网路由器】开源项目,OpenRT 也是翼辉信息开源项目群中第一个亮相的开源项目,此项目可以使运行 SylixOS 的任何一台多网络接口设备迅速拥有强大的核心网级路由器功能。SylixOS 操作系统 fans 与行业用户不仅可以使用 OpenRT 快速搭建出适合于自己行业标准的高效、 稳定的工业级路由器,而且还可以参与到 OpenRT 开源项目的进化发展中。


功能简介

OpenRT 开源路由平台作为翼辉信息一个长期维护的开源项目,将会持续升级,增加功能,提高性能。OpenRT 路由平台功能主要分为:基础路由路由协议管理配置三大部分,其中基础路由部分目前拥有但不限于以下功能:

1.   支持 L2 网络桥接分组交换 

根据用户配置,OpenRT 可将任意多个网络接口设置为桥接模式,多个网络接口自动进行 MAC 分组交换,对于某些使用“串联”网络拓扑的领域尤为合适。
2.   支持 IPv4/v6 L3 路由基本功能  

OpenRT 提供基本的 IPv4/v6 路由功能,可通过配置接口或配置工具,配置静态路由表,高级用户也可以通过程序控制 SylixOS 内核路由表,程序接口兼容 AF_ROUTE 标准路由套接字。
3.   支持 IPv4/v6 组播路由技术   

OpenRT 提供基于虚拟接口的组播路由功能,此功能提供三种组播路由模型:普通组播报文转发、IPIP 隧道报文转发、PIM 组播路由模型。
4.   支持 IPv4/v6 多 WAN 均衡策略   

OpenRT 支持为每一个网络接口配置 VLAN ID,通过 VLAN ID 提供不同的网络资源访问权限控制。
9.   支持 PPPoS、PPPoE、PPPoL2TP 拨号链接       

OpenRT 提供基于各种通信链路的拨号链接功能,可根据用户配置自动链接 3G、 4G 无线网络,充当无线网络接入路由器,也可以使用 PPPoE、PPPoL2TP 拨号链接技 术接入运营商网络。
10.   支持远程登陆攻击检测        

OpenRT 内建有一套通过用户登陆行为判断攻击的“登陆黑白名单管理模块”,一旦检测到有针对用户登陆方面的攻击发生,立即会隔离发起攻击的可疑机器(加入黑名单),同时经过一个可设置的冷却时间(也可设置为永久被隔离)后才再次允许对 方访问 OpenRT 设备。此模块的保护功能对 SylixOS 内部所有的内建网络服务模块均有效。
11.   支持规则防火墙        

此模块功能强大,使用方便,可有效抵御常见的网络攻击,例如:单播、组播、 广播网络风暴;报文重放攻击;ARP 欺骗攻击;ARP 泛洪攻击;TCP SYN、ACK 泛洪 攻击等。


翼辉网络实验室不同网络协议链接拓扑图(示例)

OpenRT 非 Linux 内核开源【核心网路由器】项目


OpenRT作为一个核心网级路由器,也提供丰富的路由协议支持(部分网络路由协议来源于Quagga开源项目),它们包括但不限于: 

1.   支持 RIP、RIPv2、RIPng 路由协议 

OSPF(Open Shortest Path First,开放式最短路径优先)也是一个内部网关协议, 用于在单一自治系统内决策路由。是对链路状态路由协议的一种实现,隶属内部网关协议(IGP),故运作于自治系统内部。使用 Dijkstra 算法计算最短路径树。OSPF 分为 OSPFv2 和 OSPFv3 两个版本,其中 OSPFv2 用在 IPv4 网络,OSPFv3 用在 IPv6 网络。OSPFv2 是由 RFC 2328 定义的,OSPFv3 是由 RFC 5340 定义的。与 RIP 相比, OSPF 是链路状态协议,而 RIP 是距离矢量协议。
3.   支持 IS-IS 路由协议 

IS-IS(Intermediate system to intermediate system,中间系统到中间系统)是一个分级的链接状态路由协议,基于 DECnet PhaseV 路由算法,实际上与 OSPF 非常相 似。同时 IS-IS 可以在不同的子网上操作,包括广播型的 LAN、WAN 和“点对点“链路。  
 4.   支持 BGP 边界网关协议     

边界网关协议(BGP)是运行于 TCP 上的一种自治系统的路由协议。 BGP 是唯一一个用来处理像因特网大小的网络的协议,也是唯一能够妥善处理好不相关路由域间 的多路连接的协议。 BGP 构建在 EGP 的经验之上。 BGP 系统的主要功能是和其他的 BGP 系统交换网络可达信息。网络可达信息包括列出的自治系统(AS)的信息。这些信息有效地构造了 AS 互联的拓朴图并由此清除了路由环路,同时在 AS 级别上可实施策略决策。
5.   支持 Zebra 路由器核心服务     

Zebra 路由器核心服务是一套屏蔽操作系统实现细节与差异的路由核心服务, OpenRT 支持 Zebra 核心路由服务,基于 Zebra 的路由协议可以非常方便的加入 OpenRT 平台运行。  
6.   支持 PIM 组播路由      

PIM(Protocol Independent Multicast,协议无关组播)是目前广泛使用的组播路由协议,其中 PIM-SM稀疏模式更为流行。PIM-SM 是一种能有效地将IP报文路由到跨越大范围网络(WAN 和域间)组播组的协议。PIM-SM 协议不依赖于任何特定 的单播路由协议,主要被设计用来支持稀疏组。它使用了传统的基于接收初始化成员关系的 IP 组播模型,支持共享和最短路径树,此外它还使用了软状态机制,以适应不断变化的网络环境。它可以使用由任意路由协议输入到组播路由信息库(RIB)中的路 由信息,这些路由协议包括单播协议如路由信息协议(RIP)和开放最短路径优先(OSPF),还包括能产生路由表的组播协议如距离矢量组播路由协议(DVMRP) 。 


OpenRT不仅提供了功能丰富的路由功能,也将在未来提供与之适配的管理配置系统,它们包括但不限于:
1.   支持 SNMPv1、v2、v3 网络管理服务  

OpenRT 支持简单网络管理协议(SNMP),用以监测连接到网络上的设备是否有任何引起管理上关注的情况。该协议是互联网工程工作小组(Internet Engineering Task Force,简称 IETF)定义的 Internet 协议簇的一部分。OpenRT 同时提供一套独立网络多用户体系,用来支持带有认证的 SNMPv3 网络管理协议而不暴露操作系统用户信息。
2.   支持 PPP 拨号工具   

OpenRT 提供一套基于操作系统命令行的 PPP 快速拨号链接工具,可在操作系统命令行环境下进行 PPP 拨号链接。
3.   支持 DHCP 服务器   

KidVPN是一套 SylixOS 自带的基于 AES 加密的虚拟专用网络服务,企业用户可基于 KidVPN 建立起连接总部与各个分公司的逻辑加密局域网。方便企业员工异地办公本地化管理;除办公外,设备厂商基于 KidVPN 也可建立全球范围内加密的设备虚拟专用 网,方便对设备进行后台运营,维护。
5.   支持 vtysh 路由器专用 Shell 接口    

OpenRT 支持 vtysh 路由器 Shell 命令接口,之上描述的路由协议管理功能,均通过 vtysh 命令接口提供设置与信息查询,具体说明可通过 vtysh 关键字查询互联网信息。
6.   支持基于 Web 配置(计划中)      

目前 OpenRT 主要路由功能,均需要通过 Shell 命令行方式(OS Shell 与 vty Shell)操作,未来OpenRT 将会提供一整套基于 Web 的配置工具,简化配置难度,提高管理效率。  
7.   支持基于 Web 数据可视化(计划中)      

目前 OpenRT 查询功能与配置一样,均需要通过 Shell 命令行方式操作,未来 OpenRT 将会提供一整套基于 Web 的数据可视化平台,计划采用 Dash board 风格呈现方式,监控整个网络系统工作状态。 


支持的硬件平台 


寄语

很多人认为“所谓国产操作系统,就是一个给 Linux 换皮肤的游戏“。这样的批评刺痛着每一位国产系统开发者的内心。翼辉信息 OpenRT 是国内首个非 Linux 内核路由平台开源项目,运行在 SylixOS(开源自主内核)操作系统之上,如果说以前的国产 项目都是”换壳“的游戏,那么希望 OpenRT 这样的”换核“游戏能够提振大众对于 国产操作系统的信心。 

OpenRT 仅仅是翼辉信息第一个正式亮相的开源项目,未来在区块链技术、人工智能技术等领域,翼辉信息将会持续不断推出基于国产操作系统内核的优质开源项目,为国产操作系统软件生态尽一份绵薄之力。