Deux serveurs,
un seul programme
Service-Overtchat s'installe en entier — services, modération, panel d'administration et site — devant deux serveurs IRC : Overtchat-Hybrid et UnrealIRCd. Ce qui change de l'un à l'autre, ce n'est pas ce qui s'installe, c'est ce que le serveur autorise ensuite. Quatre autres serveurs ont été éprouvés avec IriX, l'ancien moteur des services, puis retirés : ils restent ici comme histoire, dits comme tels.
Les deux serveurs, et ce qui a été réellement essayé
Un serveur IRC ne se contente pas de relayer des messages : il parle aussi à ses pairs, dans un langage qui lui est propre. Ce langage — le protocole serveur-à-serveur — décide de ce qu'un service comme celui-ci peut demander. Les familles ci-dessous ne sont pas des variantes d'un même dialecte : P10 est un autre protocole, avec ses propres identifiants et ses propres verbes.
Quatre serveurs sont de l’histoire, pas de l’offre : ircd-Hybrid, InspIRCd, Bahamut, ircu (Undernet). Ils ont été éprouvés avec IriX, l’ancien moteur des services en Tcl, arrêté pour de bon le 18 octobre 2026 ; ils ont quitté l’installateur le 22 octobre, et OverCore, qui sert les services depuis, ne parle que le dialecte d’Overtchat-Hybrid et d’UnrealIRCd 6. Leurs lignes et leurs colonnes restent ci-dessous, marquées « éprouvé avec IriX, retiré », parce que ce qui a été mesuré reste vrai — mais rien de ce projet ne s’y installe plus aujourd’hui.
| Serveur | Version essayée | Protocole | État |
|---|---|---|---|
| Overtchat-Hybrid Écrit pour ce réseau, en C11 | 1.x | och | en production C'est le serveur du réseau public depuis le 28/07/2026. Il parle le vocabulaire d'UnrealIRCd 6, dont il dérive. |
| UnrealIRCd unrealircd.org | 6.x | unreal | lien éprouvé Le dialecte le plus complet : c'est celui pour lequel IriX a d'abord été écrit, et rien n'y manque. |
| ircd-Hybrid historique ircd-hybrid.org | 8.2.47 | hybrid | éprouvé avec IriX, retiré Lien monté et vérifié avec IriX le 30/07/2026, services opérateurs du salon de service dès le premier essai. Retiré de l'installateur le 22/10/2026 ; OverCore ne parle pas ce dialecte. |
| InspIRCd historique inspircd.org | 4.11.0 | inspircd | éprouvé avec IriX, retiré Lien monté par IriX lui-même le 31/07/2026 : sonde répondue, burst d'un salon déjà peuplé lu, cinq pseudo-clients opérateurs vus par un client témoin. Retiré de l'installateur le 22/10/2026 ; OverCore ne parle pas ce dialecte. |
| Bahamut historique DALnet | 2.2.4 | bahamut | éprouvé avec IriX, retiré Lien monté par IriX lui-même le 01/08/2026. Le seul serveur de la liste sans identifiants internes : ses clients se désignent par leur pseudonyme. Retiré de l'installateur le 22/10/2026 ; OverCore ne parle pas ce dialecte. |
| ircu (Undernet) historique undernet.org | u2.10.12.19 | p10 | éprouvé avec IriX, retiré Un autre protocole, pas un dialecte de plus : préfixes sans deux-points, verbes d'une lettre, identifiants en base64. Éprouvé avec IriX le 30/07/2026, avec les limites listées plus bas. Retiré de l'installateur le 22/10/2026 ; OverCore ne parle pas ce protocole. |
« Lien éprouvé » veut dire quelque chose de précis : un lien a été monté contre ce serveur, ses cinq pseudo-clients y ont été introduits, et un client ordinaire a pu constater qu'ils étaient là — le tout en vérifiant que le contraire échouait bien lorsqu'on remettait le défaut. Ce n'est pas « ça devrait marcher ». « Éprouvé avec IriX, retiré » : la même épreuve, passée à l'époque par IriX — et plus aucun service du projet pour s'y lier aujourd'hui.
Ce que chaque serveur permet aux services
Ce tableau est la même table que celle que les services IriX publiaient en base pour le panel d'administration : le panel grise ce qui est marqué d'une croix, et en donne la raison plutôt que d'afficher un bouton sans effet. Les colonnes marquées « historique » décrivent ce qu'IriX savait faire sur ces serveurs — plus aucun service ne s'y lie aujourd'hui.
| Ce que le service veut faire | Overtchat-Hybrid | UnrealIRCd | ircd-Hybridhistorique (IriX) | InspIRCdhistorique (IriX) | Bahamuthistorique (IriX) | ircu (Undernet)historique (IriX) |
|---|---|---|---|---|---|---|
| Changer les modes d’un autre client | compatible | compatible | compatible | compatible | compatible | non compatible |
| ircu (Undernet) — Pas de SVSMODE : ms_mode refuse un MODE portant sur un autre client que sa source, et alerte les opérateurs. | ||||||
| Renommer d’autorité (SVSNICK) | compatible | compatible | compatible | compatible | compatible | non compatible |
| ircu (Undernet) — Aucun équivalent de SVSNICK : le seul recours est d'avertir puis de déconnecter. | ||||||
| Faire entrer quelqu’un sur un salon | compatible, avec réserve | compatible | compatible | compatible | non compatible | non compatible |
| Overtchat-Hybrid — Passe par le JOIN ordinaire : +R, +O, +b et +i s'appliquent au client qu'on fait entrer. Bahamut — Aucun SVSJOIN : include/msg.h n'en porte aucune trace. ircu (Undernet) — Aucun équivalent de SVSJOIN — irix-operjoin.tcl est inopérant en entier. | ||||||
| Faire sortir d’un salon | compatible | compatible | compatible | compatible | non compatible | non compatible |
| Bahamut — Aucun SVSPART. ircu (Undernet) — Aucun équivalent de SVSPART. | ||||||
| Marquer un compte identifié | compatible | compatible | compatible | compatible | non compatible | compatible, avec réserve |
| Bahamut — Le « servicestamp » se pose à l'introduction du client et ne se change plus. ircu (Undernet) — AC pose un compte, mais aucune opération ne le retire. | ||||||
| Masquer l’hôte (vhost) | compatible | compatible | compatible | compatible | compatible | non compatible |
| ircu (Undernet) — Hôte masqué dérivé du compte, avec +x : pas de vhost arbitraire. | ||||||
| Changer l’identifiant (ident) | compatible | compatible | non compatible | compatible | non compatible | non compatible |
| ircd-Hybrid — Aucun équivalent de CHGIDENT : ni module, ni la moindre occurrence dans les sources de la 8.2.47. Bahamut — Aucun équivalent de CHGIDENT. ircu (Undernet) — Aucun équivalent de CHGIDENT. | ||||||
| Déconnecter quelqu’un du réseau | compatible | compatible | compatible | compatible | compatible | compatible |
| Bannir du réseau entier | compatible, avec réserve | compatible | compatible, avec réserve | compatible | compatible, avec réserve | compatible, avec réserve |
| Overtchat-Hybrid — Quatre types seulement : G, K, Z et Q. ircd-Hybrid — Quatre commandes distinctes — KLINE, DLINE, XLINE, RESV — là où TKL en couvre autant à lui seul. Bahamut — AKILL, SQLINE et SGLINE, chacune avec sa forme — pas de commande unique. ircu (Undernet) — G-line seule : ni Q-line ni Z-line distinctes. | ||||||
| Avertir les opérateurs (GLOBOPS) | compatible | compatible | compatible | compatible | compatible | compatible, avec réserve |
| ircu (Undernet) — WA/WU seulement, sans le ciblage de GLOBOPS. | ||||||
| Réserver un salon aux opérateurs (+O) | compatible | compatible | compatible | non compatible | non compatible | non compatible |
| InspIRCd — Le +O vient du module operchans : compilé avec le serveur, mais non chargé par la configuration d'exemple. Bahamut — Aucun mode de salon réservé aux opérateurs. ircu (Undernet) — Aucun mode de salon réservé aux opérateurs. | ||||||
| Grades de salon étendus (+q, +a, +h) | compatible | compatible | compatible | compatible, avec réserve | compatible, avec réserve | non compatible |
| InspIRCd — Seuls +o et +v sont du cœur ; +q, +a et +h viennent du module customprefix, compilé mais non chargé par défaut. Bahamut — Seuls +o et +v ; ni +q, ni +a, ni +h. ircu (Undernet) — Ni +q, ni +a, ni +h. | ||||||
Ce tableau est lu dans la base du bot, qui le republie à chaque démarrage : il décrit l'installation qui sert cette page.
Ce qui s'ajoute au réseau
| Service | Overtchat-Hybrid | UnrealIRCd | ircd-Hybridhistorique (IriX) | InspIRCdhistorique (IriX) | Bahamuthistorique (IriX) | ircu (Undernet)historique (IriX) |
|---|---|---|---|---|---|---|
| Les services — les cinq pseudo-clients Comptes, salons, bans, modération, IA, panel web | compatible | compatible | non compatible | non compatible | non compatible | non compatible |
| Le cœur du projet. OverCore (Node.js), qui sert les cinq pseudo-clients, ne parle que le dialecte d’Overtchat-Hybrid et d’UnrealIRCd 6. ircd-Hybrid, InspIRCd, Bahamut et ircu (P10) n’étaient servis que par IriX (Tcl), arrêté pour de bon le 18/10/2026 : sur ces quatre serveurs, plus aucun service du projet ne se lie aujourd’hui. | ||||||
| Anope NickServ, ChanServ, OperServ… (optionnel) | compatible | compatible | compatible | compatible | non compatible | non compatible |
| Anope 2.1 embarque sept modules de protocole — hybrid, inspircd, ngircd, plexus, ratbox, solanum, unrealircd — et ni P10 ni Bahamut : ce dernier n’a de module que dans la branche 2.0. Le panel refuse la configuration au lieu de la tenter. | ||||||
| Webchat Le salon dans le navigateur, via WebSocket | compatible | compatible | compatible | compatible | compatible | compatible |
| Il parle au serveur comme un client ordinaire : le dialecte serveur-à-serveur ne le concerne pas. | ||||||
| Panel d’administration Salons, membres, modération, liens, statut | compatible | compatible | compatible | compatible | compatible | compatible |
| Il lit la table des capacités et GRISE ce que le serveur en face ne sait pas faire, avec le motif — plutôt que d’offrir un bouton sans effet. | ||||||
Ce que la sécurité gagne, et où elle bute
La colonne renforcement décrit ce que le projet ajoute au réglage par défaut du serveur. C'est là que se joue la différence entre « le serveur sait le faire » et « c'est effectivement en place ».
| Protection | Overtchat-Hybrid | UnrealIRCd | ircd-Hybridhistorique (IriX) | InspIRCdhistorique (IriX) | Bahamuthistorique (IriX) | ircu (Undernet)historique (IriX) | Renforcement apporté |
|---|---|---|---|---|---|---|---|
| Connexions chiffrées (TLS) ircu 2.10.12 n’a pas de couche TLS : un réseau P10 se chiffre par un relais placé devant, ou pas du tout. | compatible | compatible | compatible | compatible | compatible | non compatible | Port 6697 dédié, avec un certificat auto-signé posé par l’installateur ; un certificat Let’s Encrypt peut le remplacer à la main, avec un crochet qui recharge le serveur à chaque renouvellement. |
| Masquage de l’hôte des visiteurs En P10, l’hôte masqué est dérivé du compte (+x) : il n’y a pas de vhost arbitraire, donc pas de masque choisi par le service. | compatible | compatible | compatible | compatible | compatible | compatible, avec réserve | Masquage systématique à la connexion, et adresse réelle réservée aux opérateurs. |
| Salon réservé aux opérateurs Sans ce mode, un salon d’opérateurs n’est réservé que dans l’intention : le panel l’annonce, et n’importe qui y entre. Sous InspIRCd le mode existe, mais dans un module — operchans — que la configuration d’exemple ne charge pas : « non » décrit donc l’installation par défaut, et se corrige en l’activant. Ni Bahamut ni ircu (P10) n’ont de mode de salon réservé aux opérateurs — chez eux, la réservation ne tient qu’à ce que les services acceptent d’y envoyer. | compatible | compatible | compatible | non compatible | non compatible | non compatible | Le mode +O est reposé à CHAQUE reprise du lien, et non une fois pour toutes : un salon vidé de ses modes après un netsplit le retrouve seul. |
| Bannissement à l’échelle du réseau P10 n’a que la G-line : bannir un pseudonyme ou une adresse passe par le même mécanisme, sans distinction. Bahamut en a trois, chacune avec sa forme — AKILL, SQLINE, SGLINE — et aucune commande qui les couvre toutes. | compatible | compatible | compatible | compatible | compatible, avec réserve | compatible, avec réserve | Refus des masques trop larges — au moins quatre caractères significatifs —, posé côté services : le serveur, lui, n’interdit que « * » et « *@* ». |
| Pseudo-clients inexpulsables ircd-Hybrid 8.2 n’a AUCUN mode de service : les pseudo-clients y restent expulsables, et le journal le dit à chaque connexion plutôt que de le taire. InspIRCd, lui, en a un — +k, dit servprotect — qui protège du KICK et du KILL. Bahamut n’en a pas davantage, et il tend un piège : son « S » désigne une connexion TLS, pas un service. Le recopier aurait marqué les pseudo-clients « chiffrés » tout en les laissant expulsables. | compatible | compatible | non compatible | compatible | non compatible | compatible | Le mode est traduit par RÔLE et non par lettre : +S sous UnrealIRCd, +k sous ircu — recopier la lettre donnerait un mode accepté et faux. |
| Protection des pseudonymes enregistrés En P10, faute de SVSNICK, la protection se limite à avertir puis déconnecter — le module concerné le sait et ne prétend pas protéger. | compatible | compatible | compatible | compatible | compatible | non compatible | Renommage d’office de l’usurpateur, puis déconnexion s’il insiste. |
| Preuve d’identité avant modération Indépendant du dialecte : c’est le mode +o du client qui est vérifié, et tous les serveurs l’ont. | compatible | compatible | compatible | compatible | compatible | compatible | Le panel ne modère pas : il DEMANDE. Le bot n’exécute que si le pseudonyme du demandeur est connecté ET opérateur sur le réseau à cet instant — être connecté au panel ne prouve rien. |
| Adresses IPv6 des visiteurs ircu encode les IPv6 sur vingt-quatre caractères, que le décodeur ne lit pas encore : sur un réseau P10, la colonne reste vide plutôt que fausse. | compatible | compatible | compatible | compatible | compatible | non compatible | Adresse décodée et rangée telle quelle, sans abréviation, pour rester comparable d’une ligne à l’autre. |
Lequel choisir
Vous montez un réseau à partir de rien
Prenez Overtchat-Hybrid : c'est lui qui sert le réseau public, et celui sur lequel le projet est le plus éprouvé. Là où il ne peut pas tourner, l'installateur pose UnrealIRCd 6 à sa place, avec les services Anope. Rien n'y manque : masquage d'hôte, réservation de salons, quatre types de bannissements, grades étendus, TLS.
Vous avez déjà un serveur en service
Un UnrealIRCd 6 : l'installateur ne se branche pas sur un serveur déjà en service ; il pose le sien (Overtchat-Hybrid, ou UnrealIRCd avec Anope là où le premier ne tourne pas), sur une machine à part de votre réseau. Un ircd-Hybrid, un InspIRCd, un Bahamut ou un ircu : leur dialecte n'était parlé que par IriX, arrêté — plus aucun service du projet ne s'y lie aujourd'hui, et l'installateur ne les pose plus.
Le cas d'ircu (P10) — historique
Tout fonctionne — lien, services, modération, panel — mais 8 fonctions n'existent pas dans ce protocole, 3 n'y sont que partielles, et 2 services optionnels ne s'y installent pas (Les services — les cinq pseudo-clients, Anope). Rien n'est masqué : le panel grise ce qui n'a pas d'objet et en donne la raison, et les modules concernés ne prétendent pas protéger ce qu'ils ne peuvent pas protéger.
Et si votre serveur n'est pas dans la liste
OverCore, qui sert les services, ne parle qu'un langage — celui d'Overtchat-Hybrid et d'UnrealIRCd 6 — et il refuse de se lier dans un langage qu'il ne saurait pas lire, plutôt que de monter un lien qui ne transporterait rien. C'est un refus explicite, au moment de la connexion, avec son motif.
Une chose qui ne dépend d'aucun serveur : le panel ne modère jamais lui-même, il demande. Le bot n'exécute qu'après avoir vérifié que le pseudonyme du demandeur est connecté et opérateur sur le réseau à cet instant. Être connecté au panel ne prouve rien au réseau.