diff --git a/info-manager-server/src/main/java/de/ozgcloud/info/nachricht/NachrichtMapper.java b/info-manager-server/src/main/java/de/ozgcloud/info/nachricht/NachrichtMapper.java
index 9c818ed736440b54d1abf8ea015c18b761c87497..d4797e5cf3039dbb8917f7d619af740d163bfec6 100644
--- a/info-manager-server/src/main/java/de/ozgcloud/info/nachricht/NachrichtMapper.java
+++ b/info-manager-server/src/main/java/de/ozgcloud/info/nachricht/NachrichtMapper.java
@@ -32,8 +32,9 @@ import lombok.RequiredArgsConstructor;
 @RequiredArgsConstructor
 class NachrichtMapper {
 	static final String LOCAL_PROFILE = "local";
-	private static final String NACHRICHTEN_LIST_URL_REGEX = "^[A-Za-z\\d-]+(\\.[A-Za-z\\d-]+){0,512}:\\d{1,5}$";
-	static final String NACHRICHTEN_LIST_URL_FORMAT = "dns:///%s";
+	private static final String NACHRICHTEN_LIST_URL_REGEX = "^(dns:///)?[A-Za-z\\d-]+(\\.[A-Za-z\\d-]+){0,512}:\\d{1,5}$";
+	static final String DNS_PREFIX = "dns:///";
+	static final String NACHRICHTEN_LIST_URL_FORMAT = DNS_PREFIX + "%s";
 
 	private final Environment environment;
 
@@ -54,6 +55,6 @@ class NachrichtMapper {
 			throw new InvalidNachrichtenListUrlException(nachrichtenListUrl);
 		}
 
-		return String.format(NACHRICHTEN_LIST_URL_FORMAT, nachrichtenListUrl);
+		return nachrichtenListUrl.startsWith(DNS_PREFIX) ? nachrichtenListUrl : NACHRICHTEN_LIST_URL_FORMAT.formatted(nachrichtenListUrl);
 	}
 }
diff --git a/info-manager-server/src/test/java/de/ozgcloud/info/NachrichtEventTestFactory.java b/info-manager-server/src/test/java/de/ozgcloud/info/NachrichtEventTestFactory.java
index cc970234f680bb3a18cdd9fe5fe31e159accf513..2e8e4632e2ca7298c6c8773f27732ae92fdedd47 100644
--- a/info-manager-server/src/test/java/de/ozgcloud/info/NachrichtEventTestFactory.java
+++ b/info-manager-server/src/test/java/de/ozgcloud/info/NachrichtEventTestFactory.java
@@ -34,6 +34,7 @@ public class NachrichtEventTestFactory {
 	public static final String POSTKORB_HANDLE = UserTestFactory.POSTKORB_HANDLE;
 	public static final String EMPTY_POSTFACH_HANDLE = "73228744-a28a-4485-845b-d8cc02422760";
 	public static final String URL = "localhost:6789";
+	public static final String URL_WITH_DNS = "dns:///" + URL;
 
 	public static NachrichtEvent createNachrichtEvent() {
 		return createNachrichtEventBuilder().build();
diff --git a/info-manager-server/src/test/java/de/ozgcloud/info/nachricht/NachrichtenMapperTest.java b/info-manager-server/src/test/java/de/ozgcloud/info/nachricht/NachrichtenMapperTest.java
index 958b0233da5868c6224ee81741fa915e463fa388..0d9be84c0c221ff1304ca00a0150598379a74c61 100644
--- a/info-manager-server/src/test/java/de/ozgcloud/info/nachricht/NachrichtenMapperTest.java
+++ b/info-manager-server/src/test/java/de/ozgcloud/info/nachricht/NachrichtenMapperTest.java
@@ -25,6 +25,7 @@ import static org.assertj.core.api.Assertions.*;
 import static org.mockito.Mockito.*;
 
 import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.DisplayName;
 import org.junit.jupiter.api.Nested;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.extension.ExtendWith;
@@ -93,32 +94,39 @@ class NachrichtenMapperTest {
 			assertThat(result).isEqualTo(NachrichtEventTestFactory.URL);
 		}
 
-		@Test
-		void shouldHaveValidFormat() {
-			var grpcNachricht = NachrichtEventTestFactory.createGrpcNachricht();
-			var expectedNachrichtenListUrl = String.format(NACHRICHTEN_LIST_URL_FORMAT, NachrichtEventTestFactory.URL);
-			var result = nachrichtenMapper.getNachrichtenListUrl(grpcNachricht);
-
-			assertThat(result).isEqualTo(expectedNachrichtenListUrl);
-		}
-
-		@Test
-		void shouldHaveValidSubdomainFormat() {
-			var url = "test.example.com:20";
+		@DisplayName("should have valid format when")
+		@ParameterizedTest(name = "url: {0}")
+		@ValueSource(strings = { NachrichtEventTestFactory.URL, NachrichtEventTestFactory.URL_WITH_DNS, "test.example.com:20" })
+		void shouldHaveValidFormat(String url) {
 			var grpcNachricht = NachrichtEventTestFactory.createGrpcNachrichtBuilder().setNachrichtenListUrl(url).build();
-			var expectedNachrichtenListUrl = String.format(NACHRICHTEN_LIST_URL_FORMAT, url);
-			var result = nachrichtenMapper.getNachrichtenListUrl(grpcNachricht);
 
-			assertThat(result).isEqualTo(expectedNachrichtenListUrl);
+			assertThatNoException().isThrownBy(() -> nachrichtenMapper.getNachrichtenListUrl(grpcNachricht));
 		}
 
 		@ParameterizedTest
-		@ValueSource(strings = { "invalidUrl", "%test%:2345", "localhost:234567" })
+		@ValueSource(strings = { "invalidUrl", "%test%:2345", "localhost:234567", "dns://host:9090" })
 		void shouldHaveInvalidFormat(String url) {
 			var grpcNachricht = NachrichtEventTestFactory.createGrpcNachrichtBuilder().setNachrichtenListUrl(url).build();
 
 			assertThatExceptionOfType(InvalidNachrichtenListUrlException.class).isThrownBy(
 			  () -> nachrichtenMapper.getNachrichtenListUrl(grpcNachricht));
 		}
+
+		@Test
+		void shouldAddDnsPrefix() {
+			var result = nachrichtenMapper.getNachrichtenListUrl(NachrichtEventTestFactory.createGrpcNachricht());
+
+			assertThat(result).isEqualTo(NachrichtEventTestFactory.URL_WITH_DNS);
+		}
+
+		@Test
+		void shouldNotAddDnsPrefix() {
+			var grpcNachricht = NachrichtEventTestFactory.createGrpcNachrichtBuilder().setNachrichtenListUrl(NachrichtEventTestFactory.URL_WITH_DNS)
+			  .build();
+
+			var result = nachrichtenMapper.getNachrichtenListUrl(grpcNachricht);
+
+			assertThat(result).isEqualTo(NachrichtEventTestFactory.URL_WITH_DNS);
+		}
 	}
 }
\ No newline at end of file