API de configuration - Ajouter, mettre à jour et supprimer networkRange

Cet article explique comment utiliser l'API Cato pour gérer les plages réseau d'un site avec ces commandes :

  • addNetworkRange

  • updateNetworkRange

  • removeNetworkRange

Aperçu de networkRange

Utilisez les APIs de mutation networkRange pour ajouter, mettre à jour et supprimer des plages réseau pour un site Socket dans votre compte et définissez les paramètres suivants pour le site :

  • ID de la plage réseau (créé automatiquement pour addNetworkRange)

  • Identifiant d'interface LAN pour Socket

  • Paramètres de la plage réseau incluant : sous-réseau, IP locale ou IP de passerelle, et VLAN

  • Pour les configurations Azure vSocket HA, l'adresse IP flottante

  • Paramètres DHCP pour la plage réseau

Pour les comptes revendeurs, vous pouvez créer des clés API distinctes dans chaque compte client configurant les paramètres avec l'API Cato.

Localiser le compteId pour votre compte

L'ID de compte est affiché dans la page Administration> Infos générales.

Entrez cet ID dans l'argument accountId pour l'API de création de site, par exemple :

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

Détails pour les arguments addNetworkRange et updateNetworkRange

Les mêmes arguments sont utilisés pour créer ou mettre à jour une plage réseau pour un site Socket en utilisant l'API de configuration Cato. Pour addNetworkRange, les arguments sont obligatoires sauf s'ils sont marqués comme optionnels. Pour updateNetworkRange, incluez les arguments pour les paramètres d'interface Socket que vous mettez à jour.

  • networkRangeId - ID pour la plage réseau (pour updateNetworkRange)

  • lanSocketInterfaceId - ID pour l'interface réseau que la plage réseau associe (pour addNetworkRange)

  • Nom - Nom de la plage réseau

  • rangeType - Type de plage réseau (Routée, Directe, etc.)

  • subnet - Plage native pour l'interface LAN au format CIDR

  • localIP - Adresse IP locale pour la plage réseau LAN

  • passerelle - Pour les plages Routées, l'adresse IP suivante pour le routeur voisin

  • vlan - ID VLAN pour la plage réseau

  • azureFloutingIP - Pour les configurations Azure HA, l'adresse IP suivante pour le tableau de routage LAN

  • dhcpSettings - Indique si cette plage réseau utilise les paramètres DHCP du compte par défaut ou personnalisés

networkRangeId (pour updateNetworkRange)

Le networkRangeId peut être récupéré à l'aide de l'API en lecture seule entityLookup, utilisez le type avec la valeur siteRange

Vous pouvez aussi utiliser le paramètre search avec la valeur comme le nom du site, et la requête filtre les plages d'autres sites.

lanSocketInterfaceId (pour addNetworkRange)

Utilisez la requête API entityLookup pour récupérer les valeurs pour les arguments lanSocketInterfaceId, comme suit. Pour plus d'informations, voir Cato API - EntityLookup.

Utilisez le type ayant la valeur networkInterface, et les valeurs de ces champs parent :

  • id - <site id>

  • Nom - <nom de l'interface>

Voir ci-dessous un script d'échantillon pour le lanSocketInterfaceId, Script Postman d'exemple.

Nom de la plage réseau networkRange

L'argument Nom est utilisé pour le nom de la plage réseau.

Type de plage réseau networkRange

Le rangeType est un argument d'enum qui définit le type de plage réseau.

Voici les options :

  • Routée - Plage réseau qui se connecte à un Socket via une route

  • Direct - Plage réseau directement connectée au Socket ou au pare-feu (non via un routeur), mais la plage IP est différente de la plage native du site.

  • VLAN - Les VLANs qui se connectent à Cato sont semblables à un port de trunk

  • Natif - Plage IP définie pour chaque interface LAN

  • SecondaryNative - Pour les configurations Socket HA, la plage native pour le Socket secondaire

Sous-réseau networkRange

Définissez la plage IP pour la plage réseau pour le site dans l'argument subnet au format CIDR IPSubnet. Les blocs CIDR /31 et /32 ne sont pas pris en charge.

localIP de networkRange

(Obligatoire pour ces plages : Native, SecondaryNative, Direct, VLAN) Définissez l'adresse IP locale pour la plage réseau LAN dans l'argument localIP.

Passerelle de networkRange

(Obligatoire pour les plages Routées) Définissez l'adresse IP de la passerelle pour la plage réseau LAN dans l'argument gateway.

VLAN de networkRange

(Obligatoire pour les plages VLAN) Définissez l'ID VLAN pour la plage réseau LAN dans l'argument vlan.

azureFloatingIp de networkRange

(Obligatoire pour les configurations Azure HA Socket) Définissez l'IP flottante pour la plage réseau LAN dans l'argument azureFloatingIp.

dhcpSettings de networkRange (optionnel)

Le dhcpSettings est un argument d'enum qui définit les paramètres DHCP pour la plage réseau.

Voici les options :

  • dhcpType - Configurez un des types DHCP suivants pour la plage réseau :

    • DHCP_RELAY - La plage réseau utilise un relais DHCP configuré pour le compte (défini dans l'argument relayGroupId)

    • DHCP_RANGE - La plage réseau utilise le serveur DHCP Cato selon la plage IP définie dans l'argument ipRange

    • ACCOUNT_DEFAULT - La plage réseau utilise le relais DHCP par défaut défini pour le compte

    • DHCP_DISABLED - DHCP est désactivé pour cette plage réseau

  • ipRange - Pour l'option DHCP_Range ci-dessus, définissez la plage IP que le serveur DHCP Cato peut attribuer aux hôtes

  • relayGroupId - Entrez l'ID pour le groupe de relais DHCP que cette plage réseau utilise

    Pour entityLookup, utilisez le type avec la valeur dhcpRelayGroup

removeNetworkRange

Utilisez l'API removeNetworkRange pour supprimer une plage réseau d'un site. Vous devez uniquement utiliser le networkRangeId avec cette API.

Script Postman d'exemple

Échantillon entityLookup pour lanSocketInterfaceID

requête entityLookup ($accountID : ID!, $type : Type!, $parent : Paramètre d'entité!) {
    entityLookup (accountID: $accountID, type: $type, parent: $parent) {
        items {
            entity {
                id
                Nom
                Type
            }
            Description
        }
    }
}

Variables GraphQL pour entityLookup pour lanSocketInterfaceID

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

Script Postman d'exemple pour créer une nouvelle plage VLAN

mutation addNetworkRange ($accountId : ID!, $lanSocketInterfaceId : ID!, $input : AddNetworkRangeInput!) {
    site(accountId : $accountId) {
        addNetworkRange (lanSocketInterfaceId : $lanSocketInterfaceId, input : $input) {
            networkRangeId
        }
    }
}

Variable GraphQL pour nouvelle plage VLAN

{
    "accountId": "26",
    "lanSocketInterfaceId": 26,
    "input": {
        "Nom": "Guest WIFI",
        "rangeType": "VLAN",
        "subnet": "10.1.0.0/24",
        "localIp": "10.1.0.0.1",
        "vlan": 100
    }
}

Cet article vous a-t-il été utile ?

Utilisateurs qui ont trouvé cela utile : 0 sur 1

0 commentaire