Re: [SlimDevices: SqueezeCenter] LMS option --playeraddr?

2017-08-04 Thread epoch1970

Thanks for this analysis!
For me the simplest workaround is to just omit the option, and filter
whatever would come out of eth0.
My squeezelite config is already far from the default one...

I found these options in a wiki page:
http://wiki.slimdevices.com/index.php/Running_multiple_servers, perhaps
this is worth a mention?



3 SB 3 • Libratone Loop, Zipp Mini • iPeng (iPhone + iPad) • LMS 7.9
(linux) with plugins: CD Player, WaveInput, Triode's BBC iPlayer by bpa
• IRBlaster by Gwendesign (Felix) • Server Power Control by Gordon
Harris • Smart Mix, Music Walk With Me, What Was That Tune? by Michael
Herger • PowerSave by Jason Holtzapple • Song Info, Song Lyrics by
Erland Isaksson • AirPlay Bridge by philippe_44 • WeatherTime by Martin
Rehfeld • Auto Dim Display, SaverSwitcher, ContextMenu by Peter Watkins.

epoch1970's Profile: http://forums.slimdevices.com/member.php?userid=16711
View this thread: http://forums.slimdevices.com/showthread.php?t=107783

___
Squeezecenter mailing list
Squeezecenter@lists.slimdevices.com
http://lists.slimdevices.com/mailman/listinfo/squeezecenter


Re: [SlimDevices: SqueezeCenter] LMS option --playeraddr?

2017-08-04 Thread bpa

AFAICT It looks like it is a Linux specifc issue.  A kernel / driver
restriction. When playeraddr is used socket is bound to the specific
address /interface whereas when no playeraddr is supplied then default
is 0.0.0.0  INADDR_ANY.  In Linux a socket bound to a specific interface
does not receive Broadcast packet.   The rationale is that if you have
bound socket to a specific interface you don't want broadcasts. 

This does not seem to be a Windows restriction  and not sure about any
other OS such as OSX.

There are plenty of threads in various language about this but it
doesn't look promising. e.g.
https://groups.google.com/forum/#!topic/comp.lang.perl.misc/T_7TsEBGjSk

One thread even mentioned no solution if a bridge is controlling an
interface.  Another thought using promiscuous mode might fix it but I
don't think so.

The  simplest workaround would be for your players not to rely on
broadcasts but to have the LMS IP address setup manually as if on a
player is on a different LAN segment (e.g. Squeezelite -s parameter).



bpa's Profile: http://forums.slimdevices.com/member.php?userid=1806
View this thread: http://forums.slimdevices.com/showthread.php?t=107783

___
Squeezecenter mailing list
Squeezecenter@lists.slimdevices.com
http://lists.slimdevices.com/mailman/listinfo/squeezecenter


Re: [SlimDevices: SqueezeCenter] LMS option --playeraddr?

2017-08-04 Thread bpa

epoch1970 wrote: 
> Shall I look at the player??

Why ?

>From the logs it looks like th eplayers send the broadcast packet - so
player logs won;'t show anything.

When playeraddr is not defined - the broadcast packet is received by
LMS.  When playeraddr is defined then broadcast packet is not received
by LMS.  That seems to point to somehting to a difference in the way the
socket is opened with a default value of Playeraddr vs a defined value
and this change is making the broadcast to be filtered/blocked from
reaching LMS. 

Time to think and look at code.



bpa's Profile: http://forums.slimdevices.com/member.php?userid=1806
View this thread: http://forums.slimdevices.com/showthread.php?t=107783

___
Squeezecenter mailing list
Squeezecenter@lists.slimdevices.com
http://lists.slimdevices.com/mailman/listinfo/squeezecenter


Re: [SlimDevices: SqueezeCenter] LMS option --playeraddr?

2017-08-03 Thread epoch1970

Mhh...

Logitech Media Server (v7.9.1, 1491339164, Tue Apr  4 21:14:44 UTC 2017)
perl 5.020002 - arm-linux-gnueabihf-thread-multi-64int

SLIMOPTIONS="--noupnp --nomysqueezebox --httpaddr 172.20.0.1 --cliaddr
172.20.0.1 --streamaddr 172.20.0.1 --playeraddr 172.20.0.1"
Server stop/start, player reboot

[Nothing logged]


Code:

tcpdump -i any -n -e udp port 3483
  tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
  listening on any, link-type LINUX_SLL (Linux cooked), capture size 262144 
bytes
  00:32:52.104466   B b8:27:eb:pc:p3:20 ethertype IPv4 (0x0800), length 62: 
172.20.5.1.49485 > 255.255.255.255.3483: UDP, length 1
  00:32:52.105039 Out b8:27:eb:pc:p3:20 ethertype IPv4 (0x0800), length 45: 
172.20.5.1.49485 > 255.255.255.255.3483: UDP, length 1
  00:32:52.104466   B b8:27:eb:pc:p3:20 ethertype IPv4 (0x0800), length 45: 
172.20.5.1.49485 > 255.255.255.255.3483: UDP, length 1
  00:32:54.972943 Out au:di:o_:br:id:ge ethertype IPv4 (0x0800), length 70: 
172.20.0.1.3483 > 255.255.255.255.3483: UDP, length 26
  00:32:54.973209 Out au:di:o_:br:id:ge ethertype IPv4 (0x0800), length 70: 
172.20.0.1.3483 > 255.255.255.255.3483: UDP, length 26
  00:32:54.973449 Out au:di:o_:br:id:ge ethertype IPv4 (0x0800), length 70: 
172.20.0.1.3483 > 255.255.255.255.3483: UDP, length 26
  00:32:57.109604   B b8:27:eb:pc:p3:20 ethertype 802.1Q (0x8100), length 66: 
vlan 10, p 0, ethertype IPv4, 172.20.5.1.49485 > 255.255.255.255.3483: UDP, 
length 1
  00:32:57.109604   B b8:27:eb:pc:p3:20 ethertype IPv4 (0x0800), length 62: 
172.20.5.1.49485 > 255.255.255.255.3483: UDP, length 1
  00:32:57.110177 Out b8:27:eb:pc:p3:20 ethertype IPv4 (0x0800), length 45: 
172.20.5.1.49485 > 255.255.255.255.3483: UDP, length 1
  00:32:57.109604   B b8:27:eb:pc:p3:20 ethertype IPv4 (0x0800), length 45: 
172.20.5.1.49485 > 255.255.255.255.3483: UDP, length 1
  00:33:02.114684   B b8:27:eb:pc:p3:20 ethertype 802.1Q (0x8100), length 66: 
vlan 10, p 0, ethertype IPv4, 172.20.5.1.49485 > 255.255.255.255.3483: UDP, 
length 1
  00:33:02.114684   B b8:27:eb:pc:p3:20 ethertype IPv4 (0x0800), length 62: 
172.20.5.1.49485 > 255.255.255.255.3483: UDP, length 1
  00:33:02.115194 Out b8:27:eb:pc:p3:20 ethertype IPv4 (0x0800), length 45: 
172.20.5.1.49485 > 255.255.255.255.3483: UDP, length 1
  00:33:02.114684   B b8:27:eb:pc:p3:20 ethertype IPv4 (0x0800), length 45: 
172.20.5.1.49485 > 255.255.255.255.3483: UDP, length 1
  00:33:07.119834   B b8:27:eb:pc:p3:20 ethertype 802.1Q (0x8100), length 66: 
vlan 10, p 0, ethertype IPv4, 172.20.5.1.49485 > 255.255.255.255.3483: UDP, 
length 1
  00:33:07.119834   B b8:27:eb:pc:p3:20 ethertype IPv4 (0x0800), length 62: 
172.20.5.1.49485 > 255.255.255.255.3483: UDP, length 1




SLIMOPTIONS="--noupnp --nomysqueezebox --httpaddr 172.20.0.1 --cliaddr
172.20.0.1 --streamaddr 172.20.0.1" 
Server stop/start, player reboot


Code:

[17-08-04 01:08:24.3254] Slim::Networking::Discovery::gotTLVRequest (156) 
discovery packet:"eIPAD\0NAME\0JSON\0UUID\0VERS\0"
  [17-08-04 01:08:24.3269] Slim::Networking::Discovery::gotTLVRequest (173)  
TLV: IPAD len: 0
  [17-08-04 01:08:24.3284] Slim::Networking::Discovery::gotTLVRequest (173)  
TLV: NAME len: 0
  [17-08-04 01:08:24.3298] Slim::Networking::Discovery::gotTLVRequest (173)  
TLV: JSON len: 0
  [17-08-04 01:08:24.3319] Slim::Networking::Discovery::gotTLVRequest (173)  
TLV: UUID len: 0
  [17-08-04 01:08:24.3335] Slim::Networking::Discovery::gotTLVRequest (173)  
TLV: VERS len: 0
  [17-08-04 01:08:24.3348] Slim::Networking::Discovery::gotTLVRequest (194) 
sending response
  [17-08-04 01:08:24.3376] Slim::Networking::Discovery::gotTLVRequest (156) 
discovery packet:"e"
  [17-08-04 01:08:24.3394] Slim::Networking::Discovery::gotTLVRequest (194) 
sending response
  [17-08-04 01:08:24.3433] Slim::Networking::Discovery::Server::gotTLVResponse 
(199) discovery response packet:
  [17-08-04 01:08:24.3448] Slim::Networking::Discovery::Server::gotTLVResponse 
(215)  TLV: IPAD len: 10, 172.20.0.1
  [17-08-04 01:08:24.3463] Slim::Networking::Discovery::Server::gotTLVResponse 
(215)  TLV: NAME len: 14, audio--library
  [17-08-04 01:08:24.3478] Slim::Networking::Discovery::Server::gotTLVResponse 
(215)  TLV: JSON len: 4, 9000
  [17-08-04 01:08:24.3495] Slim::Networking::Discovery::Server::gotTLVResponse 
(215)  TLV: UUID len: 36, 1----555
  [17-08-04 01:08:24.3509] Slim::Networking::Discovery::Server::gotTLVResponse 
(215)  TLV: VERS len: 5, 7.9.1
  [17-08-04 01:08:24.3523] Slim::Networking::Discovery::Server::gotTLVResponse 
(235)  Discovered server audio--library (172.20.0.1), using port 9000, UUID 
1----555, version 7.9.1
  [17-08-04 01:08:24.5215] Slim::Player::Client::new (162) New client 
connected: b8:27:eb:pc:p3:20
  [17-08-04 01:08:24.8914] Slim::Player::Player::trackJiffiesEpoch (921) 
b8:27:eb:pc:p3:20 trackJiffiesEpoch: epoch=0, 

Re: [SlimDevices: SqueezeCenter] LMS option --playeraddr?

2017-08-03 Thread bpa

OK w'ere on the same regarding discovery.

If you think LMS is not receiving the broadcast poacket then enable
network.protocol logging to DEBUG and when a broadcast packet is
received you'll see this sort of entry in LMS server log

Code:


  [17-08-03 20:04:06.0807] Slim::Networking::Discovery::gotTLVRequest (156) 
discovery packet:"e"
  [17-08-03 20:04:06.0812] Slim::Networking::Discovery::gotTLVRequest (194) 
sending response
  [17-08-03 20:04:06.0842] Slim::Networking::Discovery::gotTLVRequest (156) 
discovery packet:"eIPAD\0NAME\0JSON\0UUID\0VERS\0"
  [17-08-03 20:04:06.0844] Slim::Networking::Discovery::gotTLVRequest (173)  
TLV: IPAD len: 0
  [17-08-03 20:04:06.0846] Slim::Networking::Discovery::gotTLVRequest (173)  
TLV: NAME len: 0
 
  [17-08-03 20:04:06.0847] Slim::Networking::Discovery::gotTLVRequest (173)  
TLV: JSON len: 0
 
  [17-08-03 20:04:06.0849] Slim::Networking::Discovery::gotTLVRequest (173)  
TLV: UUID len: 0
 
  [17-08-03 20:04:06.0850] Slim::Networking::Discovery::gotTLVRequest (173)  
TLV: VERS len: 0
 
  [17-08-03 20:04:06.0852] Slim::Networking::Discovery::gotTLVRequest (194) 
sending response 
  




bpa's Profile: http://forums.slimdevices.com/member.php?userid=1806
View this thread: http://forums.slimdevices.com/showthread.php?t=107783

___
Squeezecenter mailing list
Squeezecenter@lists.slimdevices.com
http://lists.slimdevices.com/mailman/listinfo/squeezecenter


Re: [SlimDevices: SqueezeCenter] LMS option --playeraddr?

2017-08-03 Thread epoch1970

bpa wrote: 
> What do you mean by discovery  ?
I have players that send packets to 255.255.255.255 3483/udp.
If I set --playeraddress, IIRC the server doesn't send packets at all,
and the GUI says "no players found" forever.
If I omit --playeraddr the server does send to 225.255.255.255 3483/udp,
only linux routes that via eth0, that is the wrong vlan for me. 
The added route for 255.255.255.255/32 via the bridge makes the whole
thing work.

I will check the log on squeezelite.



3 SB 3 • Libratone Loop, Zipp Mini • iPeng (iPhone + iPad) • LMS 7.9
(linux) with plugins: CD Player, WaveInput, Triode's BBC iPlayer by bpa
• IRBlaster by Gwendesign (Felix) • Server Power Control by Gordon
Harris • Smart Mix, Music Walk With Me, What Was That Tune? by Michael
Herger • PowerSave by Jason Holtzapple • Song Info, Song Lyrics by
Erland Isaksson • AirPlay Bridge by philippe_44 • WeatherTime by Martin
Rehfeld • Auto Dim Display, SaverSwitcher, ContextMenu by Peter Watkins.

epoch1970's Profile: http://forums.slimdevices.com/member.php?userid=16711
View this thread: http://forums.slimdevices.com/showthread.php?t=107783

___
Squeezecenter mailing list
Squeezecenter@lists.slimdevices.com
http://lists.slimdevices.com/mailman/listinfo/squeezecenter


Re: [SlimDevices: SqueezeCenter] LMS option --playeraddr?

2017-08-03 Thread bpa

epoch1970 wrote: 
> Ok, thanks. Then I suppose I have set the option to the proper value,
> but discovery doesn't work when I set it.

What do you mean by discovery  ?

Look at code - the address seems ot be only used by socket open on thos
esocket which will be used for listening.

It's possible it is included in the Broadcast reply from LMS when a
player broadcast to find out what LMS are on the segment.  

If you players are Squeezelite - enable full debug log for slimproto and
check log of the initial broadcast and replay packets and compare
between two setups



bpa's Profile: http://forums.slimdevices.com/member.php?userid=1806
View this thread: http://forums.slimdevices.com/showthread.php?t=107783

___
Squeezecenter mailing list
Squeezecenter@lists.slimdevices.com
http://lists.slimdevices.com/mailman/listinfo/squeezecenter


Re: [SlimDevices: SqueezeCenter] LMS option --playeraddr?

2017-08-03 Thread epoch1970

Ok, thanks. Then I suppose I have set the option to the proper value,
but discovery doesn't work when I set it.



3 SB 3 • Libratone Loop, Zipp Mini • iPeng (iPhone + iPad) • LMS 7.9
(linux) with plugins: CD Player, WaveInput, Triode's BBC iPlayer by bpa
• IRBlaster by Gwendesign (Felix) • Server Power Control by Gordon
Harris • Smart Mix, Music Walk With Me, What Was That Tune? by Michael
Herger • PowerSave by Jason Holtzapple • Song Info, Song Lyrics by
Erland Isaksson • AirPlay Bridge by philippe_44 • WeatherTime by Martin
Rehfeld • Auto Dim Display, SaverSwitcher, ContextMenu by Peter Watkins.

epoch1970's Profile: http://forums.slimdevices.com/member.php?userid=16711
View this thread: http://forums.slimdevices.com/showthread.php?t=107783

___
Squeezecenter mailing list
Squeezecenter@lists.slimdevices.com
http://lists.slimdevices.com/mailman/listinfo/squeezecenter


Re: [SlimDevices: SqueezeCenter] LMS option --playeraddr?

2017-08-03 Thread bpa

PlayerAddr is value of the the "Local Address" parameter when LMS open
the TCP and UDP port 3483.

Also See
http://forums.slimdevices.com/showthread.php?24849-playeraddr



bpa's Profile: http://forums.slimdevices.com/member.php?userid=1806
View this thread: http://forums.slimdevices.com/showthread.php?t=107783

___
Squeezecenter mailing list
Squeezecenter@lists.slimdevices.com
http://lists.slimdevices.com/mailman/listinfo/squeezecenter