diff --git a/src/core/CMakeLists.txt b/src/core/CMakeLists.txt
index 8db9a3c654cf08826088791443751bc2a3165ae7..25b39c52bd3c61985daaba8e42e17a4db2587f4e 100644
--- a/src/core/CMakeLists.txt
+++ b/src/core/CMakeLists.txt
@@ -2,8 +2,6 @@
 # SPDX-License-Identifier: GPL-2.0-or-later
 
 add_library(core STATIC
-    announce_multiplayer_session.cpp
-    announce_multiplayer_session.h
     arm/arm_interface.h
     arm/arm_interface.cpp
     arm/dynarmic/arm_dynarmic_32.cpp
diff --git a/src/dedicated_room/CMakeLists.txt b/src/dedicated_room/CMakeLists.txt
index b674b915b792a72366fb4bb55908ef1c87108c53..737aedbe47c6af686bd31dfed09ea911f613d8d3 100644
--- a/src/dedicated_room/CMakeLists.txt
+++ b/src/dedicated_room/CMakeLists.txt
@@ -10,7 +10,7 @@ add_executable(yuzu-room
 
 create_target_directory_groups(yuzu-room)
 
-target_link_libraries(yuzu-room PRIVATE common core network)
+target_link_libraries(yuzu-room PRIVATE common network)
 if (ENABLE_WEB_SERVICE)
     target_compile_definitions(yuzu-room PRIVATE -DENABLE_WEB_SERVICE)
     target_link_libraries(yuzu-room PRIVATE web_service)
diff --git a/src/dedicated_room/yuzu_room.cpp b/src/dedicated_room/yuzu_room.cpp
index 482e772fb3948b72ad247246b6e2534f3faa1342..7c1a75de3a4985b5de0a846ce2d788e2fcc40492 100644
--- a/src/dedicated_room/yuzu_room.cpp
+++ b/src/dedicated_room/yuzu_room.cpp
@@ -27,8 +27,8 @@
 #include "common/scm_rev.h"
 #include "common/settings.h"
 #include "common/string_util.h"
-#include "core/announce_multiplayer_session.h"
 #include "core/core.h"
+#include "network/announce_multiplayer_session.h"
 #include "network/network.h"
 #include "network/room.h"
 #include "network/verify_user.h"
diff --git a/src/network/CMakeLists.txt b/src/network/CMakeLists.txt
index 312f79b6869d8e54cda1f51c2ccfa749ab6531b6..6f8ca4b90cfbe2143bf79a4bac794dac93c3c9b9 100644
--- a/src/network/CMakeLists.txt
+++ b/src/network/CMakeLists.txt
@@ -2,6 +2,8 @@
 # SPDX-License-Identifier: GPL-3.0-or-later
 
 add_library(network STATIC
+    announce_multiplayer_session.cpp
+    announce_multiplayer_session.h
     network.cpp
     network.h
     packet.cpp
@@ -17,3 +19,7 @@ add_library(network STATIC
 create_target_directory_groups(network)
 
 target_link_libraries(network PRIVATE common enet Boost::boost)
+if (ENABLE_WEB_SERVICE)
+    target_compile_definitions(network PRIVATE -DENABLE_WEB_SERVICE)
+    target_link_libraries(network PRIVATE web_service)
+endif()
diff --git a/src/core/announce_multiplayer_session.cpp b/src/network/announce_multiplayer_session.cpp
similarity index 100%
rename from src/core/announce_multiplayer_session.cpp
rename to src/network/announce_multiplayer_session.cpp
diff --git a/src/core/announce_multiplayer_session.h b/src/network/announce_multiplayer_session.h
similarity index 100%
rename from src/core/announce_multiplayer_session.h
rename to src/network/announce_multiplayer_session.h
diff --git a/src/yuzu/multiplayer/chat_room.cpp b/src/yuzu/multiplayer/chat_room.cpp
index 1968a3c754cd9d6829f17e0b016b5985fa018f4d..51ece1f2121d682389858154e6b3b44defafa48a 100644
--- a/src/yuzu/multiplayer/chat_room.cpp
+++ b/src/yuzu/multiplayer/chat_room.cpp
@@ -16,7 +16,7 @@
 #include <QUrl>
 #include <QtConcurrent/QtConcurrentRun>
 #include "common/logging/log.h"
-#include "core/announce_multiplayer_session.h"
+#include "network/announce_multiplayer_session.h"
 #include "ui_chat_room.h"
 #include "yuzu/game_list_p.h"
 #include "yuzu/multiplayer/chat_room.h"
diff --git a/src/yuzu/multiplayer/client_room.cpp b/src/yuzu/multiplayer/client_room.cpp
index 86baafbf03664cc42bed77ea4d3c5288e4c763d2..b34a8d004abf3291efab84992df81da6f208aa56 100644
--- a/src/yuzu/multiplayer/client_room.cpp
+++ b/src/yuzu/multiplayer/client_room.cpp
@@ -10,7 +10,7 @@
 #include <QTime>
 #include <QtConcurrent/QtConcurrentRun>
 #include "common/logging/log.h"
-#include "core/announce_multiplayer_session.h"
+#include "network/announce_multiplayer_session.h"
 #include "ui_client_room.h"
 #include "yuzu/game_list_p.h"
 #include "yuzu/multiplayer/client_room.h"
diff --git a/src/yuzu/multiplayer/host_room.cpp b/src/yuzu/multiplayer/host_room.cpp
index d70a9a3c86b41e252d22903360ec0e365488991f..8e7a812911e606aa33e5eaf93932e29407fa8c6b 100644
--- a/src/yuzu/multiplayer/host_room.cpp
+++ b/src/yuzu/multiplayer/host_room.cpp
@@ -12,7 +12,7 @@
 #include <QtConcurrent/QtConcurrentRun>
 #include "common/logging/log.h"
 #include "common/settings.h"
-#include "core/announce_multiplayer_session.h"
+#include "network/announce_multiplayer_session.h"
 #include "ui_host_room.h"
 #include "yuzu/game_list_p.h"
 #include "yuzu/main.h"
diff --git a/src/yuzu/multiplayer/lobby.h b/src/yuzu/multiplayer/lobby.h
index 82744ca9452da1928f0aa3c107b57f40d754b1aa..02cc766e45af4fc89a454710e0f5a72eb2c027e7 100644
--- a/src/yuzu/multiplayer/lobby.h
+++ b/src/yuzu/multiplayer/lobby.h
@@ -9,7 +9,7 @@
 #include <QSortFilterProxyModel>
 #include <QStandardItemModel>
 #include "common/announce_multiplayer_room.h"
-#include "core/announce_multiplayer_session.h"
+#include "network/announce_multiplayer_session.h"
 #include "network/network.h"
 #include "yuzu/multiplayer/validation.h"
 
diff --git a/src/yuzu/multiplayer/state.h b/src/yuzu/multiplayer/state.h
index 9c60712d51a6203eb9b3bf3ec3f1183ae3a358eb..23960414e1c7661b56fdad810e7e36a5da24f91f 100644
--- a/src/yuzu/multiplayer/state.h
+++ b/src/yuzu/multiplayer/state.h
@@ -4,7 +4,7 @@
 #pragma once
 
 #include <QWidget>
-#include "core/announce_multiplayer_session.h"
+#include "network/announce_multiplayer_session.h"
 #include "network/network.h"
 
 class QStandardItemModel;