Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Confused about IPv6 #442

Open
chrsmrtnx opened this issue Mar 25, 2019 · 3 comments
Open

Confused about IPv6 #442

chrsmrtnx opened this issue Mar 25, 2019 · 3 comments

Comments

@chrsmrtnx
Copy link

I have configured gerbera 1.3.0 to bind to LAN-facing interface "bond0", and according to 'ss' it has bound itself to that interface's IPv4 address and also that interface's IPv6 link-local address for TCP. For UDP, it's bound to 0.0.0.0 port 1900 for IPv4 and [::]:1900 for IPv6. Seems OK.

Now, VLC (on my client machine) sends out SSDP search packets via both IPv4 and IPv6 multicast addresses (including ff02::c for link-local). But gerbera only responds on IPv4. If I firewall off IPv4, then gerbera still doesn't respond via IPv6 - and thus no longer works with VLC. It's as if gerbera isn't really working on IPv6, despite listening on IPv6.

Now, if I manually tell gerbera to bind to an IPv6 ULA address (i.e. replace with in config.xml), then gerbera starts, but 'ss' suggests that it's still binding to the same IPv4 and IPv6 LL address as before and ignoring the IPv6 address I supplied.

For reference, I'm running Debian buster with libupnp 1.8.4 (I understand that this version of libupnp enables IPv6 by default).

Now, I was under the impression that gerbera supported IPv6 - am I confused? Is there some configuration switch I'm missing?

Grateful for any suggestions.

@whyman
Copy link
Member

whyman commented Mar 26, 2019

As far as I recall we don't do anything explicit with networking info, we pass the values straight through to libupnp.

I will have to double check the code though to make sure we aren't making any assumptions around v4.

@whyman
Copy link
Member

whyman commented Mar 26, 2019

I cant see anywhere we do anything odd, in the case you pass an interface name we pass that straight into libupnp's UpnpInit2 function.

@whyman
Copy link
Member

whyman commented Jun 11, 2019

So I had a closer look at this and it looks like we may need to call a different method to register rather than init being an issue, as we seem to be using an older version which may not be V6 aware.

To use the new style will need a minor refactoring of how we provide our device XML though.

This is just a hunch for now but will update as I get time

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants