Sous-sections


7.1 Server imon avec imond

Imond est un programme serveur qui répond à certaines enquêtes sur la gestion du réseau et accepte aussi des commandes qui peuvent contrôler le routeur sur le réseau local.

Imond contrôle également les Moindres-Coûts-Routages. Il utilise le fichier de configuration /etc/imond.conf qui est produit automatiquement au moment du boot, à partir de la variable ISDN_CIRC_x_XXX du fichier config/isdn.txt, le fichier est généré par un script shell.

imond est un démon qui fonctionne en permanence en tache de fond, il écoute le port 5000 TCP/IP sur le périphérique /dev/isdninfo.

Voici toutes les commandes qui peuvent être envoyées par le port 5000 TCP/IP :

Commandes Admin



addlink ci-index Ajouter un canal au circuit (Channel-Bundling)
adjust-time seconds Incrémente la date sur le routeur en secondes
delete filename pw Supprime le fichier sur le routeur
hup-timeout #ci-index [value] Affiche ou compose le HUP-Timeout pour des circuits RNIS (ou numéris)
removelink ci-index Enlever le canal supplémentaire
reset-telmond-log-file Supprime le fichier journal de telmond
reset-imond-log-file Supprime le fichier journal de imond
receive filename #octets pw Transfére d'un fichier au routeur. Imond donne l'ordre avec ACK (0x06). Après, le fichier est transféré par blocs de 1024 Octets qui sont également confirmé avec ACK. En conclusion, imond répond OK.
send filename pw Si le mot de passe est correct et que le fichier existe, imond répond OK avec un #octet. Puis, imond transfère le fichier par blocs de 1024 octets, chaque fois confirmés avec ACK (0x06). A la fin, imond répond OK.
support pw Montre le statut/configuration du routeur
sync Synchronise le Cache des lecteurs montés



Commandes Admin et Utilisateur



dial Choix du FAI (Defaut-Route-Circuit)
dialmode [auto|manual|off] Réglage des actions dans Dialmode
disable Raccroche et place dialmode sur "off"
enable Mets dialmode sur "auto"
halt Descend proprement le Routeur
hangup [#channel-id] Raccroche
poweroff Descent le routeur et mise hors tension
reboot Reboot le routeur fli4l!
route [ci-index] Met le routeur par Defaut sur un Circuit X (0=automatique)



Commandes Utilisateur



channels Nombre de Canaux ISDN disponibles
charge #channel-id Edite les frais de connexion pour un Canal en ligne
chargetime #channel-id Temps et frais de connexion pour un canal en ligne
circuit [ci-index] Edite le numéro du Circuit
circuits Edite le nombre de Defaut-Route-Circuits
cpu Donne la charge du CPU en pourcentage
date Edite la date et heure
device ci-index Circuits du périphérique utilisé
driverid #channel-id Edite Driver-ID pour le Canal X
help Edite l'aide
inout #channel-id Edite la direction (entrante/sortante)
imond-log-file Edite le fichier du Protocole imond
ip #channel-id Edite l'adresse IP
is-allowed command Edite si la commande est valide
commandes possibles : dial|dialmode|route|reboot |imond-log|telmond-log|mgetty-log
is-enabled Edite si dialmode est sur off (0) ou auto (1)
links ci-index Edite le nombre de canaux 0, 1 ou 2, 0 utilisé, ou alors : Aucun Channel-Bundling possible
log-dir imond|telmond|mgetty Donne la direction des fichiers Log
mgetty-log-file Edite le protocole du fichier mgetty
online-time #channel-id Edite le temps en ligne, et de connexion en hh:mm:ss
pass [password] Vérifie, le mot de passe qui a été saisit par
1 Mot de passe Utilisateur est fixé
2 Mot de passe Admin est fixé
4 imond se trouve dans le mode Admin
phone #channel-id Edite le numéro de Tél et le nom du "correspondant"
pppoe Donne le numéro du périphérique pppoe (0 ou 1)
quantity #channel-id Donne l'ensemble des transmissions (en octet)
quit Coupe la connexion avec imond
rate #channel-id Edite les connexions (entrant/sortant en Octet/sec)
status #channel-id Edite le statut pour le Canal X
telmond-log-file Edite le protocole telmond
time #channel-id Edite le temps total en ligne, au Format hh:mm:ss
timetable [ci-index] Edite la time-table LC-Routing
uptime Edite le temps d'utilisation du Routeur en secondes
usage #channel-id Edite les réponses des connexions: Fax, Répondeur, Net, Modem, Raw
version Edite la version du protocole et la version du Programme


Le port 5000 TCP/IP est accessible uniquement depuis un réseau LAN masqué. Avec la configuration standard du firewall l'accés est bloqué de l'extérieur.

Imond supporte deux modes d'administrations, le Mode Utilisateur et le Mode Admin. On peut installer un Mot de Passe pour ces deux modes au moyen des variables IMOND_PASS et IMOND_ADMIN_PASS. Si le Mot de Passe n'est pas transmis au serveur imond le client imonc a accés uniquement à deux commandes "pass" et "quit" toutes les autres commandes sont rejetées et une erreur s'affiche.

Si plus tard, vous voulez limiter l'accés au serveur imond à un seul PC, la configuration du Firewall doit être modifier.

Les commandes

         enable/disable/dialmode   dial/hangup   route   reboot/halt

peuvent être activées ou désactivées dans la variable IMOND_XXX voir (le chapitre "configuration").

Avec un ordinateur Unix/Linux (ou un ordinateur Windows par la fenètre DOS) vous pouvez facilement entrer les commandes aprés la connexion telnet.

Connexion telnet :

        telnet fli4l 5000        \# ou le Nom correspondant au routeur fli4l

Vous pouvez directement entrer les commandes mentionnées ci-dessus.

Par exemple la commande "help" active l'aide sur l'écran ou "quit" démonte (ou arrête) le serveur imond.


7.1.1 Mode de fonctionnement du Moindre-Coût-Routage

imond construit une Time-Table (ou Plage Horaire) à partir du fichier de configuration /etc/imond.conf (qui est créé au boot avec la variable de configuration ISDN_CIRC_x_TIMES. Ce "calendrier" est composé d'une semaine par intervalle d'une heure, une semaine = 168 heures = 168 octets. La table se compose de circuits, dans lesquel sont définis des Défaut-Routes (ou connexion par défaut au FAI).

Avec la commandement "timetable" on peut voir la table imond. Exemple de configuration :

Supposons que nous définissions 3 circuits de connexions pour chaque FAI c'est à dire :

        CIRCUIT_1_NAME='Addcom'
        CIRCUIT_2_NAME='AOL'
        CIRCUIT_3_NAME='Firma'

Les deux premiers circuits sont réglés avec Défaut-Route c.à d. que l'itinétaire par défaut est écrit dans la variable ISDN_CIRC_x_ROUTE avec la valeur '0.0.0.0/0'.

Les variables ISDN_CIRC_x_TIMES se présentent de la manière suivante :

        ISDN_CIRC_1_TIMES='Mo-Fr:09-18:0.0388:N Mo-Fr:18-09:0.0248:Y
                      Sa-Su:00-24:0.0248:Y'

        ISDN_CIRC_2_TIMES='Mo-Fr:09-18:0.019:Y Mo-Fr:18-09:0.049:N
                      Sa-Su:09-18:0.019:N Sa-Su:18-09:0.049:N'

        ISDN_CIRC_3_TIMES='Mo-Fr:09-18:0.08:N Mo-Fr:18-09:0.03:N
                      Sa-Su:00-24:0.03:N'

Puis le fichier /etc/imond.conf est créé de cette façon :

        #day  hour  device  defroute  phone        name        charge  ch-int
        Mo-Fr 09-18 ippp0   no        010280192306 Addcom      0.0388   60
        Mo-Fr 18-09 ippp0   yes       010280192306 Addcom      0.0248   60
        Sa-Su 00-24 ippp0   yes       010280192306 Addcom      0.0248   60
        Mo-Fr 09-18 ippp1   yes       019160       AOL         0.019   180
        Mo-Fr 18-09 ippp1   no        019160       AOL         0.049   180
        Sa-Su 09-18 ippp1   no        019160       AOL         0.019   180
        Sa-Su 18-09 ippp1   no        019160       AOL         0.049   180
        Mo-Fr 09-18 isdn2   no        0221xxxxxxx  Firma       0.08     90
        Mo-Fr 18-09 isdn2   no        0221xxxxxxx  Firma       0.03     90
        Sa-Su 00-24 isdn2   no        0221xxxxxxx  Firma       0.03     90

imond produit alors Time-Table (ou Plage Horaire) dans la mémoire. voici la table des données sorties avec la commande "timetable" :

         0  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
     --------------------------------------------------------------------------
     Su  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3
     Mo  2  2  2  2  2  2  2  2  2  4  4  4  4  4  4  4  4  4  2  2  2  2  2  2
     Tu  2  2  2  2  2  2  2  2  2  4  4  4  4  4  4  4  4  4  2  2  2  2  2  2
     We  2  2  2  2  2  2  2  2  2  4  4  4  4  4  4  4  4  4  2  2  2  2  2  2
     Th  2  2  2  2  2  2  2  2  2  4  4  4  4  4  4  4  4  4  2  2  2  2  2  2
     Fr  2  2  2  2  2  2  2  2  2  4  4  4  4  4  4  4  4  4  2  2  2  2  2  2
     Sa  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3  3

     No.  Name                   DefRoute  Device  Ch/Min   ChInt
      1   Addcom                   no      ippp0   0.0388     60
      2   Addcom                   yes     ippp0   0.0248     60
      3   Addcom                   yes     ippp0   0.0248     60
      4   AOL                      yes     ippp1   0.0190    180
      5   AOL                      no      ippp1   0.0490    180
      6   AOL                      no      ippp1   0.0190    180
      7   AOL                      no      ippp1   0.0490    180
      8   Firma                    no      isdn2   0.0800     90
      9   Firma                    no      isdn2   0.0300     90
     10   Firma                    no      isdn2   0.0300     90

Pour le circuit 1 (Addcom) il y a trois éléments définis (1-3), pour le circuit 2 il y a quatre éléments (4-7), et pour le circuit 3 il y a trois éléments (8-10).

Les index des circuits activés sont inscris toutes les heures dans la Time-Table respectivement. Ici les index (2-4) apparaissent, car les autres ne passent pas par LC-Défaut-Route.

Si vous avez des zéros dans Time-Table, c'est qu'il manque des données dans la variable ISDN_CIRC_X_TIMES. Si vous avez des zéro sur certaine plage horaire, cela veux dire qu'il n'y aura pas de Défaut-Route et aucun accés Internet possible sur ces plages horaires!

Au démarrage du programme, imond vérifie le jour de la semaine et l'heure, puis les index dans la Time-Table et enfin régle les Défauts-Routes correspondants. Le Défaut-Route (ou connexion par Défaut au FAI) est alors activé par rapport à l'indexation.

Lors d'un changement de statut, par exemple sur un canal, une connexion ou un racrochement de la ligne, si la commande mais plus d'une minute, le processus de démarrage est réactualisé, vérification de l'horaire et du jour, consultation de la table, selection du Circuit-Défaut-route.

Si par exemple le lundi à 18:00 la connexion change, Défaut-Route est supprimé, les connexions existantes sont arrêtées (désolé...), ensuite imond controle dans la Time-Table si un nouveau Circuit-Défaut-route existe, si oui imond mettra environ 60 secondes pour se reconnecter. Donc la connexion se fera au plus tard à 18:00:59.

Il n'y aura aucun changement pour les circuits qui n'utilisent pas un Defaut-Route. Le contenu ISDN_CIRC_x_TIMES sera uniquement employé pour le calcul des frais téléphoniques. Ceci peut être pertinent, si vous arrêtez temporairement le client imonc et que vous choisissiez manuellement un Circuit-Défaut-route.

Vous pouvez également regarder dans l'indexation de Time-Table (exemple précédent de 1 à 10) les circuits non activés "Non-LC-Default-Route-Circuits".

Commande pour vérifier un index dans le Time-Table :

                    timetable "index"

Exemple :

                    telnet fli4l 5000
                    timetable 5
                    quit

La sortie des données apparaîtront comme ceci :

         0  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
     --------------------------------------------------------------------------
     Su  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0
     Mo  5  5  5  5  5  5  5  5  5  0  0  0  0  0  0  0  0  0  5  5  5  5  5  5
     Tu  5  5  5  5  5  5  5  5  5  0  0  0  0  0  0  0  0  0  5  5  5  5  5  5
     We  5  5  5  5  5  5  5  5  5  0  0  0  0  0  0  0  0  0  5  5  5  5  5  5
     Th  5  5  5  5  5  5  5  5  5  0  0  0  0  0  0  0  0  0  5  5  5  5  5  5
     Fr  5  5  5  5  5  5  5  5  5  0  0  0  0  0  0  0  0  0  5  5  5  5  5  5
     Sa  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0

     No.  Name                   DefRoute  Device  Ch/Min   ChInt
      5   AOL                      no      ippp1   0.0490    180

Tout est clair jusque là ?

Avec la commande "Route" d'imond vous pouvez commuter "Marche/Arrêt" de LC-Routing, et vous pouvez indiquer l'index du Circuit-Défaut-Route (1...N), il se connectera sur le circuit. Si l'index est 0, le LC-Routing est activé et le circuit sera choisi automatiquement.

7.1.2 Calcul des frais on-line (en ligne)

Le mode de calcul des frais de connexions fonctionnera correctement uniquement si l'unité téléphonique est constante tout au long de la semaine, elle doit est inscrit dans la variable ISDN_CIRC_x_CHARGEINT) en seconde. Normalement c'est la régle pour les fournisseurs d'accés Internets. Toutefois, si vous choisissez Telekom (je ne parle pas de T-Online !) par exemple, pour un réseau d'entreprise, qui sera considéré comme des conversations téléphoniques normales. et changement passe de 90 secondes à 4 minutes aprés 18:00 (Stand Juni 00). Par conséquent, la définition

Mais si vous utilisez votre société téléphonique par exemple pour un accés Internet avec TéléKom (Allemagne) l'unité Tél change (information juin 2000).
En France l'unité Tél est toujours constante 60 secondes, on n'a pas ce problème, c'est juste le tarif qui change en heure creuse 0,018 euro et en heure pleine 0,033 euro (8:00 à 19:00 heure pleine).

        ISDN_CIRC_3_CHARGEINT='90'
        ISDN_CIRC_3_TIMES='Mo-Fr:09-18:0.08:N Mo-Fr:18-09:0.03:N Sa-Su:00-24:0.03:N'

est en fait pas tout à fait exact. Le tarif le soir est de 3 cents la minute (donc 12 cents les 4 minutes de télécommunication), mais la mesure est fausse. C'est pour cette raison qu'il se produit des différences d'affichage par rapport au prix réel.

Il est possible que ce problème soit peut être corrigé plus tard. En attendant on peut définir dans la variable ISDN_CIRC_x_CHARGEINT) 2 Circuits : un pour la journée avec ISDN_CIRC_1_CHARGEINT='90' et l'autre pour la soirée ISDN_CIRC_2_CHARGEINT='240' naturellement vous devez configurer ISDN_CIRC_x_TIMES, avec cette configuration vous utiliser le Circuit 1 pendant la journée et le Circuit 2 en soirée.

Comme nous l'avons dit plus haut : l'utilisation des connexions avec un fournisseur d'accés Internet, ne pose pas de problème parce que l'unité Tél est toujours constante et le coût par minute ne change pas (il a encore quelque chose? je ne fais pas confiance à T-* pour tout :-).

© 2001-2019 L'équipe fli4l - 15 septembre 2019