自身の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の判定ができます。