2010-02-05 244 views
2

有沒有辦法在C#中找到MAC地址與IP地址之間的映射。我認爲RARP應該能夠做到這一點,是否有一個在C#中可用的API在C#中相同LAN上的IP地址到MAC地址的IP地址

+0

重複問題:http://stackoverflow.com/questions/1148778/how-do-i-access-arp-protocol-information- through-c-net – mjv 2010-02-05 00:53:32

回答

2

爲什麼不產生一個進程調用rarp並從進程的輸出讀入輸入流?這是做一個真正的廉價和簡單的方式開朗......頂級的我的頭,它是這樣的:

 
System.Diagnostics.ProcessStartInfo ps = new System.Diagnostics.ProcessStartInfo("arp", "-a"); 
ps.CreateNoWindow = false; 
ps.RedirectStandardOutput = true; 
using (System.Diagnostics.Process proc = new System.Diagnostics.Process()) 
{ 
    proc.StartInfo = ps; 
    proc.Start(); 
    System.IO.StreamReader sr = proc.StandardOutput; 
    while (!proc.HasExited) ; 
    string sResults = sr.ReadToEnd(); 
} 

然後,它的解析sResults獲得MAC地址的問題。