How can I find my wayward server's IP without DDNS?
February 7, 2008 11:18 PM   Subscribe

How can I find my remote server's IP address without linking it to a DDNS lookup service? Or is that the best option?

Inspired by this question, I've set up an ubuntu box and enabled remote access. That works fine and I'm very happy. I'm a linux noob and I'm looking forward to getting acquainted. I don't have a fixed IP, address, though, and I'd like to still be able to rely on a connection to my vidserver/whateverbox even if the cable goes down at home and resets the IP to something different. How can I have it broadcast it's location with minimal amount of fuss or external dependencies, and from any platform?

I already have a hosted domain (dreamhost), so I don't really require my box to have it's own domain. If DDNS is really the best option, what's the most effortless route to implement it?
posted by cowbellemoo to Computers & Internet (14 answers total) 1 user marked this as a favorite
 
You could probably have it send an email with it's new IP to an address of your choosing fairly easily.
posted by bizwank at 11:27 PM on February 7, 2008


use a ddns client, there are several for linux
posted by iamabot at 11:33 PM on February 7, 2008


Best answer: The problem with sending an email is that it's coming from a dynamic address range, and the email might get caught in anti-spam filters, depending on how the mail host does things.

There are a bunch of free DDNS services. DynDNS.org for example. Open an account at one of these services.

If you have a consumer router sitting in front of your Ubuntu box, that router probably has some sort of DDNS setup, where you put in your DDNS service information, and the router takes care of that whenever you get a new IP.

If your Linux box is connected directly, hey, Google is Your Friend (searching on ubuntu dynamic dns client) here's a whole Ubuntu Wiki page on how to do this:

https://help.ubuntu.com/community/DynamicDNS
posted by chengjih at 11:36 PM on February 7, 2008


DDNS is the way to go. I use EveryDNS to have DDNS on my own domain, and it works splendidly. They have a list of recommended clients, too.
posted by themel at 12:21 AM on February 8, 2008


One way to do this for any computer using a home Internet account is to simply go to the "account tools" page for your ISP (or "member services" or "volume usage"... whatever your ISP calls it), and log in with your username and password just as you would if you were using that same page from home.

In my experience, the connection-status or bandwidth-usage page will usually have your account's current IP address on it.
posted by dansdata at 12:48 AM on February 8, 2008


DDNS works just fine, but if for some reason or other, you really want to avoid it, you can set up a cron job on your linux box to periodically wget a specific URL from your dreamhost server. The server logs will contain the current IP of your machine.
posted by leakymem at 12:49 AM on February 8, 2008


Yeah, I was going to post almost exactly what leakymem suggested. If you have a webhost somewhere, where you can see the logs, just have your machine get a specific tiny page every so often... once every half-hour or so. If that's a unique page that nobody else gets, then you just log into your webhost, grep your log for that special URL, and connect to the last IP you see.
posted by Malor at 4:28 AM on February 8, 2008


1. Write a php page on your hosted site that shows the ip of the machine when passed either the right user/passy or a special cookie.

2. Use a cron job to hit that page properly with wget

3. Check that page from anywhere!
posted by advicepig at 6:48 AM on February 8, 2008


Oh and though I like the idea I just posted, I'd just use dyndns.org
posted by advicepig at 6:50 AM on February 8, 2008


Response by poster: Okay, I'll go with the dyndns service and have my router do the work, port forwarding, etc. On second thought, it really doesn't make sense not to take advantage of a full domain association. I do have a follow-up question, though. Continued thanks for your fantastic help, everyone.

Can I set up a subdomain of my hosted site to point to the dyndns server (as a name server maybe?) and have it function the same as the dyndns address? Or is that impossible and my subdomain would need to be running whatever software catches my router updates in order to work like that? So I could open up VNC and type "remote.myhosteddomain.com" and have it go right to my ubuntu box without cloaking. Or would this be impossible since that domain is hosted? I guess this would be the same setup that would make it a proper server. How's that done with DDNS?
posted by cowbellemoo at 8:23 AM on February 8, 2008


Best answer: I think you made the right choice regarding DDNS.

As for using your current domain and pointing a subdomain of it to your box at home ... that's more difficult. It's technically possible, but that doesn't mean that your ISP's DNS servers are equipped to handle it.

Most people do DDNS through a service (DynDNS.org, etc.) that have specially-configured DNS servers that receive periodic pings from your computer's client software, whenever its dynamically-assigned IP changes.

Most ISPs, like the one you presumably host your domain through (if it's the one in your profile, DreamHost) are not set up to handle dynamic IP addresses coming in from the outside. While creating a subdomain isn't that hard, configuring it to constantly point to your computer's IP address (as reported by the client software running on it) is non-trivial. You could contact them and ask, but I'm going to guess with about 90% certainty they don't offer it.

What you might be able to do, if you really wanted to have "subdomain.yourdomain.com" point to your box at home, and "www.yourdomain.com" point to your webserver at a commercial provider, is have the DNS service done by DynDNS.org. This is a paid service, but I don't think it's that expensive. Basically they handle DNS service for your whole domain instead of DreamHost, and they do the dynamic DNS for the subdomain and point everything else to DreamHost's IP. (Make sure DreamHost allows this; some shared hosts don't work with external DNS.)

Frankly I think you're better off just picking a domain from DynDNS's free offerings; that's what just about everyone else does. Who else but you really needs to contact your box at home anyway? It'll be saving a lot of expense and trouble.
posted by Kadin2048 at 8:49 AM on February 8, 2008


Since I control my own DNS (but didn't want to mess with setting up dynamic dns on the router, etc), I just set up a DNS alias pointing to the wacky DDNS name. Now "inside.my.domain" points right to my router, and I can do port NATing to get to the server I want inside my home setup.
posted by jenkinsEar at 9:06 AM on February 8, 2008


Response by poster: Thanks Kadin. that explains alot. Dreamhost does allow a domain to be shifted and still hosted there, so it might be neat to think about consolidating them in the future. But for now, I'm just going to stick with the dnydns address and set up a basic html redirect from my subdomain to it in case I forget what it is (I wanted the subdomain to work mostly because I'm lazy and forgetful).
posted by cowbellemoo at 9:11 AM on February 8, 2008


Best answer: I did what you want.

1. Get dyndns name.
2. sudo apt-get install ddclient on ubuntu box.
3. Create a CNAME at Dreamhost in the DNS panel i.e. home.mydomain.com that points to myhomedomain.dyndns.org.
4. Profit!

You lose a little because of the double lookup, but oh well! You've got your subdomain!
posted by cdmwebs at 1:09 PM on February 9, 2008


« Older Which allergy meds have gone generic or OTC since...   |   WIll multiple domains make any website faster? Newer »
This thread is closed to new comments.