Listen block

From UnrealIRCd documentation wiki
Jump to: navigation, search

The listen block defines the TCP/IP ports that the IRCd will listen on.

Syntax

listen {
        ip <ip>;
        port <port>;
	options {
		<option>;
		<option>;
		...
	};
	ssl-options {
		...
	};
};

ip

Simply set ip to * (an asterisk) to bind to all available IP's on the machine, OR specify an IP to only bind to that IP address (this latter is usually required at shell providers).

port

This is the port you want to listen on, like 6667. You can also specify a port range, like 6667-6669.

options block (optional)

You can specify options for the port. Valid options are:

  • ssl: TLS/SSL encrypted port
  • clientsonly: port is only for clients
  • serversonly: port is only for servers

ssl-options block (optional)

This is new as of UnrealIRCd 4.0.10. Valid options are all the SSL settings that also exist in set::ssl. For example you may want to use an Lets Encrypt certificate/key on all normal client ports (via set::ssl::certificate). But for this port you want to use another SSL certificate/key:

listen {
        ...
        ssl-options {
                certificate "ssl/server.cert.pem";
                key "ssl/server.key.pem";
        };
};

Example

listen {
        ip *;
        port 6667;
};
listen {
        ip *;
        port 6697;
	options {
		ssl;
	};
};