配置 API - 添加、更新和删除 networkRange

本文解释了如何使用 Cato API 管理站点的网络范围,使用以下命令:

  • addNetworkRange

  • updateNetworkRange

  • removeNetworkRange

networkRange 概述

使用 networkRange 变更 API 来为您的帐户中的 Socket站点添加、更新和删除网络范围,并为站点定义以下设置:

  • 网络范围 ID(自动为 addNetworkRange 创建)

  • LAN Socket 接口 ID

  • 网络范围的设置,包括:子网、本地 IP 或网关 IP,以及 VLAN

  • 对于 Azure vSocket HA 配置,浮动 IP 地址

  • 网络范围的 DHCP 设置

对于分销商账户,您可以在每个客户账户中创建单独的API密钥,使用 Cato API 配置设置。

定位您的账户的 accountId

账号 ID 显示在管理 > 一般信息页面。

在站点创建 API 中,将此 ID 输入 accountId 参数,例如:

site(accountId: 26) {
    addSocketSite(input: $addSocketSite) { 
         siteId 
    } 
}

addNetworkRange 和 updateNetworkRange 参数的详细信息

相同的参数用于使用 Cato 配置 API 创建或更新 Socket 站点的网络范围。 对于 addNetworkRange,参数是强制的,除非标记为可选。 对于 updateNetworkRange,包含您正在更新的 Socket 接口设置的参数。

  • networkRangeId - 网络范围的 ID(用于 updateNetworkRange)

  • lanSocketInterfaceId - 网络范围所关联的网络接口的 ID(用于 addNetworkRange)

  • name - 网络范围的名称

  • rangeType - 网络范围的类型(例如 Routed,Direct 等)

  • subnet - 在 CIDR 格式的 LAN 接口的本地范围

  • localIP - LAN 网络范围的本地 IP 地址

  • gateway - 对于 Routed 范围,相邻路由器的下一跳 IP 地址

  • vlan - 网络范围的 VLAN ID

  • azureFloutingIP - 对于 Azure HA 配置,LAN 路由表的下一跳 IP 地址

  • dhcpSettings - 定义此网络范围是使用默认账户 DHCP 设置还是自定义设置

networkRangeId(用于 updateNetworkRange)

可以使用 entityLookup 只读 API 检索 networkRangeId,使用 type 和值 siteRange

您还可以使用 search 参数,值为站点名称,查询会过滤掉其他站点的范围。

lanSocketInterfaceId(用于 addNetworkRange)

使用 entityLookup API 查询来检索 lanSocketInterfaceId 参数的值,步骤如下。 有关详细信息,请参阅 Cato API - 实体查找

使用 type 及值 networkInterface,以及这些 parent 字段中的值:

  • id - <站点 id>

  • name - <接口的名称>

在下面查看 lanSocketInterfaceId 的示例脚本:示例 Postman 脚本

networkRange 名称

name 参数用于网络范围的名称。

networkRange rangeType

rangeType 是一个枚举参数,定义了网络范围的类型。

这些是选项:

  • Routed - 通过路由连接到 Socket 的网络范围

  • Direct - 直接连接到 Socket 或防火墙的网络范围(非通过路由器),但 IP 范围与站点的本地范围不同。

  • VLAN - 连接到 Cato 的 VLAN 类似于中继口

  • Native - 为每个 LAN 接口定义的 IP 范围

  • SecondaryNative - 对于 Socket HA 配置,次要 Socket 的本地范围

networkRange 子网

subnet 参数中定义站点的网络范围的 IP 范围,使用 CIDR IPSubnet 格式。 /31 和 /32 CIDR 块不支持。

networkRange 本地IP

(对这些范围是强制性的:本地,次要本地,直接,VLAN)在 localIP 参数中定义 LAN 网络范围的本地 IP 地址。

networkRange 网关

(对 Routed 范围是强制性的)在 gateway 参数中定义 LAN 网络范围的网关 IP 地址。

networkRange vlan

(对 VLAN 范围是强制性的)在 vlan 参数中定义 LAN 网络范围的 VLAN ID。

networkRange azureFloatingIp

(对 Azure HA Socket 配置是强制性的)在 azureFloatingIp 参数中定义 LAN 网络范围的浮动 IP。

networkRange dhcpSettings(可选)

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

removeNetworkRange

使用 removeNetworkRange API 从站点删除网络范围。 您只需与此 API 一起使用 networkRangeId

示例 Postman 脚本

lanSocketInterfaceID 的示例 entityLookup

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"
    }
}

示例 Postman 脚本创建新 VLAN 范围

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
    }
}

这篇文章有帮助吗?

1 人中有 0 人觉得有帮助

0 条评论