When connected to my VPN, PlexConnect seems to only recognize itself as the Ip Address of the VPN connection, not of the local network. It finds the Plex media server but seems to route the Trailers call to the VPN instead of the local machine address. It should be possible to read or set the proper address from the routing tables even if the VPN is on so that it recongnizes calls from the local network to a local machine, should it not?
Just something to look into, you may really want a DNS proxy instead of a VPN, if the reason you want to use the VPN is to get to region restricted content. It is much easier to set up your router to handle the DNS proxy as it doesn't require you to encrypt the packets.
Just something to look into, you may really want a DNS proxy instead of a VPN, if the reason you want to use the VPN is to get to region restricted content. It is much easier to set up your router to handle the DNS proxy as it doesn't require you to encrypt the packets.
IF I had a dedicated machine for my Plex Server I wouldn't worry about it at all, however, I am running Plex on my desktop machine which I use for everything else. I run a VPN 24/7 for privacy and security. The encryption is the point. It is a bit of a pain to have shut it down and then start PlexConnect. It should be easy enough to get the right network address for PlexConnect. Other Apps seem to be able to do this.
When connected to my VPN, PlexConnect seems to only recognize itself as the Ip Address of the VPN connection, not of the local network. It finds the Plex media server but seems to route the Trailers call to the VPN instead of the local machine address. It should be possible to read or set the proper address from the routing tables even if the VPN is on so that it recongnizes calls from the local network to a local machine, should it not?
The problem appears to be the fact that if the VPN is on when PMS and PC are started, PC identifies ip_self as the ip address assigned by the VPN and thus looks for Trailers calls going to that IP address. However the ATV DNS setting is set for the local ip address of the machine itself. Thus PC never recognises the Trailers calls from ATV.
I have tried playing around the Settings config. I changed the dnsmaster to another address which has nothing to do with this issue. I alse tried setting the pms_server to my machine address of x.xxx.xxx.7 and I turned off GDM. This did not change anything, still Trailers would not connect.. The log below shows that IP_self: 10.200.3.119 is identified and intercept trailers.apple.com: 10.200.3.119. THis address is the address the VPN assigns to the machine. This is a software VPN client running on the same machine as PLEX. One solution for me would be to set the VPN up on the router rather than the machine. THis has other drawbacks however.
I am not completely sure yet of what the PC code is doing but it seems that on intercept of Trailers if forwards the request to the address if the web server identified as ip_self. I am also not a complete expert on IP routing tables but I understand enough to know that you should be able to still route ip traffic to a machine on the same network even if the VPN is connected. I think the solution is that the PLEXConnect needs to read the routing tables and not just read the machine address which may be masked by a VPN. Just my limited opinion to date before I finish looking at the code.
I use Plexconnect and Unblockus together and it works. I can get geoblocked Plex Channels to Play on Plexconnect. You put he Unblockus DNS in the settings.cfg file where it says ip_dnsmaster.
I use Plexconnect and Unblockus together and it works. I can get geoblocked Plex Channels to Play on Plexconnect. You put he Unblockus DNS in the settings.cfg file where it says ip_dnsmaster.
My understanding of Unblockus is that it is not a pure VPN. It is more of a reverse Proxy. Not all trafic actually goes through Unblockus, such as your return data and or media streams from the source. IT just handles proxy routing. True VPN is bit different I think.
What VPN app are you using? With Viscosity ($9), I believe you can have certain traffic bypass the VPN connection.
The Viscosity forums have several posts about doing this or you could ask their tech support about your specific VPN needs. http://www.sparklabs.com/
It would be nice if my VPN allowed me to mark certain traffic to bypass, but I cannot find such ability at this point. Perhaps in the OpenVPN config file but I will have to research that. I will look at Viscosity. Still looking for a PlexConnect Solution.
Perhaps a setting could be added that if specified would force the local address of the DNS server to be used.
I use Plexconnect and Unblockus together and it works. I can get geoblocked Plex Channels to Play on Plexconnect. You put he Unblockus DNS in the settings.cfg file where it says ip_dnsmaster.
I thought that may work. With Unblockus can you have it setup that Netflix sees my account as coming from USA but other apps see me from UK simultaneously, or would I need to change it manually for every app?
Unblockus only affects certain sites, the ones listed on their web site. It is not a comprehensive VPN service. There might be conflicts there for you but I suggest checking out their list of supported sites to see if it suits your purposes.
I thought that may work. With Unblockus can you have it setup that Netflix sees my account as coming from USA but other apps see me from UK simultaneously, or would I need to change it manually for every app?
Unblockus only affects certain sites, the ones listed on their web site. It is not a comprehensive VPN service. There might be conflicts there for you but I suggest checking out their list of supported sites to see if it suits your purposes.
I appreciate the participation, but maybe you might want to start an UnblockUS thread. I am looking for a PlexConnect Solution in the Python code to either automatically find the right IP or to put a new item in the Settings files for DNS_IP_Self where one could hard code the proper local IP address. I would do it myself but then I have a custom setup and would not be able to take updates easily. Do the developers monitor these threads?
OK, I just tested forcing the value of the parameter 'IP_self' in the PlexConnect.py file to be the correct local address of my machine. This passed through to DNSServer.py just fine and everything seems to work now regardless of the state of connection of my VPN and regardless of whether it changes IP addresses on me in the middle of a movie stream. Thus it would seem that the easiest solution is to simply add a parameter to the Settings.cfg file for 'ip_dns_server = ' or 'ip_intercept_dns = ' or some such named parameter. Then the Settings.py file file would need to be changed to handle the creating of the default value and querying of that value each time the DNSServer.py and the PlexConnect.py populate the internal param ip_self. Logic would need to be added to check the settings.cfg first, and if it is the default, then your current get_IP_self routing can be used.
This is probably the easiest and most platform independent way to go about this. After researching the retrieval issue of the proper IP in Python, it seems there are many solutions to do what I want, but each is rather platform dependant and I know you are trying to avoid that.
IF I come across some good suggestions for doing this in a platform independent method, can you give me a name or email which I can use to forward them to? The only reason I am asking this of you and not coding it to fix my own particular problem myself is that it would make taking updates from you much more difficult. IF you could get a fix in your code it would be easier for me. I know I may be the first to report this, but there will be more as people become more interested in the use of true VPNs to protect their privacy from "Big Brother" so it will make it easier on them too.
For now I have a workaround, but I would appreciate you putting this on your to do list. I look forward to hearing back from you or anyone else with suggestions.
works well for me on my Windows 7 machine, and his commit handles those exceptions with this method that returns 127.0.0.1 when etc\hosts has an entry which forces this. I consider this fixed and will copy it into future commit versions I might download until you get it into the next beta release.
works well for me on my Windows 7 machine, and his commit handles those exceptions with this method that returns 127.0.0.1 when etc\hosts has an entry which forces this. I consider this fixed and will copy it into future commit versions I might download until you get it into the next beta release.
Thanks again,
LJ
Hi LJinFLA
I have similar issues with my VPN service and I have made the changes indicated after following the link you posted however I am unable to use plexconnect at all.
Are there any other changes that need to be made along with modifying the plexconnect.py file such as settings.cfg or the hosts file, If so what are they.