Skip to content

Commit 0e1530e

Browse files
committed
Switch IRC network to Tailscale-only addressing
Replace Fly.io internal networking with Tailscale for all server-to-server communication to prepare for provider migration: - Change server names from .internal to .${TAILSCALE_DOMAIN} - Update all vhost entries to use hardcoded Tailscale IPs instead of ${FLY_PRIVATE_IP} - Update connect blocks to use Tailscale hostnames and IPs - Configure Atheme to use Tailscale IPs for uplink connections This allows testing the network configuration on Fly.io before migrating to DigitalOcean where Tailscale will handle all private networking. Server mappings: - magnet-9rl: 100.66.199.63 (magnet-9rl-1.camel-kanyu.ts.net) - magnet-1eu: 100.97.156.118 (magnet-1eu.camel-kanyu.ts.net) - magnet-atheme: 100.123.207.46 (magnet-atheme.camel-kanyu.ts.net)
1 parent a165f8c commit 0e1530e

File tree

4 files changed

+23
-17
lines changed

4 files changed

+23
-17
lines changed

atheme/atheme.conf.template

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,15 +35,15 @@ serverinfo {
3535
/* Uplink configuration - primary IRC server */
3636
uplink "${ATHEME_HUB_HOSTNAME}" {
3737
host = "${ATHEME_HUB_HOSTNAME}";
38-
vhost = "${FLY_PRIVATE_IP}";
38+
vhost = "${ATHEME_TAILSCALE_IP}";
3939
send_password = "${PASSWORD_9RL}";
4040
receive_password = "${SERVICES_PASSWORD}";
4141
port = 6667;
4242
};
4343

4444
uplink "${ATHEME_FALLBACK_HOSTNAME}" {
4545
host = "${ATHEME_FALLBACK_HOSTNAME}";
46-
vhost = "${FLY_PRIVATE_IP}";
46+
vhost = "${ATHEME_TAILSCALE_IP}";
4747
send_password = "${PASSWORD_1EU}";
4848
receive_password = "${SERVICES_PASSWORD}";
4949
port = 6667;

servers/magnet-1eu/server.conf

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
/* Server information */
55
/* IMPORTANT: The name field must match exactly with connect block names on other servers */
66
serverinfo {
7-
name = "${SERVER_NAME}.internal";
7+
name = "${SERVER_NAME}.${TAILSCALE_DOMAIN}";
88
sid = "${SERVER_SID}";
99
description = "${SERVER_DESCRIPTION}";
1010
network_name = "MagNET";
@@ -24,9 +24,10 @@ class "server" {
2424

2525
/* Connection blocks */
2626
/* IMPORTANT: Connect block name must match the other server's serverinfo name exactly */
27-
connect "magnet-9rl.internal" {
28-
host = "magnet-9rl.internal";
29-
vhost = "${FLY_PRIVATE_IP}";
27+
connect "magnet-9rl.${TAILSCALE_DOMAIN}" {
28+
host = "magnet-9rl-1.${TAILSCALE_DOMAIN}";
29+
host = "100.66.199.63"; /* Tailscale IP for magnet-9rl */
30+
vhost = "100.97.156.118"; /* Our Tailscale IP for magnet-1eu */
3031
send_password = "${PASSWORD_9RL}";
3132
accept_password = "${PASSWORD_1EU}";
3233
port = 6667;
@@ -35,9 +36,10 @@ connect "magnet-9rl.internal" {
3536
};
3637

3738
/* Connect block for services */
38-
connect "magnet-atheme.internal" {
39-
host = "*.magnet-atheme.internal";
40-
vhost = "${FLY_PRIVATE_IP}";
39+
connect "magnet-atheme.${TAILSCALE_DOMAIN}" {
40+
host = "magnet-atheme.${TAILSCALE_DOMAIN}";
41+
host = "100.123.207.46"; /* Tailscale IP for magnet-atheme */
42+
vhost = "100.97.156.118"; /* Our Tailscale IP for magnet-1eu */
4143
send_password = "${SERVICES_PASSWORD}";
4244
accept_password = "${PASSWORD_9RL}";
4345
port = 6667;

servers/magnet-9rl/server.conf

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
/* Server information */
55
/* IMPORTANT: The name field must match exactly with connect block names on other servers */
66
serverinfo {
7-
name = "${SERVER_NAME}.internal";
7+
name = "${SERVER_NAME}.${TAILSCALE_DOMAIN}";
88
sid = "${SERVER_SID}";
99
description = "${SERVER_DESCRIPTION}";
1010
network_name = "MagNET";
@@ -24,9 +24,10 @@ class "server" {
2424

2525
/* Connection blocks */
2626
/* IMPORTANT: Connect block name must match the other server's serverinfo name exactly */
27-
connect "magnet-1eu.internal" {
28-
host = "*.magnet-1eu.internal"; # we're the hub, look for incoming connections
29-
vhost = "${FLY_PRIVATE_IP}";
27+
connect "magnet-1eu.${TAILSCALE_DOMAIN}" {
28+
host = "magnet-1eu.${TAILSCALE_DOMAIN}";
29+
host = "100.97.156.118"; /* Tailscale IP for magnet-1eu */
30+
vhost = "100.66.199.63"; /* Our Tailscale IP for magnet-9rl */
3031
send_password = "${PASSWORD_1EU}";
3132
accept_password = "${PASSWORD_9RL}";
3233
port = 6667;
@@ -35,9 +36,10 @@ connect "magnet-1eu.internal" {
3536
};
3637

3738
/* Connect block for services */
38-
connect "magnet-atheme.internal" {
39-
host = "*.magnet-atheme.internal";
40-
vhost = "${FLY_PRIVATE_IP}";
39+
connect "magnet-atheme.${TAILSCALE_DOMAIN}" {
40+
host = "magnet-atheme.${TAILSCALE_DOMAIN}";
41+
host = "100.123.207.46"; /* Tailscale IP for magnet-atheme */
42+
vhost = "100.66.199.63"; /* Our Tailscale IP for magnet-9rl */
4143
send_password = "${SERVICES_PASSWORD}";
4244
accept_password = "${PASSWORD_9RL}";
4345
port = 6667;

servers/magnet-atheme/fly.toml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,9 @@ primary_region = "ord"
2222
SERVER_NAME = "magnet-atheme"
2323
ATHEME_NETWORK = "Magnet"
2424
ATHEME_HUB_SERVER = "magnet-9RL"
25-
ATHEME_HUB_HOSTNAME = "magnet-9rl.internal"
25+
ATHEME_HUB_HOSTNAME = "magnet-9rl-1.camel-kanyu.ts.net"
26+
ATHEME_FALLBACK_HOSTNAME = "magnet-1eu.camel-kanyu.ts.net"
27+
ATHEME_TAILSCALE_IP = "100.123.207.46"
2628
TAILSCALE_DOMAIN = "camel-kanyu.ts.net"
2729
ADMIN_NAME = "Chris Prather"
2830
ADMIN_EMAIL = "[email protected]"

0 commit comments

Comments
 (0)