192.168.1.20 is not an Internet address, so it has to be the IP your router has assigned to your PC. You need to a) find out what IP your router has (if it's static or if its not you need to see if it supports dynDNS or something similar) and use that when you wish to connect remotely over the internet and b) set up a rule in your router to forward packets on port 1433 to the IP 192.168.1.20
You might want to read this: http://support.microsoft.com/kb/287932
adam_k
Practically a Posting Shark
804 posts since Jun 2011
Reputation Points: 256
Solved Threads: 149
Why bother yourself about IPs when you can simply use the server name?
Netcode
Veteran Poster
1,021 posts since Jun 2009
Reputation Points: 43
Solved Threads: 67
First of all, assign a static IP to your computer with SQL. Then setup a rule in your ADSL router to forward all requests on port 1433 to that IP & port. More info on the port can be found on the link I provided in my earlier post. If you've got a firewall you'll probably need to configure that as well.
Once you've done all this you should be able to connect with the IP address your router got from your ISP.
As this involves figuring out the IP every time it changes, you might want to investigate solutions like dynamic dns. If you google dynamic dns service you'll get all the required info and the solutions. This service is also being offered free, so you might want to include that in your search as well.
PS: Some routers support dynamic DNS, you might want to check yours.
adam_k
Practically a Posting Shark
804 posts since Jun 2011
Reputation Points: 256
Solved Threads: 149