diff --git a/jvm/src/main/scala/cs214/webapp/server/web/WebServerRoutes.scala b/jvm/src/main/scala/cs214/webapp/server/web/WebServerRoutes.scala
index e8199ed9d4f55d4a998e77dcd8e6af087917dcd3..430d2d72f5ecde0fb924561378c8651ae0c7a24a 100644
--- a/jvm/src/main/scala/cs214/webapp/server/web/WebServerRoutes.scala
+++ b/jvm/src/main/scala/cs214/webapp/server/web/WebServerRoutes.scala
@@ -34,7 +34,7 @@ private[server] final case class WebServerRoutes()(using cc: castor.Context, log
           && !addr.isLoopbackAddress)
         _ = if WebServer.debug then println(f"[debug] found address ${addr.getHostAddress}")
       yield addr.getHostAddress
-    Try(addresses.toList.head).getOrElse(InetAddress.getLocalHost.getHostAddress)
+    addresses.nextOption().getOrElse(InetAddress.getLocalHost.getHostAddress)
 
   @cask.get("/")
   def getIndexFile() = HTML_STATIC_FILE