Woot, I think I found a workaround ...
Now I'm Able to discover my plex media server with your script :
From Plex (192.168.0.100) :
0.000000 192.168.0.101 -> 239.255.255.250 SSDP 169 M-SEARCH * HTTP/1.1 // This Is My really Vera IP Address in source
From Vera Log :
50 10/20/13 11:44:08.068 luup_log:0: Call to socket.udp ok <0x2d3e1680>
50 10/20/13 11:44:08.069 luup_log:0: Call to udp:sendto ok <0x2d3e1680>
50 10/20/13 11:44:10.073 luup_log:0: LOCATION
http://192.168.0.100:32469/DeviceDescription.xml <0x2d3e1680> // This is my plex media server
50 10/20/13 11:44:10.074 luup_log:0: ST urn:schemas-upnp-org:device:MediaServer:1 <0x2d3e1680>
50 10/20/13 11:44:10.074 luup_log:0: SERVER UPnP/1.0 DLNADOC/1.50 Platinum/1.0.4.9 <0x2d3e1680>
How To :
1st, ip route command or route add doesn't seem to take the Alias attribute of a NIC. So eth0 or eth0:0 is the same for those.
I learnt from my plex media server that I received the M-SEARCH notification but with the wrong IP Address source... (this crappy 192.168.81.1)
So what can we do ... Of course ! let do some IP source natting with Netfilter ! (hope iptables is installed on Vera .. woot yes !, next !)
Use this command on Vera:
iptables -t nat -I POSTROUTING -d 224.0.0.0/4 -j SNAT --to-source 192.168.0.101
Last Parameter is your Vera LAN Ip Address (not the crappy .81.)
What it does :
iptables -t nat -I POSTROUTING (Put this rule In TOP of POSTROUTING table - Netfilter stuff)
-d 224.0.0.0/4 (Match all packet with Multicast destination)
-j SNAT --to-source 192.168.0.101 (Action -> Replace source IP address by this one)
You can undo this command with :
iptables -t nat -D POSTROUTING -d 224.0.0.0/4 -j SNAT --to-source 192.168.0.101
or reboot Vera.
This rule is volatile, so you must add it after each boot.
It is not a solution, it is a Workaround without having to delete this primay network configuration... It will not having a negative effect on vera routine unless Internal code use Multicast too but with the .81. address .... (I doubt but can't be really sure).
@lolodomo It must be working for you too ! unless we find a better solution !
@futzle please can you post the result of this command ? :
iptables -t nat -nvL
It will print your NAT netfilter configuration.