ASP.NET獲取MAC地址與IP地址的程序淺析
ASP.NET獲取MAC地址與IP地址以DNS法較為簡(jiǎn)單實(shí)用,如下:
以下是引用片段:
- 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 = "沒(méi)有可用的連接";
- }
- }
ASP.NET獲取MAC地址與IP地址另一方法如下:
以下是引用片段:
- 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();
- }
- }
獲取客戶端本機(jī)的IP地址相當(dāng)簡(jiǎn)易,方法如下:
以下是引用片段:
- using System.Net;
- TextIP.Text=Page.Request.UserHostAddress;
如要獲取客戶端本機(jī)的MAC地址就相對(duì)復(fù)雜些,得導(dǎo)入調(diào)用兩個(gè)API,用ARP協(xié)議獲取,但這樣只能獲取到同網(wǎng)段機(jī)器的MAC,對(duì)于跨網(wǎng)段的得利用IP掃描或cmd中nBTstat命令獲取MAC地址。也可通過(guò)讀取系統(tǒng)注冊(cè)表值或WMI的數(shù)據(jù)庫(kù)來(lái)獲取。各位如有簡(jiǎn)易可行的好辦法請(qǐng)留言告訴我。
ASP.NET獲取MAC地址與IP地址的方法就向你介紹到這里,是不是對(duì)ASP.NET獲取MAC地址與IP地址有所了解了呢?
【編輯推薦】