Si lo unico que quieres es obtener la ip del equipo creo que te estas liando demasiado. Usa esta funcion para hacerlo:
Código Delphi
[-]
uses Winsock;
function ObtenerIP : String;
var
HostEnt: PHostEnt;
Buffer: array[0..256] of Char;
WSAData : TWSAData;
begin
Result:= '';
if WSAStartup(MAKEWORD(1, 1), WSAData) = 0 then
begin
if GetHostName(@Buffer, Sizeof(buffer)) = 0 then
begin
HostEnt := gethostbyname(@Buffer);
if HostEnt <> nil then
Result := inet_ntoa(PInAddr(HostEnt^.h_addr_list^)^);
end;
WSACleanup;
end;
end;