تعتبر طريقة DNS بسيطة وعملية نسبياً للحصول على عنوان IP الخاص بالخادم، وهي كالتالي:
وفيما يلي اقتباس:
باطلة خاصة ButtonIP_Click (مرسل الكائن، System.EventArgs e)
{ System.Net.IPAddress[] عنوانList = Dns.GetHostByName(Dns.GetHostName()).AddressList;
إذا (addressList.Length>1)
{ TextLIP.Text = AddressList[0].ToString();
TextSIP.Text = AddressList[1].ToString();
}
آخر
{
TextLIP.Text = AddressList[0].ToString();
TextSIP.Text = "لا يوجد اتصال متاح"؛
}
}
هناك طريقة أخرى للحصول على عنوان IP الخاص بالخادم وعنوان MAC وهي كما يلي:
فيما يلي عرض أسعار:
باستخدام System.Management؛
سلسلة stringMAC = "";
سلسلة stringIP = "";
ManagementClass MC = new ManagementClass "Win32_NetworkAdapterConfiguration");
ManagementObjectCollection MOC= MC.GetInstances();
foreach (ManagementObject MO في MOC)
{
إذا ((bool)MO["IPEnabled"] == صحيح)
{
stringMAC += MO["MACAddress"].ToString();
TextMAC.Text = stringMAC.ToString();
string[] IPAddresses = (string[]) MO["IPAddress"];
إذا (IPAddresses.Length > 0)
stringIP = IPAddresses[0];
TextIP.Text = stringIP.ToString();
}
}
يعد الحصول على عنوان IP الخاص بالجهاز المحلي للعميل أمرًا بسيطًا للغاية، والطريقة هي كما يلي:
ما يلي هو جزء مقتبس:
باستخدام System.Net؛
TextIP.Text=Page.Request.UserHostAddress;
إذا كنت ترغب في الحصول على عنوان MAC الخاص بالجهاز المحلي للعميل، فهذا أمر معقد نسبيًا، فيجب عليك استيراد واجهتي برمجة التطبيقات (API) واستدعاءهما والحصول عليهما باستخدام بروتوكول ARP، ومع ذلك، لا يمكن الحصول إلا على عنوان MAC الخاص بالجهاز نفسه بالنسبة لقطاعات الشبكة، تحتاج إلى استخدام فحص IP أو استخدام الأمر nbtstat في cmd للحصول على عنوان MAC. ويمكن الحصول عليه أيضًا من خلال قراءة قيمة تسجيل النظام أو قاعدة بيانات WMI. إذا كان لديك أي طرق بسيطة وممكنة، يرجى ترك رسالة واسمحوا لي أن أعرف.