IRC (Internet Relay Chat) is a real time text chat service primarily used for group chat, using "channels". Channels are usually global across the network and a client can join a channel without authentication. Despite this lack of security, IRC is still widely deployed. On this page you'll find information on Isode's M-Link IRC gateway, which enables connections between XMPP MUC rooms and IRC channels, without downgrading security for XMPP users with XMPP traffic.
The M-Link IRC Gateway enables connections between M-Link and one or more IRC servers. The Gateway operates by associating XMPP MUC rooms with IRC Channels, with the IRC Nickname based on the MUC nickname of each user (identical where IRC constraints allow). This is a straightforward mapping between IRC and XMPP.
M-Link IRC Gateway provides functional benefits for both users and administrators of XMPP systems, including:
- The involvement of IRC is totally transparent to the XMPP user. The user will see a normal MUC room, which just happens to be connected to an IRC channel.
- The XMPP administrator has control of MUC room naming, which does not have to match IRC channel naming.
- Full MUC functionality is available locally, for example MUC access control and affiliation management.
- There is no downgrade of security for XMPP users with XMPP traffic. XMPP users are still authenticated and connections are protected with TLS.
- M-Link security label support is available, including translation to IRC users as FLOT labels in the IRC messages.
The M-Link server uses the IRC client to server protocol to connect to IRC, in order to maximise interoperability with different IRC servers. The gateway maintains an IRC connection for each MUC room member and sends messages to the IRC channel on an appropriate link. Connections are shared between (gatewayed) MUC rooms. Incoming messages from IRC will arrive on each link, and M-Link will ensure that just one message is distributed to the MUC room.
More information on Isode's approach to connecting XMPP and IRC services can be found in the whitepaper [Interconnecting XMPP and IRC], including comparison with other approaches to connecting IRC and XMPP.
Configuration and Management
Management of the MUC rooms connected to IRC and management of the connection is done using M-Link's management GUI, M-Link console (MLC).
MUC rooms set up for connection to IRC channels can be confgured with all of the securirty and access features available to standard XMPP MUC rooms in M-Link (click for more information on MUC/FMUC).
IRC to XMPP Migration
IRC is widely used on military networks. Many military networks wish to upgrade from IRC to XMPP, and the approach taken by the M-Link IRC gateway facilitates this.
With the M-Link model, an XMPP MUC room is created to match each IRC channel. As users move from IRC to XMPP they can be added to the XMPP MUC room. When no IRC users remain, the IRC channel can be turned off, a process that will be completely transparent to the XMPP users.