C#の最初のローカルイーサネットインターフェイスのIPv4アドレスを取得する信頼できる方法はありますか?C#のイーサネットインターフェイスのローカルIPアドレスを取得
foreach (NetworkInterface nic in NetworkInterface.GetAllNetworkInterfaces())
{
if (nic.NetworkInterfaceType == NetworkInterfaceType.Ethernet)
{...
これは、イーサネットアダプタに関連付けられたローカルIPアドレスを見つけるだけでなく、(Wiresharkのに使用するためにインストール)Npcapループバックアダプタを見つけます。
var host = Dns.GetHostEntry(Dns.GetHostName());
foreach (var ip in host.AddressList)
{....
他の提案:
は同様に、ループバックアドレスと、次のコードを使用して、イーサネットアドレスの違いを見分けるする方法はないように思えますか?
これは、マシンのホスト名のアドレスを取得する方法について説明します。 http://stackoverflow.com/questions/9855230/how-do-i-get-the-network-interface-and-its-right-ipv4-address(「最初の」アダプタよりも重要かもしれません) – ebyrob
それは助けにはならない。両方のアドレス(イーサネットカードアドレスとNpcapループバックアドレス)を与えます。 –