No hace falta recurrir a google. Aquí mismo tienes varias alternativas
Por ejemplo esta:
Código Delphi
[-]
uses WinInet, Winsock;
const
Pagina = 'https://dynupdate.no-ip.com/ip.php';
function ObtenerIP: String;
var
hNet: HINTERNET;
hUrl: HINTERNET;
Buffer: array[0..15] of Char;
BytesRead: DWORD;
begin
Result := '';
hNet := InternetOpen('agent', INTERNET_OPEN_TYPE_PRECONFIG, nil, nil, 0);
if (hNet <> nil) then
begin
hUrl := InternetOpenUrl(hNet, Pagina, nil, 0, INTERNET_FLAG_RELOAD, 0);
if (hUrl <> nil) then
begin
FillChar(Buffer,Sizeof(Buffer),0);
if InternetReadFile(hUrl, @Buffer, sizeof(Buffer)-1, BytesRead) then
if inet_addr(@Buffer)<>INADDR_NONE then
Result:= Buffer;
InternetCloseHandle(hUrl);
end;
InternetCloseHandle(hNet);
end;
end;
que puedes encontrar en este hilo:
Saber el IP de internet LA SOLUCION !!!
También tienes este otro hilo que habla del tema, y seguro que hay alguno mas:
Conocer ip publica del router