【发布时间】:2018-04-18 17:57:30
【问题描述】:
如果我知道 6 个设备的 MAC 地址,如何修改我的代码以填充 IP 地址列表框?
我正在使用 VB.net 显示我当前的 IP 和 MAC 地址,但我想将其更改为添加到 ListBox 以显示同一网络上使用其 MAC 地址的 6 个设备。由于我们无法修改 DHCP 服务器,我们只需要一种简单的方法来使用它们已知的 Mac 地址显示每个设备的 IP 地址。我将在代码中添加 MAC 地址。但只想在应用启动时填充列表框。
现有代码:
Imports System.Net
Imports System.Runtime.InteropServices
Imports System.ComponentModel
Imports System.IO
Imports System.Net.NetworkInformation
Public Class Form1
Private Sub Form1_MouseClick(sender As Object, e As MouseEventArgs) Handles Me.MouseClick
Dim mac As String
mac = GetMacAddress()
Label1.Text = mac
End Sub
Function GetMacAddress()
Dim nics() As NetworkInterface = NetworkInterface.GetAllNetworkInterfaces()
Return nics(0).GetPhysicalAddress.ToString
End Function
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Me.Close()
End Sub
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
GetIPv4Address()
End Sub
Private Function GetIPv4Address() As String
GetIPv4Address = String.Empty
Dim strHostName As String = System.Net.Dns.GetHostName()
Dim iphe As System.Net.IPHostEntry = System.Net.Dns.GetHostEntry(strHostName)
For Each ipheal As System.Net.IPAddress In iphe.AddressList
If ipheal.AddressFamily = System.Net.Sockets.AddressFamily.InterNetwork Then
GetIPv4Address = ipheal.ToString()
Label2.Text = "IP Address: " & ipheal.ToString
End If
Next
End Function
End Class
提前致谢!
【问题讨论】:
-
MAC 地址到 IP 地址需要 ARP 操作,pietschsoft.com/post/2009/11/08/…
标签: vb.net visual-studio network-programming