Unable to access my WD mycloud device remotely via internet

  • I discover that every time my ISP changes the external IP address of my ADSL service, I’m no longer able to access my WD MyCloud device remotely via internet. I suspect it has to do the IP address stored in WDmycloud.com server that has not been automatically updated in response to the IP change. In dashboad, the cloud access menu shows “connected” status. To re-gain remote access to my WD MyCloud device, I have to reboot it to make it work again.

Do I need to do any extra port forwarding (besided 80 and 443) for DDNS update to work?  

Any suggested fix w/o having to perform reboot every day?

  • I have subscribed to a free dynamic dns service which l update my external ip address automatically via inadyn. Is there a way to update the IP address in my  WDmycloud.com account using inadyn, ddclient or dnsomatic service?

Thanks

Hi muonic, I recommend you to contact tech support directly for this case. Check the link below for more information. 

http://support.wd.com/contact/index.asp?lang=en

I did email the support team on 4/24. My case number is [Deleted - Privacy]. No response so far.

I have opened 3 cases with WDC tech support for this same issue and have been very disappointed with the response from them. 

Same problem - you need to unplug the system evrytime you need t o use it. If you arent close- its unusable.

Have you got a working reply yet? I need to unplug - replug mine everytime I need to use it.

Did you assign a static IP address to the NAS? Best way to do this is from the router settings? You can also do it from the NAS directly, but make sure you choose an IP address outside of the DHCP IP address range.

Hi 

You dont need to unplug or reset the device (this is a right pita if you have external usb drives attached)

when this happened to me I just went into settings in the dashboard and switched remote access off for a couple of minutes then switched it back on after that my WDMyCloud was accessible from my phone again (just need to find a way to do this when you are away from home lol)

please click Kudos if this helps

I haven’t got a working solution from WD so far. Here’s my temporary solution if you aren’t afraid to turn on ssh service.

  1. Turn on ssh service in dashboard.

  2. SSH to the box using eg. putty and run the folllowing commands. 

cd /etc/cron.d

echo  “2  4  *  *  *  root  /sbin/reboot”   >   do_reboot

  

Remark: this will cause WDMC to reboot automatically at 4.02am everyday. The first and second numbers are minutes and hours, respectively, Change them to other numbers as you wish.

  1. Restart cron service by typing " service cron restart"

After some digging, I found the command to update the external IP stored on wd2go server. The command is in the folllowing http request format

https://198.107.148.110/api/1.0/rest/device_port_forward/119xxx9?

format=xml&rest_method=put&ip=YOUR_EXT_IP&local_ip=192.168.2.5&forward_port=80&forward_ssl_port=443&

device_auth=76e79ee544axxxxxxxxxxxf0e7f250

This command can be executed via web browser. Once executed, the device’s ip address stored in wd2go server will be updated accordingly and this will make remote access work again upon IP change by the ISP.

Now, I tried to find a way to run this command in unix environment so that I can put it into a shell script that will update the IP by itself. Here’s the command I tried

wget --no-check-certificate https://…

However, I got this error

HTTP request sent, awaiting response… 405 Method Not Allowed
2014-06-25 13:54:23 ERROR 405: Method Not Allowed.

Anyone know how to execute such command in unix?

The http method is POST not GET, try this if it worked for you:

wget -O- --no-check-certificate --post-data="format=xml&rest_method=put&ip=YOUR_EXT_IP&local_ip=192.168.2.5&forward_port=80&forward_ssl_port=443&device_auth=76e79ee544axxxxxxxxxxxf0e7f250" https://www.wd2go.com/api/1.0/rest/device_port_forward/119xxx9

Unlike some DDNS clients which checks the IP changes periodically, mycloud doesn’t do this unless upon restart or lost of network interface ie. lan cable plugged out or router down. In short when your ISP resets the IP, there’s no way mycloud or other devices on your network knows there’s a WAN IP change because they are seating behind your router happily with each internal IP. Only router aware of the change. Edited: MyCloud does have this IP change checks as pointed out by muonic which I didn’t noticed ealier because I never encountered such issue.

I haven’t looked into the codes where mycloud trigger this update but just a recommendation, instead of rebooting everytime, use: /etc/init.d/networking stop|start

Hope it helps…

Thanks a lot, Nazar78.  Your fix works!    I can now update my external IP stored in wd2go via unix script.

BTW, WDMC has a monitoring program to check for IP changes. The process is called

/usr/orion/communicationmanager/communicationmanager

In dashboard, when cloud access is turned off, it will execute

/usr/orion/communicationmanager/communicationmanager -u

and when it’s turned on it will execute

/usr/orion/communicationmanager/communicationmanagerd start

 

I got the https command above by looking at the log file of the process via command

/usr/orion/communicationmanager/communicationmanager -l -f 120

 

The -l flag will create a log file in /var/log/orion_cm.log. From the log file I can see problem why this monitor program doesn’t work properly. I think this is where WD has to fix regarding the remote access issue.

 

 

 

Great! Can you share what’s the error in /var/log/orion_cm.log w/o your credentials/ip? What I’ve seen it’s trying to access busybox which doesn’t exists…

Yeah, the busybox thing is one thing I also notice. Something is not quite right about that.

Regarding the log file, I look at the timestamp when my external IP has changed, the log file shows that WDMC was able to detect the IP change but somehow failed to update it. The following is the part where some errors occur.

Tue Jun 24 11:07:37 2014 CommMgr - VPNManager::closeVPNConnection() - openVPN process is not running
Tue Jun 24 11:07:37 2014 CommMgr - ConnectionManager::manualPortForward() - failed to stop VPN process, relay connection cannot be closed.
Tue Jun 24 11:07:37 2014 CommMgr - ConnectionManager::createConnection() - port-forwarding failed, [attempting relay connection].
Tue Jun 24 11:07:37 2014 CommMgr -  ConnectionManager::mapConfiguredPorts() - creating VPN connection.
Tue Jun 24 11:07:37 2014 CommMgr - Deleting port mapping from server, url: [https://198.107.148.110/api/1.0/rest/device_port_forward/119xxxx9?format=xml&rest_method=put&ip=NULL&local_ip=192.168.2.5&forward_port=0&forward_ssl_port=0&device_auth=76e79ee544axxxxxxxxf0e7f250].
Tue Jun 24 11:07:38 2014 CommMgr - OrionClient::updateServerMapping - got [111] bytes
Tue Jun 24 11:07:39 2014 CommMgr - ConnectionManager::createRelayConnection() - attempting to open VPN relay connection.
T

My ISP seldom change my IP even if I pulled off my optic cable haha. So it’s hard for me to simulate the error.

Maybe for the time being you could install a cronjob to call that URL in some interval. Or a cronjob script to check IP changes every 5mins and call that URL if your IP changed…

That’s exactly what I’m doing now instead of doing a dumb reboot everyday.

I wrote a cron job script to periodically check for my external ip address stored in a 3rd-party DDNS service. If it has been changed then I update the IP address stored in wd2go.com via the wget command you gave me. It’s been working fine so far. :smiley:

No solution yey remotly it is unusable at present

Hey 

Nazar78

muonic  

Can you help me to find red text parametr:

wget -O- --no-check-certificate --post-data=“format=xml&rest_method=put&ip=YOUR_EXT_IP&local_ip=192.168.100.2&forward_port=80&forward_ssl_port=443& device_auth=76e79ee544axxxxxxxxxxxf0e7f250https://www.wd2go.com/api/1.0/rest/device_port_forward/ 119xxx9

muonic

Pls, share script to chack ip

Thanks

B.G. Alex