跳到主要内容

list_connection 获取连接列表

POST /api/v1/network/list_connection_x

描述

获取连接列表接口,用于获取所有网络连接的状态信息。 这个接口用于在网络配置主页面显示全部网络连接的状态信息。对应命令 nmcli connection show。

这里返回的连接列表是所有的连接,包括所有以太网连接(物理接口)、bond连接、vlan连接。

表格形式展示:

alt text

  • 以太网连接(物理接口)全部显示。
  • 可以“添加Bond聚合接口”、“VLAN虚拟接口”,不能添加以太网连接(物理接口),默认全部显示,可以配置是否启用。
  • 可以“删除Bond聚合接口”、“VLAN虚拟接口”,不能删除以太网连接(物理接口)。
  • 增加接口是否启用/禁用显示,对应enabled字段。

访问权限

具备以下权限:

network:list_connection_x

JSON参数

请求参数如下:

{}

无参数, 传递空对象即可

请求示例:

{}

响应结果

请求返回的HTTP状态码为200

返回结果为JSON格式的数据,您可以通过解析JSON数据来获取API调用的结果信息。结构如下:

{
"success": true|false,
"data"?:[
{
"device": string, // 网口设备名称:如eth0, eth1等
"type": string, // 设备类型:如ethernet, bond,vlan等
"status": string, // 设备状态:如activated, 值有点奇怪
"macAddress": string, // MAC地址
"ipv4Method": "dhcp"|"manual", // IPv4地址获取方式:如dhcp, manual
"ipv4Address": string, // IPv4地址 xxx/xx 格式, CIDR格式, 可以多个用逗号分隔
"ipv4Gateway": string, // IPv4网关
"ipv6Method": "auto"|"dhcp"|"manual", // IPv6地址获取方式:如auto dhcp, manual
"ipv6Address": string, // IPv6地址 xxx/xx 格式, CIDR格式, 可以多个用逗号分隔
"ipv6Gateway": string, // IPv6网关
"tags": "tag1,tag2", // 设备标签, 用于用户备注用途, 多个标签中间用逗号分隔
"enabled": true|false // 设备是否启用
},
...
],
"errorCode"?: "option string",
"errorMessage"?: "option string",
"showType"?: 0|1|2|4|9,
"traceId"?: "option string"
}
提示
  • device: 网口设备名称,如eth0, eth1等
  • type: 设备类型,如ethernet, bond
  • status: 设备状态,如activated
  • macAddress: MAC地址
  • ipv4Method: IPv4地址获取方式,如dhcp, manual, disabled
  • ipv4Address: IPv4地址 xxx/xx 格式
  • ipv4Gateway: IPv4网关
  • ipv6Method: IPv6地址获取方式,如auto dhcp, manual, disabled
  • ipv6Address: IPv6地址 xxx/xx 格式
  • ipv6Gateway: IPv6网关
  • tags: 设备标签,用于用户备注用途
  • enabled: 设备是否启用

设备状态含义:

状态英文含义说明
已连接connected设备已激活且正常工作有IP地址,可以收发数据
正在连接connecting设备正在激活过程中临时状态,通常很快转换
已断开disconnected设备存在但未激活设备可用但没有连接配置
不可用unavailable设备不可用硬件故障、驱动问题、链路断开
未管理unmanaged设备不被NetworkManager管理手动配置或被其他工具管理
失败failed连接尝试失败配置错误、认证失败等

正确结果示例:

{
"success": true,
"data": [
{
"device": "eth_ntp0",
"type": "ethernet",
"status": "activated",
"macAddress": "00:11:22:33:44:55",
"ipv4Method": "dhcp",
"ipv4Address": "192.168.1.100/24",
"ipv4Gateway": "192.168.1.1",
"ipv6Method": "auto",
"ipv6Address": "2001:db8::1/64",
"ipv6Gateway": "2001:db8::ff",
"tags": "tag1,tag2",
"enabled": true
},
{
"device": "eth_ntp1",
"type": "ethernet",
"status": "activated",
"macAddress": "00:11:22:33:44:56",
"ipv4Method": "manual",
"ipv4Address": "192.168.1.101/24",
"ipv4Gateway": "192.168.1.1",
"ipv6Method": "auto",
"ipv6Address": "2001:db8::2/64",
"ipv6Gateway": "2001:db8::ff",
"tags": "tag1,tag2",
"enabled": false
}
]
}