Configuration API - Добавление, обновление и удаление networkRange

Эта статья объясняет, как использовать Cato API для управления диапазонами сети для сайта с помощью следующих команд:

  • addNetworkRange

  • updateNetworkRange

  • removeNetworkRange

Обзор networkRange

Используйте API мутации networkRange для добавления, обновления и удаления диапазонов сети для Socket сайта в вашей учетной записи и для определения следующих настроек для сайта:

  • ID диапазона сети (создается автоматически для addNetworkRange)

  • ID интерфейса LAN Socket

  • Настройки для диапазона сети, включая: подсеть, локальный IP или шлюз и VLAN

  • Для конфигураций Azure vSocket HA, плавающий IP-адрес

  • Настройки DHCP для диапазона сети

Для учетных записей реселлера вы можете создавать отдельные API-ключи внутри каждой учетной записи клиента, для которой вы настраиваете настройки с помощью Cato API.

Определение accountId для вашей учетной записи

ID учетной записи отображается на странице Администрирование > Общая информация.

Введите этот ID в аргумент accountId для API создания сайта, например:

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

Подробности об аргументах addNetworkRange и updateNetworkRange

Те же аргументы используются для создания или обновления диапазона сети для Socket сайта с использованием Cato configuration API. Для addNetworkRange аргументы обязательны, если не помечены как необязательные. Для updateNetworkRange включите аргументы для настроек интерфейса Socket, которые вы обновляете.

  • networkRangeId - ID для диапазона сети (для updateNetworkRange)

  • lanSocketInterfaceId - ID для сетевого интерфейса, с которым связан диапазон сети (для addNetworkRange)

  • name - Имя диапазона сети

  • rangeType - Тип диапазона сети (маршрутизируемый, прямой и т.д.)

  • subnet - Родной диапазон для интерфейса LAN в формате CIDR

  • localIP - Локальный IP-адрес для диапазона сети LAN

  • gateway - Для маршрутизируемых диапазонов, следующий IP-адрес перехода для соседнего маршрутизатора

  • vlan - ID VLAN для диапазона сети

  • azureFloutingIP - Для конфигураций Azure HA, следующий IP-адрес перехода для таблицы маршрутов LAN

  • dhcpSettings - Определяет, использует ли этот диапазон сети стандартные настройки DHCP для учетной записи или пользовательские настройки

networkRangeId (для updateNetworkRange)

networkRangeId можно получить с помощью API entityLookup только для чтения, используйте type со значением siteRange

Вы также можете использовать параметр search со значением в виде имени сайта, и запрос отфильтрует диапазоны с других сайтов.

lanSocketInterfaceId (для addNetworkRange)

Используйте запрос API entityLookup, чтобы получить значения для аргументов lanSocketInterfaceId следующим образом. Для получения дополнительной информации, см. Cato API - EntityLookup.

Используйте type со значением networkInterface, и значения из этих полей parent:

  • id - <site id>

  • name - <name of interface>

См. пример скрипта для lanSocketInterfaceId ниже, Пример скрипта Postman.

Имя диапазона сети

Аргумент name для имени диапазона сети.

Тип диапазона сети

Аргумент rangeType является аргументом перечисления, который определяет тип диапазона сети.

Это варианты:

  • Маршрутизируемый - Диапазон сети, который подключается к Socket через маршрут

  • Прямой - Диапазон сети, напрямую подключенный к Socket или межсетевому экрану (не через маршрутизатор), но IP-диапазон отличается от родного диапазона сайта.

  • VLAN - VLAN аналогичен магистральному порту

  • Родной - Определенный диапазон IP для каждого LAN интерфейса

  • ВторичныйРодной - Для конфигураций Socket HA, родной диапазон для вторичного Socket

Подсеть диапазона сети

Определите диапазон IP для диапазона сети для сайта в аргументе subnet в формате CIDR IPSubnet. /31 и /32 CIDR блоки не поддерживаются.

Локальный IP диапазона сети

(Обязательно для этих диапазонов: родной, вторичный родной, прямой, VLAN) Определите локальный IP-адрес для диапазона сети LAN в аргументе localIP.

Шлюз диапазона сети

(Обязательно для маршрутизируемых диапазонов) Определите IP-адрес шлюза для диапазона сети LAN в аргументе gateway.

VLAN диапазона сети

(Обязательно для диапазонов VLAN) Определите ID VLAN для диапазона сети LAN в аргументе vlan.

azureFloatingIp диапазона сети

(Обязательно для конфигураций Azure HA Socket) Определите плавающий IP для диапазона сети LAN в аргументе azureFloatingIp.

dhcpSettings диапазона сети (необязательно)

Аргумент dhcpSettings является аргументом перечисления, который определяет настройки DHCP для диапазона сети.

Это варианты:

  • dhcpType - Настройте один из следующих типов DHCP для диапазона сети:

    • DHCP_RELAY - Диапазон сети использует DHCP ретрансляцию, настроенную для учетной записи (определяется в аргументе relayGroupId)

    • DHCP_RANGE - Диапазон сети использует DHCP сервер Cato для DHCP, согласно IP-диапазону, определенному в аргументе ipRange

    • ACCOUNT_DEFAULT - Диапазон сети использует стандартную DHCP ретрансляцию, определенную для учетной записи

    • DHCP_DISABLED - DHCP отключен для данного диапазона сети

  • ipRange - Для опции DHCP_Range выше, определите диапазон IP, который DHCP сервер Cato может назначить хостам

  • relayGroupId - Введите ID для группы ретрансляции DHCP, которая использует данный диапазон сети

    Для entityLookup используйте type со значением dhcpRelayGroup

removeNetworkRange

Используйте API removeNetworkRange для удаления диапазона сети с сайта. Вам нужно использовать только networkRangeId с этим API.

Пример скрипта Postman

Пример entityLookup для lanSocketInterfaceID

запрос entityLookup ($accountID: ID!, $type: EntityType!, $parent: EntityInput!) {
    entityLookup (accountID: $accountID, type: $type, parent: $parent) {
        items {
            entity {
                id
                name
                type
            }
            description
        }
    }
}

ГрафQL переменные для entityLookup для lanSocketInterfaceID

{    
"accountID": "26",    
"type": "networkInterface",    
"parent": {
        "id": 26,
        "type": "site"
    }
}

Пример скрипта Postman для создания нового диапазона VLAN

мутация addNetworkRange ($accountId: ID!, $lanSocketInterfaceId: ID!, $input: AddNetworkRangeInput!) {
    site(accountId: $accountId) {
        addNetworkRange (lanSocketInterfaceId: $lanSocketInterfaceId, input: $input) {
            networkRangeId
        }
    }
}

ГрафQL Переменная для нового диапазона VLAN

{
    "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 из 1

0 комментариев