ネットワーク

[C#] 自身のIPv4アドレスを取得する

2021年7月7日

自身のIPv4アドレスを取得するサンプルです。

サンプル

IPv4アドレスが1つしか割り当てられていない前提です。

例)IPv4アドレスを取得する

using System.Net;
using System.Net.Sockets;

//IPアドレス用変数
string ip = "";

//自身のIPアドレスの一覧を取得する
string hostname = Dns.GetHostName();
IPAddress[] ips = Dns.GetHostAddresses(hostname);

//一覧からIPv4アドレスのみ抽出する
foreach (IPAddress a in ips)
{
  //IPv4を対象とする
  if (a.AddressFamily.Equals(AddressFamily.InterNetwork))
  {
    ip = a.ToString();
    break;
  }
}

結果例

192.168.1.10

備考

  • Dns.GetHostAddresses()を使うと割り当てられているIPアドレスの一覧が取得できます。(1つの端末に複数のIPアドレスを割り当てることは可能です。)
  • そのIPアドレス一覧からAddressFamilyの値を参照すればIPv4かIPv6の判定ができます。

関連記事

-ネットワーク