diff --git a/src/stats.c b/src/stats.c
index 8faed89..6189cb3 100644
--- a/src/stats.c
+++ b/src/stats.c
@@ -166,6 +166,9 @@
 	struct sockaddr_in *sock_addr = (struct sockaddr_in *)&srep->dest_addr;
 	struct in_addr inaddr;
 
+	if (!srep->have_net_config)
+		return -ENOTSUP;
+
 	OSMO_ASSERT(addr != NULL);
 
 	rc = inet_pton(AF_INET, addr, &inaddr);
@@ -186,6 +189,9 @@
 {
 	struct sockaddr_in *sock_addr = (struct sockaddr_in *)&srep->dest_addr;
 
+	if (!srep->have_net_config)
+		return -ENOTSUP;
+
 	srep->dest_port = port;
 	sock_addr->sin_port = htons(port);
 
@@ -198,6 +204,9 @@
 	struct sockaddr_in *sock_addr = (struct sockaddr_in *)&srep->bind_addr;
 	struct in_addr inaddr;
 
+	if (!srep->have_net_config)
+		return -ENOTSUP;
+
 	if (addr) {
 		rc = inet_pton(AF_INET, addr, &inaddr);
 		if (rc <= 0)
@@ -218,6 +227,9 @@
 
 int stats_reporter_set_mtu(struct stats_reporter *srep, int mtu)
 {
+	if (!srep->have_net_config)
+		return -ENOTSUP;
+
 	if (mtu < 0)
 		return -EINVAL;
 
@@ -296,6 +308,8 @@
 	struct stats_reporter *srep;
 	srep = stats_reporter_alloc(STATS_REPORTER_STATSD, name);
 
+	srep->have_net_config = 1;
+
 	return srep;
 }
 
