diff --git a/Services/RequestServer/ConnectionFromClient.cpp b/Services/RequestServer/ConnectionFromClient.cpp index 7ed6dd906f..136b31e1d0 100644 --- a/Services/RequestServer/ConnectionFromClient.cpp +++ b/Services/RequestServer/ConnectionFromClient.cpp @@ -353,6 +353,11 @@ void ConnectionFromClient::start_request(i32 request_id, ByteString const& metho } auto host = url.serialized_host().to_byte_string(); + + // Check if host has the bracket notation for IPV6 addresses and remove them + if (host.starts_with("["sv) && host.ends_with("]"sv)) + host = host.substring(1, host.length() - 2); + m_resolver->dns.lookup(host, DNS::Messages::Class::IN, { DNS::Messages::ResourceType::A, DNS::Messages::ResourceType::AAAA }) ->when_rejected([this, request_id](auto const& error) { dbgln("StartRequest: DNS lookup failed: {}", error);