DOS command to get WAN IP

Hello,

We have several clients who are on dynamic IPs from their ISPs.  I am looking for a way to get the current IP from a server / network that is behind a firewall without actually being on that network.

My first thought was to run a scheduled task which was a batch file as follows:
----------------------------------
@echo off
date /t >clientip.txt
time /t >>clientip.txt
ipconfig /all >>clientip.txt
ftp -s:ipftp.txt
cls
----------------------------------
ipftp.txt contents:

open ftp.mydomain.com
user
password
cd ips
put clientip.txt
bye
----------------------------------
This would give me a text file on an external source where I could see the current status of the network IP.  The catch is, ipconfig /all only give me the network IP (192.168. blah blah blah ) not the WAN IP.

Does anyone know a DOS command I can use in the batch that will give me the WAN IP
 -- OR --
another solution entirely that will give me the IP without being there.

Your prompt attention would be appreciated... I really need this ASAP!

Thanks!

Nette
LVL 2
NetteSAsked:
Who is Participating?
 
scampgbCommented:
Hi NetteS,

Take a look at DynDNS - http://www.dyndns.org/services/dyndns/
This will create a DNS domain name, such as "myserver.dyndns.org" that will always point to the PC or Server's IP

You will need to install a small client app on the machine itself - details on the above webpage.

This means that you can just connect to the machine by the DynDNS domain name.

I hope that this helps.
0
 
oBdACommented:
You can do that with wget.exe, independently of the WAN router that's used (and assuming that there's no proxy involved). Don't get too confused about all the stuff you can do with wget; all you really need is wget.exe.
This script will then retrieve a html page with your current IP address, and set the variable WanIP accordingly.

GNU wget
http://wget.sunsite.dk/

====8<----[DynDNS.cmd]----
@echo off
setlocal
set URL=http://checkip.dyndns.org/index.html
:: *** The path to wget, if necessary (including the trailing backslash):
set wgetPath=D:\Programme\wget\

set TempFile=%~dpn0.html
if exist "%TempFile%" del "%TempFile%"
:: *** Retrieve the html document with the current IP address:
"%wgetPath%wget.exe" %URL% -O "%TempFile%"
:: *** Extract the current IP; this relies strongly on the current format of the source:
for /f "tokens=13 delims=<>: " %%a in ('type "%TempFile%"') do set WanIP=%%a
echo Current WanIP: [%WanIP%]
====8<----[DynDNS.cmd]----
0
 
scampgbCommented:
Hi.  Thanks for the "A".  Glad I could help :-)
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.