ASP.NET技術擷取IP與MAC地址的方法

來源:互聯網
上載者:User
 擷取伺服器的IP地址方法以DNS法較為簡單實用,如下:

以下是引用片段:
  private void ButtonIP_Click(object sender, System.EventArgs e)
  { System.Net.IPAddress[] addressList = Dns.GetHostByName(Dns.GetHostName()).AddressList;
  if ( addressList.Length>1)
  { TextLIP.Text = addressList[0].ToString();
  TextSIP.Text = addressList[1].ToString();
  }
  else
  {
  TextLIP.Text = addressList[0].ToString();
  TextSIP.Text = "沒有可用的串連";
  }
  }

  擷取伺服器的IP地址與MAC地址另一方法如下:

以下是引用片段:
  using System.Management;
  string stringMAC = "";
  string stringIP = "";
  ManagementClass MC = new ManagementClass "Win32_NetworkAdapterConfiguration");
  ManagementObjectCollection MOC= MC.GetInstances();
  foreach(ManagementObject MO in MOC)
  {
  if ((bool)MO["IPEnabled"] == true)
  {
  stringMAC += MO["MACAddress"].ToString();
  TextMAC.Text = stringMAC.ToString();
  string[] IPAddresses = (string[]) MO["IPAddress"];
  if(IPAddresses.Length > 0)
  stringIP = IPAddresses[0];
  TextIP.Text = stringIP.ToString();
  }
  }

  擷取用戶端原生IP地址相當簡易,方法如下:

以下是引用片段:
  using System.Net;
  TextIP.Text=Page.Request.UserHostAddress;

  如要擷取用戶端原生MAC地址就相對複雜些,得匯入調用兩個API,用ARP協議擷取,但這樣只能擷取到同網段機器的MAC,對於跨網段的得利用IP掃描或cmd中nbtstat命令擷取MAC地址。也可通過讀取系統註冊表值或WMI的資料庫來擷取。各位如有簡易可行的好辦法請留言告訴我。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.