怎么在c\s形式下 通过mac地址拿到对应ip呢~
如何在c\s形式下 通过mac地址拿到对应ip呢~~
这个问题困扰我很久了,只有通过ip拿mac的方法,所以求解了
------解决方案--------------------
mac 地址跟IP有什么关系?
我没联网 我有8个网卡 我照样有mac地址..但是 我也没IP啊...
------解决方案--------------------
获取ip不需要MAC呀
------解决方案--------------------
你的程序到底是在客户机上运行,还是在其他机器上,想通过网络搜索客户机?
1.如果在客户机上执行,用2楼的办法,直接获取本机IP
2.如果在局域网上,通过DHCP协议分配IP,可以遍历一下,找到MAC对应的IP(不是知道通过IP获取MAC的方法了么)
3.如果在外网上,那是纯扯淡,别想了.
------解决方案--------------------
你的需求很奇怪..
不知道你要做什么..不如你说来听听 我感觉你应该绕弯了..
CS下 本机拿IP mac 都是没问题的..
而且你说是聊天也就是说你有一个服务器的东西 来实现2个不同网段的聊天吧.
那这个跟mac 也没什么关系啊.. 你连接了服务器之后 自动就知道IP端口了..
然后发送数据什么的 也通过IP以及端口就行了..没mac一样玩
这个问题困扰我很久了,只有通过ip拿mac的方法,所以求解了
------解决方案--------------------
mac 地址跟IP有什么关系?
我没联网 我有8个网卡 我照样有mac地址..但是 我也没IP啊...
------解决方案--------------------
获取ip不需要MAC呀
IPHostEntry ipEntry = Dns.GetHostEntry(Dns.GetHostName());//获取IP
System.Text.RegularExpressions.Regex regex = new System.Text.RegularExpressions.Regex(@"^((?:(?:25[0-5]
------解决方案--------------------
2[0-4]\d
------解决方案--------------------
((1\d{2})
------解决方案--------------------
([1-9]?\d)))\.){3}(?:25[0-5]
------解决方案--------------------
2[0-4]\d
------解决方案--------------------
((1\d{2})
------解决方案--------------------
([1-9]?\d))))$");
if (ipEntry.AddressList.Length > 0)
{
foreach(IPAddress ipadress in ipEntry.AddressList)
{
if (regex.IsMatch(ipadress.ToString()))
{
ip = ipadress.ToString();
break;
}
}
}
------解决方案--------------------
你的程序到底是在客户机上运行,还是在其他机器上,想通过网络搜索客户机?
1.如果在客户机上执行,用2楼的办法,直接获取本机IP
2.如果在局域网上,通过DHCP协议分配IP,可以遍历一下,找到MAC对应的IP(不是知道通过IP获取MAC的方法了么)
3.如果在外网上,那是纯扯淡,别想了.
------解决方案--------------------
你的需求很奇怪..
不知道你要做什么..不如你说来听听 我感觉你应该绕弯了..
CS下 本机拿IP mac 都是没问题的..
而且你说是聊天也就是说你有一个服务器的东西 来实现2个不同网段的聊天吧.
那这个跟mac 也没什么关系啊.. 你连接了服务器之后 自动就知道IP端口了..
然后发送数据什么的 也通过IP以及端口就行了..没mac一样玩