1#-#-#-#-#-#-#-#-#-#-#-#-   PORT CONFIGURATION   -#-#-#-#-#-#-#-#-#-#-#-
2#                                                                     #
3#   Configure the port and address bindings for linking here.         #
4#                                                                     #
5#   Refer to the port configuration section in inspircd.conf.example  #
6#   for more information about the available options.                 #
7#                                                                     #
8
9# TLS (SSL) listener that binds on a TCP/IP endpoint:
10<bind address="1.2.3.4"
11      port="7005"
12      type="servers"
13      sslprofile="Servers">
14
15# Plaintext listener that binds on a TCP/IP endpoint:
16<bind address=""
17      port="7000,7001"
18      type="servers">
19
20
21#-#-#-#-#-#-#-#-#-#-#-  SERVER LINK CONFIGURATION  -#-#-#-#-#-#-#-#-#-#
22#                                                                     #
23# Defines which servers can link to this one, and which servers this  #
24# server may create outbound links to.                                #
25#                                                                     #
26#    ____                _   _____ _     _       ____  _ _   _        #
27#   |  _ \ ___  __ _  __| | |_   _| |__ (_)___  | __ )(_) |_| |       #
28#   | |_) / _ \/ _` |/ _` |   | | | '_ \| / __| |  _ \| | __| |       #
29#   |  _ <  __/ (_| | (_| |   | | | | | | \__ \ | |_) | | |_|_|       #
30#   |_| \_\___|\__,_|\__,_|   |_| |_| |_|_|___/ |____/|_|\__(_)       #
31#                                                                     #
32#  If you want to link servers to InspIRCd you must load the          #
33#  spanningtree module! If you do not load this module, server ports  #
34#  will NOT work!                                                     #
35#                                                                     #
36
37<link
38      # name: The name of the remote server. This must match
39      # the <server:name> value of the remote server.
40      name="hub.example.org"
41
42      # ipaddr: The IP address of the remote server.
43      # Can also be a hostname, but hostname must resolve.
44      ipaddr="penguin.example.org"
45
46      # port: The port to connect to the server on.
47      # It must be bound as a server port on the other server.
48      port="7000"
49
50      # allowmask: Range of IP addresses to allow for this link.
51      # Can be a CIDR (see example).
52      allowmask="203.0.113.0/24 127.0.0.0/8 2001:db8::/32"
53
54      # timeout: If defined, this option defines how long the server
55      # will wait to consider the connect attempt failed and try the
56      # failover (see above).
57      timeout="5m"
58
59      # sslprofile: If defined, this states the TLS (SSL) profile that will be used
60      # when making an outbound connection to the server. See the docs page for
61      # the TLS (SSL) module you are using for more details:
62      #
63      # GnuTLS:  https://docs.inspircd.org/3/modules/ssl_gnutls#sslprofile
64      # mbedTLS: https://docs.inspircd.org/3/modules/ssl_mbedtls#sslprofile
65      # OpenSSL: https://docs.inspircd.org/3/modules/ssl_openssl#sslprofile
66      #
67      # You will need to load the ssl_openssl module for OpenSSL, ssl_gnutls
68      # for GnuTLS and ssl_mbedtls for mbedTLS. The server port that you
69      # connect to must be capable of accepting this type of connection.
70      sslprofile="Servers"
71
72      # fingerprint: If defined, this option will force servers to be
73      # authenticated using TLS (SSL) certificate fingerprints. See
74      # https://docs.inspircd.org/3/modules/spanningtree for more information.
75      # This will require a TLS (SSL) link for both inbound and outbound connections.
76      #fingerprint=""
77
78      # bind: Local IP address to bind to.
79      bind="1.2.3.4"
80
81      # statshidden: Defines if IP is shown to opers when
82      # /STATS c is invoked.
83      statshidden="no"
84
85      # hidden: If this is set to yes, this server and its "child"
86      # servers will not be shown when users do a /MAP or /LINKS.
87      hidden="no"
88
89      # passwords: The passwords we send and receive.
90      # The remote server will have these passwords reversed.
91      # Passwords that contain a space character or begin with
92      # a colon (:) are invalid and may not be used.
93      sendpass="outgoing!password"
94      recvpass="incoming!password">
95
96# A duplicate of the first link block without comments,
97# if you like copying & pasting.
98<link name="hub.example.org"
99      ipaddr="penguin.example.org"
100      port="7000"
101      allowmask="203.0.113.0/24 127.0.0.0/8 2001:db8::/32"
102      timeout="5m"
103      sslprofile="Servers"
104      bind="1.2.3.4"
105      statshidden="no"
106      hidden="no"
107      sendpass="outgoing!password"
108      recvpass="incoming!password">
109
110# Link block for services. Options are the same as for the first
111# link block (depending on what your services package supports).
112<link name="services.example.com"
113      ipaddr="localhost"
114      port="7000"
115      allowmask="127.0.0.0/8"
116      sendpass="penguins"
117      recvpass="polarbears">
118
119# Simple autoconnect block. This enables automatic connections to a server.
120# Recommended setup is to have leaves connect to the hub, and have no
121# automatic connections started by the hub.
122<autoconnect period="10m" server="hub.example.org">
123
124# Failover autoconnect block. If you have multiple hubs, or want your network
125# to automatically link even if the hub is down, you can specify multiple
126# space separated servers to autoconnect; they will be tried in a round
127# robin fashion until one succeeds. Period defines the time for restarting
128# a single loop.
129<autoconnect period="2m"
130	server="hub.us.example.org hub.eu.example.org leaf.eu.example.org">
131
132
133#-#-#-#-#-#-#-#-#-#-#-#-# U-LINES CONFIGURATION #-#-#-#-#-#-#-#-#-#-#-#-#
134# This tag defines a U-lined server. A U-lined server has special       #
135# permissions, and should be used with caution. Services servers are    #
136# usually U-lined in this manner.                                       #
137#                                                                       #
138# The 'silent' value, if set to yes, indicates that this server should  #
139# not generate quit and connect notices, which can cut down on noise    #
140# to opers on the network.                                              #
141#                                                                       #
142<uline server="services.example.com" silent="yes">
143
144# Once you have edited this file you can remove this line. This is just to
145# ensure that you don't hastily include the file without reading it.
146<die reason="Using links.conf.example without editing it is a security risk">
147