Sybase Ribo

Lundi, février 25, 2013
By Lionel BOLNET in Sybase (lbolnet@capdata.fr) [3 article(s)]

Sybase Ribo est un outil qui permet de lire les trames de données qui circulent entre un ASE et ses clients (jConnect, Sybase Central, isql, bcp, optdiag…).

Configurer Ribo

Ribo est inclus dans le driver jConnect donc si JDBC est installé, Ribo l’est aussi.

Ribo requiert que le Java JRE soit déja installé sur la machine que vous utilisez pour les étapes suivantes.

Vérifiez les deux variables d’environnement JAVA_HOME et RIBO_HOME.

  • La première doit pointer vers un répertoire du JDK reconnaissable par son contenu : « Welcome.html, lib, LICENCE, Copyright… »
  • La deuxième doit pointer vers le répertoire qui contient ribo. Généralement, jutils-3_0\ribo

Lancer Ribo

La commande la plus courante est :
Ribo -l 5005 -s hostname -p port -c prefixe -t

-l 5005 : c’est le port d’écoute de Ribo. Il faut choisir un port libre. En général, pour Ribo c’est 5005 mais ce n’est obligatoire.
-s hostname : c’est le nom de la machine qui héberge le dataserveur.
-p port : c’est le port pour se connecter au dataserveur.
-c prefixe : peut être n’importe quoi car c’est juste un préfixe pour nommer la log.
-t : ne rien écrire après. C’est une option pour dire que l’on veut traduire les trames de données en langage lisible.

Intégrer Ribo dans la connexion client/serveur

Ensuite, il faut comprendre comment Ribo intercepte les trames :

Ribo doit être intercalé entre le dataserveur et le client. Pour cela, il y a deux méthodes :

a) Modifier le port du dataserveur dans le sql.ini : il faut remplacer le port du dataserveur par le port d’écoute de Ribo.

b) Rajouter un serveur [RIBO] dans le sql.ini en précisant son serveur et son port d’écoute. Puis lancer le client en l’orientant vers le serveur RIBO.

Dans les deux cas, Ribo va intercepter les données, les écrire dans un fichier de log, puis les transmettre au dataserveur.

Lire le fichier de log

Ribo écrit dans le fichier de log tant qu’il est en exécution. Il ne rend pas la main spontanément à moins que l’utilisateur fasse CTRL-C.
Lorsque l’on veut lire la log, il faut aller dans %RIBO_HOME% et ouvrir un fichier portant un nom commençant par le préfixe choisit avec l’argument -c et finissant par txt.
Ce fichier contient un trace chronologique des données qui ont circulé dans Ribo.

Limites

L’outil Ribo est très limité. L’un des dangers auxquels il expose c’est de remplir tout un espace disque avec sa log, surtout s’il tombe sur l’erreur « Error processing TDS. Attempting to skip.« .

Documentation officielle (en Anglais)

http://infocenter.sybase.com/help/topic/com.sybase.infocenter.dc37542.0300/doc/pdf/ribo_users_guide.pdf

Continuez votre lecture sur le blog :




Cliquer pour partager cet article sur Viadeo
Cliquer sur "CAPTURER" pour sauvegarder cet article dans Evernote Clip to Evernote

Leave a Reply