开放网络交换机系统SONiC与ONIE安装环境的常用命令

ONIE

什么是ONIE

ONIE,即开放网络安装环境,它在网络设备领域扮演着关键角色。作为一种特殊的引导加载程序,ONIE被广泛应用于众多开放式网络交换机内。其核心功能在于助力网络操作系统(NOS)的安装与启动,同时也能处理其他各类软件镜像。在实际应用场景中,当网络工程师需要部署新的网络操作系统,或是对现有系统进行升级、更换软件镜像时,ONIE便发挥作用。它能提供一个标准化、便捷的操作环境,让相关的安装和引导流程更加顺畅,极大地提升了网络设备管理与维护的效率,为构建稳定、高效的网络架构奠定了基础 。

默认用户密码

Login: root

Password: 无

常用命令

onie-discovery-stop:此命令用于停止ONIE发现进程,该进程用于发现和配置网络操作系统。 
onie-discovery-start:此命令启动ONIE发现进程,该进程会在网络上搜索可用的网络操作系统镜像,并为系统安装做好准备。 
onie-nos-install:此命令将网络操作系统镜像安装到系统上。该命令需要指定网络操作系统(NOS)镜像文件的路径。支持的URL类型有:http、ftp、tftp、本地文件。 
onie-sysinfo:此命令显示系统信息,例如系统制造商、型号和序列号。 
onie-boot-mode:此命令显示系统当前的引导模式。引导模式可以设置为ONIE、GRUB或已安装的网络操作系统的默认引导模式。 
onie-support:此命令创建一个包含相关系统信息的压缩包(tarball)。安装人员可以使用该压缩包来收集系统信息,并将其保存下来作为安装记录。 
onie-self-update:此命令下载并执行一个ONIE自我更新安装程序。一个ONIE自我更新镜像将升级ONIE软件。该命令需要指定ONIE镜像文件的路径。支持的URL类型有:http、ftp、tftp、本地文件。 
onie-syseeprom:此命令用于在运行ONIE的网络交换机上显示或更新ONIE系统的电可擦可编程只读存储器(EEPROM)信息。

新老命令对照表

旧版本命令 新版本命令
install_url onie-nos-install
update_url onie-self-update
support onie-support
onie-discovery-start onie-start
onie-discovery-stop onie-stop

SONiC

SONiC(Software for Open Networking in the Cloud)是由微软主导开发并于 2016 年开源的网络操作系统,主要面向数据中心和大规模云网络环境。它基于 Linux 内核,采用模块化设计,支持通过容器化技术扩展功能,具有高度开放性和灵活性。

作为一款开放网络操作系统,SONiC 打破了传统网络设备的封闭架构,允许用户根据需求定制网络功能。其核心优势包括:支持多种硬件平台(如 Broadcom、Mellanox 等芯片方案),提供丰富的网络协议(BGP、OSPF、EVPN 等),通过 REST API 和北向接口实现自动化运维,以及通过社区协作持续更新迭代。

目前,SONiC 已形成成熟的生态系统,吸引了戴尔、Intel、腾讯、阿里等企业参与。它被广泛应用于互联网数据中心、云服务商网络以及企业私有云场景,帮助用户降低网络设备成本,提升网络可编程性和运维效率。随着开放网络技术的普及,SONiC 正逐渐成为数据中心网络领域的重要开源方案。

默认用户密码

用户名:admin

密码:YourPaSsWoRd

常用命令

配置命令

  • sonic-cli:一个允许用户通过命令行与 SONiC 交换机交互的工具。
  • configure terminal:进入配置模式,允许对设备配置进行修改。
  • interface interface-name:进入指定接口的接口配置模式,可配置接口特定设置(如 IP 地址、VLAN 等)。
  • copy running-config startup-config:将当前配置保存到非易失性内存,确保重启或断电后配置仍保留。
  • reboot:重启系统,应用配置变更。

技术支持命令

  • show tech support:生成系统当前配置和状态的详细报告,便于向技术支持人员提供系统信息。
  • sudo generate_dump:创建系统当前状态的核心转储,用于分析系统崩溃和诊断问题。
  • show platform:显示硬件平台详细信息,包括 CPU、内存等组件。
  • show log:显示系统日志,包含系统生成的消息和事件。
  • sudo bash -c 'show log > /var/log/sonic/sonic.log':运行 “show log” 命令并将输出重定向到指定文件(本例中为 “/var/log/sonic/sonic.log”)。
  • sudo cat /var/log/sonic.log:在终端显示日志文件内容。

显示命令

  • show version:显示设备上运行的 SONiC 软件版本信息,包括版本号、构建日期等细节。
  • show running-configuration:显示设备当前配置,包括自上次重启后所做的任何更改。
  • show system uptime:显示设备自上次重启以来的运行时间。
  • show interfaces:显示设备网络接口信息,包括状态、MAC 地址、IP 地址等细节。
  • show interface <interface-name>:显示特定网络接口的详细信息,包括状态、MAC 地址、IP 地址和配置。
  • show interfaces status:显示设备所有接口的状态,包括是否启用 / 禁用、连接 / 断开,以及速率和双工设置。
  • show bgp summary:显示所有边界网关协议(BGP)会话状态,包括已建立和活动会话数,以及错误 / 警告信息。
  • show route:显示当前路由表,包括所有路由及其关联的下一跳地址。
  • show vlan:显示当前 VLAN 配置,包括所有已配置的 VLAN 及其关联接口。
  • ping <destination>:向指定目标发送 ping 包,测试网络连通性。
  • traceroute <destination>:追踪数据包到达指定目标的路由,显示途中每一跳。
  • show lldp neighbors:显示通过链路层发现协议(LLDP)发现的邻居信息,包括设备 ID、端口 ID 和功能。