2
我要尋找一個Python的方式搶客戶端的MAC地址。所有請求都在同一網絡上。我在尋找類似的東西在路由器上進行arp -n <Client_IP>
。我怎樣才能找到一個客戶端在同一網絡上的MAC地址,使用Python瓶?
我要尋找一個Python的方式搶客戶端的MAC地址。所有請求都在同一網絡上。我在尋找類似的東西在路由器上進行arp -n <Client_IP>
。我怎樣才能找到一個客戶端在同一網絡上的MAC地址,使用Python瓶?
不知道,但你可以使用像
request.remote_addr
請求對象總是得到IP地址和你要
import request
然後你就可以通過這個IP這個功能
import netifaces as nif
def mac_for_ip(ip):
'Returns a list of MACs for interfaces that have given IP, returns None if not found'
for i in nif.interfaces():
addrs = nif.ifaddresses(i)
try:
if_mac = addrs[nif.AF_LINK][0]['addr']
if_ip = addrs[nif.AF_INET][0]['addr']
except IndexError, KeyError: #ignore ifaces that dont have MAC or IP
if_mac = if_ip = None
if if_ip == ip:
return if_mac
return None
從here。
可能是你能做到這一點,首先找到你想找到的MAC機器的IP,然後從IP發現使用這個兩個環節的MAC [找到MAC的IP(http://stackoverflow.com/questions/159137 /獲取-MAC地址)和[查找IP(http://stackoverflow.com/questions/3759981/get-ip-address-of-visitors-using-python-flask) –
我沒有太多網絡的經驗,所以我不明白我能如何結合這兩個答案。第一個鏈接提供了一種方法來查看我自己的網絡接口的mac地址,第二個鏈接提供了一種查找請求用戶ip的方法。你能解釋我怎麼能把這些結合起來? – cemclaug