Date de publication du RFC : Juin 2011
Auteur(s) du RFC : R. Enns (Juniper Networks), M. Bjorklund (Tail-f Systems), J. Schoenwaelder (Jacobs University), A. Bierman (Brocade)
Chemin des normes
Réalisé dans le cadre du groupe de travail IETF netconf
Première rédaction de cet article le 1 juillet 2011
Netconf est un protocole de configuration de matériel réseau (typiquement des routeurs ou des commutateurs). Ce RFC est la nouvelle version publiée par le groupe de travail IETF sur Netconf. (La precédente était le RFC 4741.)
Si on doit gérer un seul routeur, le faire à la main est raisonnable. Mais, si on doit en gérer des dizaines ou des centaines, cela devient impossible sans automatisation. Il existe depuis longtemps de nombreux outils pour gérer un grand nombre d'équipements réseaux, Rancid étant le plus connu. (L'excellent article de Joe Abley, Managing IP Networks with Free Software en donne un bon aperçu. Le RFC 3535 rend compte d'un atelier de l'IAB qui a discuté de ces questions en 2002.) Netconf vise à rendre l'écriture de ces outils plus simple.
Netconf spécifie donc un protocole de RPC permettant à un gérant (manager) de modifier la configuration de l'équipement (device) en lui envoyant du XML.
Le contenu exact de ce document XML n'est pas entièrement spécifié par Netconf car il dépend de l'équipement configuré (la section 1.2 de notre RFC explique ce point). Un langage de description des modèles, Yang (RFC 6020), existe pour décrire les possibilités.
Extrait du RFC, voici un exemple (hypothétique) où on fixe à 1500
octets la
MTU de l'interface réseau
eth0
:
<rpc message-id="101" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> <edit-config> <target> <running/> </target> <config> <top xmlns="http://example.com/schema/1.2/config"> <interface> <name>eth0</name> <mtu>1500</mtu> </interface> </top> </config> </edit-config> </rpc>
Il est difficile de ne pas penser à l'acronyme NIH en lisant ce RFC. Netconf définit un protocole de RPC alors qu'il existe déjà SOAP et XML-RPC, Netconf définit en section 6, un mécanisme d'extraction de sous-arbres XML alors que XPath existe déjà...
Quels sont les changements depuis le RFC
original ? L'annexe F les résume. Pas de grand changement, des bogues
signalées contre le RFC 4741 et quelques
ajouts : un malformed-message
ajouté aux messages
d'erreur possibles, une option remove
ajoutée aux
opérations possibles, l'ajout de la notion de « nom d'utilisateur »,
le schéma XSD de modélisation des opérations remplacé par un module
YANG, etc.
À noter qu'un Wiki, http://trac.tools.ietf.org/wg/netconf/trac/wiki
, fournit plein
d'informations sur Netconf, notamment sur les mises en œuvre
existantes du protocole, dont certaines en logiciel libre. Parmi les
autres, les routeurs Juniper peuvent déjà être
configurés avec Netconf (et une bibliothèque
Java est fournie). Ça marche aussi sur
un Cisco.
Version PDF de cette page (mais vous pouvez aussi imprimer depuis votre navigateur, il y a une feuille de style prévue pour cela)
Source XML de cette page (cette page est distribuée sous les termes de la licence GFDL)