Comment fonctionne l’encodage de caractères sur les équipements Juniper Networks
Les données de configuration de Junos OS et la sortie des commandes opérationnelles peuvent contenir des caractères non ASCII, qui sont en dehors du jeu de caractères ASCII 7 bits. Lors de l’affichage de données opérationnelles ou de configuration dans certains formats ou au sein d’un certain type de session, le logiciel s’échappe et code ces caractères. Le logiciel échappe ou encode les caractères à l’aide de la référence décimale UTF-8 équivalente.
La CLI tente d’afficher tous les caractères non ASCII dans les données de configuration produites au format texte, set ou JSON. La CLI tente également d’afficher ces caractères dans la sortie de commande produite au format texte. Dans les cas d’exception, l’interface CLI affiche la référence des caractères décimaux UTF-8 à la place. (Les cas d’exception incluent les données de configuration au format XML et la sortie de commande au format XML ou JSON,) Dans les sessions de protocole NETCONF et Junos XML, vous obtenez un résultat similaire si vous demandez des données de configuration ou une sortie de commande qui contient des caractères non ASCII. Dans ce cas, le serveur renvoie la référence décimale UTF-8 équivalente pour ces caractères pour tous les formats.
Par exemple, supposons que le compte d’utilisateur suivant, qui contient la petite lettre latine n avec un tilde (ñ), soit configuré sur l’équipement.
[edit] user@host# set system login user mariap class super-user uid 2007 full-name "Maria Peña"
Lorsque vous affichez la configuration obtenue au format texte, la CLI imprime le caractère correspondant.
[edit] user@host# show system login user mariap full-name "Maria Peña"; uid 2007; class super-user;
Lorsque vous affichez la configuration obtenue au format XML dans la CLI, le caractère ñ est mappé à la référence ñ
décimale UTF-8 équivalente . Le même résultat se produit si vous affichez la configuration dans n’importe quel format dans une session de protocole NETCONF ou Junos XML.
[edit] user@host# show system login user mariap | display xml <rpc-reply xmlns:junos="http://xml.juniper.net/junos/17.2R1/junos"> <configuration junos:changed-seconds="1494033077" junos:changed-localtime="2017-05-05 18:11:17 PDT"> <system> <login> <user> <name>mariap</name> <full-name>Maria Peña</full-name> <uid>2007</uid> <class>super-user</class> </user> </login> </system> </configuration> <cli> <banner>[edit]</banner> </cli> </rpc-reply>
Lorsque vous chargez des données de configuration sur un équipement, vous pouvez charger des caractères non ASCII à l’aide de leurs références décimales UTF-8 équivalentes.