Dear all,
I don't know if I should post my problems in "MS SQL Development" category or "Networking". So I choose to post this thread to both categories.
I have SQL Server 2012 host that run behind mikrotik with IP real.
For short, here is my current configuration:

Server:
O/S: Windows Server 2008R2
IP: 192.168.1.2/24
Firewall rules: (Inbound) 1433/TCP; 1434/UDP
Private/Domain/Public checked - Allow Edge Traversal

SQL Server:
Instance Name: MSSQLSERVER (default instance name)
Server Protocol: Shared Memory/Named Pipes/TCP IP all enabled
TCP Dynamics Port: all blank (which means I don't want to use dynamic port)
TCP Port: 1433

Mikrotik:
IP Real: 202.111.222.123 (as example)
IP LAN: 192.168.1.1/24
NAT to SQL Server host:
(1) Chain: dstnat
Dst. Address: 202.111.222.123
Protocol: TCP
Dst. Port: 1433
Action: dst-nat
To Address: 192.168.1.2
To Ports: 1433

(2) Chain: dstnat
Dst. Address: 202.111.222.123
Protocol: UDP
Dst. Port: 1434
Action: dst-nat
To Address: 192.168.1.2
To Ports: 1434

I suspect that I miss some configuration in my mikrotik box, because if I want to connect to my SQL Server host from my LAN...everything works perfectly. However, when I try to connect to my SQL Server host from the internet, I've got some error message and connection was rejected.
Pleaseeee....give me some hint or any clue here. I've tried googling, but runs into nothing.
Any hints or clues will be appreciated.

Ohhh...before I forgot... I've NAT'ing VNC port (5900) into the same host and everything works perfectly. I can remote my server (in which my SQL Server resides) from the internet.
Sorry for my bad English.