Can I use a U.S. based web server to gain a U.S. ip address for a computer located outside the U.S.?
July 30, 2009 7:51 AM   Subscribe

Can I use a U.S. based web server to gain a U.S. ip address for a computer located outside the U.S.?

I have a dedicated windows web server rented from a U.S. web hosting company (the server is - to state the obvious - located in the U.S.). I would like to have a U.S. ip address for my home computer which like myself resides outside of the U.S. (In Europe).

I can access the web server via remote desktop from my work computer, this access is limited to my work ip address. However I would like to know if it is possible to use the web server to somehow acquire a U.S. ip address for my home (non-work - I dont have remote desktop access) computer, for the purposes of accessing services which are limited to the U.S. ( etc). So while I can easily gain access to the web server from home via other means like I really need the U.S. ip address as I need sound!

Assume I know very little about this aspect of computing. Also know that I do not wish to do anything illegal nor do I wish to do anything which would throw up any red flags to my hosting company or appear like some sort of hack-attack to them. They are very well run and I am very happy with their service and do not wish to jeopardise it. Final comment about the hosting company - they have very tight security, enforce strong passwords and from my limited knowledge are likely to have applied all reasonable security measures to this web server. The reason I am not asking my hosting company this question is that I do not want to be seen to be requesting something which could potentially appal them.

Hoping I have given background detail on which to base an answer to the question. So one final piece of information. Within IIS there are 10 ip addresses which I can assign to directories on the web server. Don’t know if one of these can somehow be used by my laptop.

So to restate the question for clarity. Is it possible to use a U.S. based web server to provide a U.S. ip address to a computer outside the US? And if so how?
posted by anonymous to Computers & Internet (7 answers total) 3 users marked this as a favorite
Short answer: No. You can't just "give" one of those IPs to a machine in another location.

However, if you're able to run your own programs on that web host you can install a proxy server (provided you also secure it correctly -- open proxies are bad). I have, in the past, used tinyproxy for this purpose on a unix host. I would then ssh in, tunnel the proxied traffic, and then outbound requests appear to come from that machine.

Since you're looking to subvert geo-location for streaming media (hulu), you'd probably be better off with a US based vpn or proxy provider and optionally pay the couple of bucks a month for better service. Doing the above for high volumes of traffic will, if the hosting company is watching their network, raise their attention.

try this -- (first result on a google search, but it looks like it'll apply) --
posted by devbrain at 8:06 AM on July 30, 2009

I'm no windows server expert, but in theory you should be able to:

1. Set up the Windows server as a VPN host. The VPN uses the 192.168.0.x ip addresses.
2. Your overseas computer connects to the VPN, and gets a 192.168.0.x address
3. The windows server does "internet connection sharing" NAT translation for it's outside network to the 192.168.0.x network, so that any outgoing packets on 192.168.0.x network get changed to the US IP address, and all traffic inbound gets routed appropriately.
4. Through some routing hoodoo on your overseas computer, your local computer will need to be configured to use the Windows server as its router, rather than the local ISP, but to use the local ISP to talk to the Windows Server. This might be tough, but I doubt it's impossible; it might be easier if you know which specific networks need to get sent to the US-based server, and the rest stay local.

So, in short: Your U.S. server needs to accept VPN connections, and use NAT to convert U.S. internet traffic to the VPN's network. Your local computer will need to be able to talk to the Windows server over the cross-country internet connection, but send all US-directed traffic over the VPN, using the Windows server as a router.

It might be easier if you had a separate VPN box at your overseas position; then only the VPN box will need to know that the overseas ISP exists -- your overseas PC will exist entirely on the VPN, thus using the Windows Server in the US seamlessly as its router.
posted by AzraelBrown at 8:22 AM on July 30, 2009

On re-reading your question: do you actually have full access to the server, meaning all operations as a systems administrator, or that you're a restricted user, limited only to web server functions? Unless you are able to change the US-based server's networking configuration, you cannot use the server's IP addresses for anything but what the server is configured to do.

Also: if that webserver is doing anything important, you will end up doubling your bandwidth usage -- if you can VPN/NAT yourself through that server, then download a 1MB file over that connection, the server's bandwidth will use 2MB (the data goes into the server, gets translated, then back out). That's a simplistic explanation, but Hulu will have a huge impact on the server's ability to serve webpages if you use the server as an intermediary.
posted by AzraelBrown at 8:30 AM on July 30, 2009

I've used PHProxy for this. You might want to check your TOS though to see if this is allowed by your webhost.
posted by sero_venientibus_ossa at 8:38 AM on July 30, 2009

The short answer is yes- what you're looking for is a proxy server. In a nutshell, you connect (typically via a vpn or ssh tunnel) to another server and all your traffic data is routed through that computer.
To the Hulu server, it looks like all the data is just going to the US server, which in turn sends data to your home computer.

Google for circumventing work firewalls, hulu, and ssh tunneling. There is a lot of step-by-step guides out there how to do so, though some of them require linux know-how.

Note that since your traffic is routed through the US-based computer, streaming content will be dependent on its upstream bandwidth, which may not be enough unless you're paying a decent amount of money for hosting.
posted by jmd82 at 8:40 AM on July 30, 2009

I've done similar (Canada to u.s server) using a simple ssh tunnel and my ip registers as u.s based using the tunnel as a proxy. That said a lot of sites still don't seem to work.
posted by backwards guitar at 9:40 AM on July 30, 2009

As others have said, run a VPN and proxy server on the Windows server. I have done this (mainly to secure my surfing while using open WiFi) and have found the following to be useful.

1) OpenVPN -- See this static key howto to find out how to set up a simple point-to-point VPN.

2) Antinat -- SOCKS proxy server.

You could also use Hamachi for the VPN (it's easier to set up) and you could add an HTTP proxy server if you wanted to, but for your purposes that's probably overkill.
posted by kindall at 3:58 PM on July 30, 2009

« Older Intelligent space opera?   |   Help a non-dog owner understand. Newer »
This thread is closed to new comments.