Post Thu Nov 24, 2016 11:56 am

Serviio on WSL (Windows Subsystem for Linux)

Hi,

I have installed serviio on WSL (Windows Subsystem for Linux :: Windows 10) in Gentoo and I have problem with the multicast network part of serviio.

Console may be reach at http://192.168.1.16:23423/console but since network stack/sockets are not really implemented in WSL, even when passing -Dserviio.boundAddr=192.168.1.16, serviio loops on the same errors :

  Code:
2016-11-24 09:31:43,154 WARN  [DiscoverySSDPMessageListener] Cannot acquire NIC for current bound IP address 192.168.1.16, will re-acquire new IP
2016-11-24 09:31:43,154 INFO  [Device] Updated bound IP address of Device with UUID: 44zzzz24-0b16-30ef-z62z-9zzzz58z490z, bound address: 192.168.1.16
2016-11-24 09:31:43,154 INFO  [EventSubscriptionExpirationChecker] Leaving EventSubscriptionExpirationChecker, removing all event subscriptions
2016-11-24 09:31:43,154 INFO  [EventDispatcher] Leaving EventDispatcher
2016-11-24 09:31:43,155 INFO  [EventSubscriptionExpirationChecker] Starting EventSubscriptionExpirationChecker
2016-11-24 09:31:43,158 ERROR [DiscoverySSDPMessageListener] Cannot open multicast socket,will try again
java.net.SocketException: Cannot assign requested address (IOCTL SIOCGIFNETMASK failed)
        at java.net.NetworkInterface.getAll(Native Method)
        at java.net.NetworkInterface.getNetworkInterfaces(NetworkInterface.java:343)
        at org.serviio.util.MultiCastUtils.findNicIP(MultiCastUtils.java:176)
        at org.serviio.upnp.discovery.Multicaster.getBoundNIC(Multicaster.java:47)
        at org.serviio.upnp.discovery.DiscoverySSDPMessageListener.run(DiscoverySSDPMessageListener.java:88)
        at java.lang.Thread.run(Thread.java:745)
2016-11-24 09:31:43,158 INFO  [EventDispatcher] Starting EventDispatcher
2016-11-24 09:31:43,158 INFO  [DiscoveryAdvertisementNotifier] Starting DiscoveryAdvertisementNotifier
2016-11-24 09:31:44,159 WARN  [MultiCastUtils] Host IP address 192.168.1.16 is not available, will try again 9 times
2016-11-24 09:31:49,160 WARN  [MultiCastUtils] Host IP address 192.168.1.16 is not available, will try again 8 times
2016-11-24 09:31:54,161 WARN  [MultiCastUtils] Host IP address 192.168.1.16 is not available, will try again 7 times
2016-11-24 09:31:59,162 WARN  [MultiCastUtils] Host IP address 192.168.1.16 is not available, will try again 6 times
2016-11-24 09:32:04,162 WARN  [MultiCastUtils] Host IP address 192.168.1.16 is not available, will try again 5 times
2016-11-24 09:32:09,163 WARN  [MultiCastUtils] Host IP address 192.168.1.16 is not available, will try again 4 times
2016-11-24 09:32:14,164 WARN  [MultiCastUtils] Host IP address 192.168.1.16 is not available, will try again 3 times
2016-11-24 09:32:19,164 WARN  [MultiCastUtils] Host IP address 192.168.1.16 is not available, will try again 2 times
2016-11-24 09:32:24,165 WARN  [MultiCastUtils] Host IP address 192.168.1.16 is not available, will try again 1 times


sshd, apache, mysql run perfectly on my subsystem.
Is there any trick I can use to solve multicastutils request ?
In console I can't set the binding address and this serviio node is not seen from the network players/renderers.
Otherway, I actually working on a way to provide fake or virtual NIC to the system, but without sockets and no real kernel and access to hardware, devices, sys, etc are stranges too ...
Will keep you inform.
WSL stay in beta state. I'm not insider member and many features stay not available on my WSL version. May be things could also be solved themself in future.
My version is 10.0.14393 ...

https://github.com/Microsoft/BashOnWindows/issues/69

Thanks in advance for any idea.