Sonarr: Bind Address doesn't work with DNS name

Created on 17 Jun 2015  路  9Comments  路  Source: Sonarr/Sonarr

Bind to a specific IP address and then attempt to connect via the hostname or any other DNS name and the connection doesn't go through.

This might be a limitation in httpsys and how OWIN is bound to the IP.

bug high

Most helpful comment

I'm on OSX and have the same issue.
As a workaround a setup an nginx server before the sonarr and proxy everything through the nginx and rewrite the HTTP Host header:

server {
    location / {
        proxy_pass http://127.0.0.1:8989;
        proxy_set_header Host localhost:8989;
    }
}

All 9 comments

I bound sonarr to my local IP address given by router and was able to connect with my computer's hostname and some .redirectme.net address.

I may be just misreading the issue, but I can't reproduce.

Edit: nevermind, now I got the issue too. Guess it might not have actually restarted after I first bound the address for any reason.

@Morten242 I'm not able to reproduce it myself (Windows Server 2012), restarting Sonarr to make sure the change takes effect.

This is what I tested:

  • Private IP :white_check_mark:
  • DNS pointed at private IP :white_check_mark:
  • localhost :white_check_mark:
  • 127.0.0.01 馃毇

How are you connecting?

On a whim I whipped out my laptop. At which point the DNS pointed at my private IP returned something along the lines of "invalid hostname". (so: secondary computer)

Running on Linux not windows. Connecting from other device (any OS) to the IP:8989 works fine. If I use the DNS name, I get a white screen with "Bad Request (Invalid host)"

Has there been any progress on this problem? I am having the same issue too.

This just happened to me. Everything was working fine and out the blue I get the same error when trying to connect from outside my network. Has there been any progress?

I'm on OSX and have the same issue.
As a workaround a setup an nginx server before the sonarr and proxy everything through the nginx and rewrite the HTTP Host header:

server {
    location / {
        proxy_pass http://127.0.0.1:8989;
        proxy_set_header Host localhost:8989;
    }
}

Miiight be a different issue, but I'm not able to bind to a local IP on Windows. However, my weirdness is that I'm also trying to bind to port 80 when 192.168.1.102 is one of many IPs assigned to a single physical NIC (and the other local IPs assigned to that NIC are _also_ bound to their own port 80). I think Sonarr might be trying to bind to port 80 on other IPs as well. Config is as follows:

<Config>
  <Port>80</Port>
  <UrlBase></UrlBase>
  <BindAddress>192.168.1.102</BindAddress>
  <SslPort>9898</SslPort>
  <EnableSsl>False</EnableSsl>
  <ApiKey>ee0d3839aa314470bce43886b583f169</ApiKey>
  <AuthenticationMethod>None</AuthenticationMethod>
  <LogLevel>Info</LogLevel>
  <Branch>master</Branch>
  <LaunchBrowser>True</LaunchBrowser>
  <SslCertHash></SslCertHash>
  <UpdateMechanism>BuiltIn</UpdateMechanism>
</Config>

When I restart on the port change, I get an error message that reads:

Epic Fail!
PortInUseException: Port 80 is already in use, please ensure NzbDrone is not already running.

EDIT: Found this thread and used netsh to clear out all my bindings on port 80. Worked fine after that. Weird. :\

I have the same problem, can't connect from Safari on OS X, anything we can do, besides using an nginx proxy?

Was this page helpful?
0 / 5 - 0 ratings