Category Archives: Uncategorized

Setup external access to your Synology NAS

2 Ways

There are 2 ways to setup external access for your Synology NAS, the first way is to setup Synology QuickConnect ID. The other method is to setup router port forwarding. If you are using QuickConnect ID definitely would be safer compare to router port forwarding method because you have to manage your router security better if you are doing it your way.

A standard port to access Synology NAS HTTP is port 5000. HTTP then required port 5001. To access photo station externally then you required a port 80. Surveillance Station required standard port 5000 or 5001.

Synology Network Ports

You can see the complete list of network port for Synology NAS, refer to here.

https://www.synology.com/en-us/knowledgebase/DSM/tutorial/General/What_network_ports_are_used_by_Synology_services

Although in the network port list, they mentioned required port 9000 or 9001 for Surveillance Station, but I noticed that exposing port 5000 and 5001 is sufficient enough.

Router Port Forwarding

Let’s say, for an example if your Synology NAS URL is, http://192.168.0.108:5000/webman/index.cgi

You can set your router port forwarding like below,

forward1.PNG

If your external IP address (router IP address) is like 175.200.142.46, you can access your Synology NAS using http://175.200.142.46:20000/ then you can see your Synology NAS login screen.

For cloud station, just access it with http://175.200.142.46:20001/ will do.

In order to test if your Synology NAS successfully exposed to external access, use Google Paping to double check with “paping 175.200.142.46 -p 20001”.

*Most importantly, setup your Synology NAS properly, please refer to here.*

 

Advertisements

“Error 53” will disable your IPhone permanently

Key Notes:

  1. Only occurred if your IPhone support Touch ID finger sensor including the iPhone 5S, 6 and 6S.
  2. And if your Home Button repaired by an unauthorized third party,
  3. If you updated your IOS to version 9.2.

 

Recently Apple has maintained that Error 53 is designed to protect its customers from security threats. But lot of Apple customers are very unhappy with the decision and claimed that it destroyed their property without any warning.

If you took your phone to a non-Apple certified repair shop to fix your home button, you are at risk.

Error 53 occurs when the user attempts to update their phone’s software to the latest version of iOS 9.2.

Up to date, currently there is no way can revert back the Error 53, and your IPhone will be completely disabled forever.

Cross Table Update with MSSQL & MYSQL – SQL – Programming

At certain conditions, we have to update one table where its column value actually store in another table. A real scenario happened when you have latest product pricing at a table calledproduct_price_latest, and you want to update the latest pricing to your existing table named product_price_current. Both MSSQL & MYSQL able to solve this kind of problem, I will slowly describe how we got to do it one by one.

Databases/Tables

Table : product_price_current
product_id name price
1000 Bicycle 2000
1001 Car 21000
1002 Motorcycle 7000
1003 Boat 45000
Table: product_price_latest
product_id price
1000 2500
1001 18000
1002 12000
1003 74000

Descriptions
so the idea is to replace the current product table price lists with the latest product price list, which located in another table. So after updated, product_id = 1001 (Car)’s price will become 18000, product 1003 (Boat)’s price will become 74000 in product_price_current table.

Comparisons

Conditions MSSQL MYSQL
Updating latest price list for all the products UPDATE ppc
SET ppc.price = ppl.price
FROMproduct_price_current ppc
INNER JOIN
ON ppc.product_id = ppl.product_idproduct_price_latest ppl
UPDATEproduct_price_current ppc
INNER JOINproduct_price_latest ppl
ON ppc.product_id = ppl.product_id
SET ppc.price = ppl.price
Updating latest price list for ‘Car’ only UPDATE ppc
SET ppc.price = ppl.price
FROMproduct_price_current ppc
INNER JOIN
ON ppc.product_id = ppl.product_id
WHERE product_id = 1001product_price_latest ppl
UPDATEproduct_price_current ppc
INNER JOINproduct_price_latest ppl
ON ppc.product_id = ppl.product_id
SET ppc.price = ppl.price
WHERE product_id = 1001
Updating latest price list for all the product, and give 15% discount for all the latest price lists UPDATE ppc
SET ppc.price = ppl.price * 0.75
FROMproduct_price_current ppc
INNER JOIN
ON ppc.product_id = ppl.product_idproduct_price_latest ppl
UPDATEproduct_price_current ppc
INNER JOINproduct_price_latest ppl
ON ppc.product_id = ppl.product_id
SET ppc.price = ppl.price * 0.75
Updating latest price list for all the product, given 15% discount rate for all the items, & adding ‘s’ at last of every product name UPDATE ppc
SET ppc.price = ppl.price * 0.75,
ppc.name = ppc.name + ‘s’
FROMproduct_price_current ppc
INNER JOIN
ON ppc.product_id = ppl.product_idproduct_price_latest ppl
UPDATEproduct_price_current ppc
INNER JOINproduct_price_latest ppl
ON ppc.product_id = ppl.product_id
SET ppc.price = ppl.price * 0.75,
ppc.name = ppc.name + ‘s’