本文解释了如何使用 Cato API 管理站点的网络范围,使用以下命令:
-
addNetworkRange
-
updateNetworkRange
-
removeNetworkRange
使用 networkRange 变更 API 来为您的帐户中的 Socket站点添加、更新和删除网络范围,并为站点定义以下设置:
-
网络范围 ID(自动为
addNetworkRange创建) -
LAN Socket 接口 ID
-
网络范围的设置,包括:子网、本地 IP 或网关 IP,以及 VLAN
-
对于 Azure vSocket HA 配置,浮动 IP 地址
-
网络范围的 DHCP 设置
对于分销商账户,您可以在每个客户账户中创建单独的API密钥,使用 Cato API 配置设置。
相同的参数用于使用 Cato 配置 API 创建或更新 Socket 站点的网络范围。 对于 addNetworkRange,参数是强制的,除非标记为可选。 对于 updateNetworkRange,包含您正在更新的 Socket 接口设置的参数。
-
networkRangeId - 网络范围的 ID(用于 updateNetworkRange)
-
lanSocketInterfaceId - 网络范围所关联的网络接口的 ID(用于 addNetworkRange)
-
name - 网络范围的名称
-
rangeType - 网络范围的类型(例如 Routed,Direct 等)
-
gateway - 对于 Routed 范围,相邻路由器的下一跳 IP 地址
-
vlan - 网络范围的 VLAN ID
-
azureFloutingIP - 对于 Azure HA 配置,LAN 路由表的下一跳 IP 地址
-
dhcpSettings - 定义此网络范围是使用默认账户 DHCP 设置还是自定义设置
可以使用 entityLookup 只读 API 检索 networkRangeId,使用 type 和值 siteRange
您还可以使用 search 参数,值为站点名称,查询会过滤掉其他站点的范围。
使用 entityLookup API 查询来检索 lanSocketInterfaceId 参数的值,步骤如下。 有关详细信息,请参阅 Cato API - 实体查找。
使用 type 及值 networkInterface,以及这些 parent 字段中的值:
-
id - <站点 id>
-
name - <接口的名称>
在下面查看 lanSocketInterfaceId 的示例脚本:示例 Postman 脚本。
rangeType 是一个枚举参数,定义了网络范围的类型。
-
Routed - 通过路由连接到 Socket 的网络范围
-
Direct - 直接连接到 Socket 或防火墙的网络范围(非通过路由器),但 IP 范围与站点的本地范围不同。
-
VLAN - 连接到 Cato 的 VLAN 类似于中继口
-
Native - 为每个 LAN 接口定义的 IP 范围
-
SecondaryNative - 对于 Socket HA 配置,次要 Socket 的本地范围
dhcpSettings 是一个枚举参数,定义了网络范围的 DHCP 设置。
-
dhcpType - 为网络范围配置以下 DHCP 类型之一:
-
DHCP_RELAY - 网络范围使用为账户配置的 DHCP 中继(在
relayGroupId参数中定义) -
DHCP_RANGE - 网络范围使用 Cato DHCP 服务器进行 DHCP,根据
ipRange参数中定义的 IP 范围 -
ACCOUNT_DEFAULT - 网络范围使用为账户定义的默认 DHCP 中继
-
DHCP_DISABLED - 禁用该网络范围的 DHCP
-
-
ipRange - 对于上述 DHCP_Range 选项,定义 Cato DHCP 服务器可以分配给主机的 IP 范围
-
relayGroupId - 输入该网络范围使用的 DHCP 中继组的 ID
对于 entityLookup,使用
type及值 dhcpRelayGroup
query entityLookup ($accountID: ID!, $type: EntityType!, $parent: EntityInput!) {
entityLookup (accountID: $accountID, type: $type, parent: $parent) {
items {
entity {
id
name
type
}
description
}
}
}
GraphQL 变量,适用于 lanSocketInterfaceID 的 entityLookup
{
"accountID": "26",
"type": "networkInterface",
"parent": {
"id": 26,
"type": "site"
}
}
mutation addNetworkRange ($accountId: ID!, $lanSocketInterfaceId: ID!, $input: AddNetworkRangeInput!) {
site(accountId: $accountId) {
addNetworkRange (lanSocketInterfaceId: $lanSocketInterfaceId, input: $input) {
networkRangeId
}
}
}
新 VLAN 范围的 GraphQL 变量
{
"accountId": "26",
"lanSocketInterfaceId": 26,
"input": {
"name": "Guest WIFI",
"rangeType": "VLAN",
"subnet": "10.1.0.0/24",
"localIp": "10.1.0.0.1",
"vlan": 100
}
}
0 条评论
请登录写评论。