跳到主要内容

save_bond_x 添加绑定连接

POST /api/v1/network/save_bond_x

描述

添加/修改绑定连接接口,用于添加新的网络绑定连接或者修改现有的网络绑定连接。 这个接口用于在网络配置主页面添加或修改绑定连接。在启用Bond连接时会进行冲突检测,禁用时跳过检测。

Bond Slave设备冲突检测:

  • 检测内容:检查Bond的slave设备是否与其他已启用的Bond连接冲突,如果冲突返回错误,阻止保存配置
  • 原因:一个物理接口不能同时属于多个Bond聚合组

管理接口(eth_ntp5)保护检测:

  • 检测内容:检查Bond的slave设备是否包含任何管理接口,如果包含返回错误,阻止保存配置
  • 原因:管理接口必须保持独立,不能作为Bond的slave设备,否则会导致网络中断

Slave接口状态冲突检测:

  • 检测内容:检查slave接口是否在interfaces.json中处于启用状态,如果启用自会动禁用冲突的slave接口配置(不会返回错误),前端最好能提示用户进行确认。
  • 原因:slave接口不能既独立配置IP,又作为Bond成员

VLAN主设备冲突检测:

  • 检测内容:检查Bond的slave设备是否被任何已启用的VLAN连接作为主设备使用,如果冲突返回错误,阻止保存配置
  • 原因:Linux内核中,网络设备有明确的主从关系, VLAN子接口依赖于主设备的MAC地址和物理特性, Bond会接管slave设备的控制权, 两者同时存在会导致控制权冲突

访问权限

需要登录,具备以下权限:

network:save_connection_x

JSON参数

请求参数如下:

{
"bondName": string, // 绑定连接名称,如bond0, 添加时候bondName为空
"slaves": [string], // 从属连接名称,如eth0, eth1等
"mode": "balance-rr"|"active-backup"|"balance-xor"|"broadcast"|"802.3ad"|"balance-tlb"|"balance-alb", // 绑定模式
"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, // 连接是否启用
"bondOptions"?: { // 绑定选项(可选)
"miimon": "200", // 毫秒,链路监测间隔时间,值为string类型
"updelay": "0",
"downdelay": "0"
}
}
提示
  • bondName : 绑定连接名称,如bond0, 添加时候bondName为空
  • slaves : 从属连接名称,如eth0, eth1等
  • mode : 绑定模式
  • ipv4Method : IPv4地址获取方式:如dhcp, manual
  • ipv4Address : IPv4地址 xxx/xx 格式, CIDR格式,可以多个用逗号分隔
  • ipv4Gateway : IPv4网关
  • ipv6Method : IPv6地址获取方式:如auto dhcp, manual
  • ipv6Address : IPv6地址 xxx/xx 格式, CIDR格式,可以多个用逗号分隔
  • ipv6Gateway : IPv6网关
  • tags : 设备标签, 用于用户备注用途

响应结果

请求返回的HTTP状态码为200

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

{
"success": true|false,
"errorCode"?: "option string",
"errorMessage"?: "option string",
"showType"?: 0|1|2|4|9,
"traceId"?: "option string"
}
冲突类型错误码说明
Bond Slave冲突error.bond.slave.conflictslave设备已被其他Bond使用
配置验证失败error.request.validation.failed包含管理接口或其他验证错误
Slave禁用失败error.slave.disable.failed自动禁用slave接口失败
VLAN主设备冲突error.bond.slave.vlan.conflictslave设备已被VLAN使用