自マシンのIPアドレスとホスト名(マシン名)を得る方法
38 GetLoginUserName 動作確認 Delphi2007 更新日 2008/01/18(金)

マシンのIPアドレスとホスト名(マシン名)を得る方法です。
hostnameコマンドや
ipconfigで得られるものと同一のはずです。

────────────────────
type
  TNetworkInfo = record
    HostName: String;
    IPAddress: String;
  end;

{-------------------------------
//  自マシンのマシン名とIPアドレスを取得する
備考:       uses WinSockが必要
//------------------------------}
function GetMachineNetworkInfo: TNetworkInfo;
var
   wsaData  : TWsaData;
   hostName : array [0..255] of char;
   host     : PHostEnt;
   in_addr  : TInAddr;
begin
   WSAStartup($101, wsaData);
   WinSock.gethostname(hostName,sizeof(hostName));
   host     := gethostbyname(hostName);
   in_addr  :=PInAddr(PInAddr(host^.h_addr_list)^)^;
   Result.HostName :=String(hostName);
   Result.IPAddress :=String(inet_ntoa(in_addr));
   WSACleanup;
end;
//------------------------------

参考────────────────────
ローカルホスト名とIPアドレスを取得する方法を教えてください。 (99/01/08) 
http://www.borland.co.jp/qanda/delphi/d0009357.html