esto esta copiado de una respuesta en este foro, que es cierto que se ha tratado mucho, como no me acuerdo del enlace te lo pongo por si te sirve:
Código Delphi
[-]
procedure TForm1.Button1Click(Sender: TObject);
var
i:integer;
x,s:ansistring;
smtp: TIdSMTP;
begin
x:=IdHTTP1.Get('http://checkip.dyndns.org');
i:= AnsiPos('Address:',x);
i:=i+9;
while x[i]<>'<' do
begin
s:=s+x[i];
inc(i);
end;
Edit1.Text:=s;
end;