TechnitiumSoftware / DnsServer

Technitium DNS Server
https://technitium.com/dns/
GNU General Public License v3.0
3.84k stars 400 forks source link

Web Service Listening IP #787

Closed Hemsby closed 4 months ago

Hemsby commented 7 months ago

Running the latest version in Windows. Trying to change the WebService Listening IP results in the below error

image

Having the same error on multiple systems. Is this a newly introduced bug or I'm doing something wrong?

ShreyasZare commented 7 months ago

Thanks for the feedback. There is a new feature added which tests whether the local end points are available before saving the settings. This prevents issues where the port is unavailable and the web service fails to bind on the port causing the web service to become inaccessible which then causes issue since you cannot revert the changes via the web panel.

It looks a bit off that its testing for [::]:53443 end point which is not listed as local address. I tried this on my local setup and not seeing this issue. So need to know exactly what options you have enabled for web service like HTTP/3 etc and the OS you have so that I can test with the same config to see the error replicates.

Most likely you have HTTP/3 enabled which uses [::] as local address since QUIC library supports only [::] and 0.0.0.0 as the local address. And that the UDP port is already in use which is causing the test to fail. You can check that once using netstat command to list all open ports and see if 53443 is being used.

Hemsby commented 7 months ago

Thanks for the fast response. You are correct. I had enabled HTTP/3. Unselecting this, I could then make the changes successfully. I was even then able to recheck the HTTP/3 and all is good.

FYI: OS is Server 2022 Datacenter

ShreyasZare commented 7 months ago

Thanks for the fast response. You are correct. I had enabled HTTP/3. Unselecting this, I could then make the changes successfully. I was even then able to recheck the HTTP/3 and all is good.

FYI: OS is Server 2022 Datacenter

Thanks for the details. Since you are on Windows platform, the UDP port was most probably occupied by the DNS server itself where it creates a pool of 2500 UDP sockets on random ports between 1024 and 65535. Will see if the socket pool can be made aware about the HTTP/3 port so that it can avoid using that.

ShreyasZare commented 4 months ago

Technitium DNS Server v12 is now available that fixes this issue by avoiding to bind pooled socket to HTTP/3 port that is in use. Do update and let me know your feedback.