iT邦幫忙

0

php 可否偵測裝置的mac address

因為找不到有關PHP支援偵測網卡 MAC-ADDRESS
所以有神人能幫我解決一下嗎??

主要用在使用者登入系統,僅限允許的網卡才可登入
使用場合在遠端與近端都要能使用

leo52668 iT邦新手 5 級 ‧ 2016-12-23 09:42:56 檢舉
MAC Address是TCP Layer 2的通訊協定之一,主要作用是用於LAN的通訊,因此是不會帶出LAN,如果你要透過Internet得知Client端的MAC address就需要在Client端執行程式,讓它回傳到Server給你做驗證才行。
2
蟹老闆
iT邦大師 1 級 ‧ 2016-12-22 00:34:21

我用搜尋 PHP Get MAC找到

<?php
$mac = system('arp -an');
echo $mac;
?>
<?php
echo exec('getmac');
?>

資料來源:這裡

看更多先前的回應...收起先前的回應...
lichang iT邦新手 5 級 ‧ 2016-12-22 01:00:03 檢舉

謝謝這麼快的回覆,請問這使用在其他行動裝置也可以用嗎????(例如:手機或平板)
為什麼我的出現是很多看不懂的字
我的語法

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>無標題文件</title>
</head>

<body>
<?php
  $mac=system('arp -an');
	echo $mac;
?>
<?php
	echo exec('getmac');
?>	
</body>
</html>

結果:
���ܩM�ק����}�ѪR�q�T���w (ARP) �ϥΪ� IP �� ���ڦ��}��Ķ�����C ARP -s inet_addr eth_addr [if_addr] ARP -d inet_addr [if_addr] ARP -a [inet_addr] [-N if_addr] [-v] -a ���ߥثe���q�T���w���ƨ����ܥثe�� ARP ���ءC�p�G���w inet_addr�A�u�|���ܫ��w�q���� IP �ι������}�C�p�G���h�Ӻ��������ϥ� ARP�A�K�|���ܨC�� ARP ���檺���ءC -g �P -a �ۦP�C -v �H�ԲӸ��T�Ҧ����ܥثe�� ARP ���ءC�N�|���� �Ҧ��L�Ķ��ةM�^�������W�����ءC inet_addr ���w���ں������}�C -N if_addr ���� if_addr ���w������������ ARP ���ءC -d �R�� inet_addr ���w���D���C�ϥθU�Φr�� * ���N inet_addr �i�R���Ҧ��D���C -s �s�W�D���ñN���ں������} inet_addr �P�������} eth_addr �����p�C�������}�O 6 �ӥH�s�r�����j���Q���i���줸�աC�Ӷ��� �ä[���ܡC eth_addr ���w�������}�C if_addr �p�G�s�b�A�o�|���w���������ں������}�A ���ק惡���������}��Ķ�����C �p�G���s�b�A�N�|�ϥβĤ@�ӾA�Ϊ������C �d��: > arp -s

蟹老闆 iT邦大師 1 級 ‧ 2016-12-22 02:58:54 檢舉

行不行我不知道,可以知道的是那二個指令分別屬於windows及linux平台,所以...

報告老闆
我看他是想抓Client的Mac Address用來限制登入
不是抓Server的Mac Address
/images/emoticon/emoticon06.gif

蟹老闆 iT邦大師 1 級 ‧ 2016-12-22 16:00:08 檢舉

我看他是想抓Client的Mac Address用來限制登入

對厚,果然不能在高人面前耍刀,想說閒閒的google一下就.....
這個應該由你們來回答比較好/images/emoticon/emoticon25.gif/images/emoticon/emoticon25.gif/images/emoticon/emoticon25.gif

fillano iT邦超人 1 級 ‧ 2016-12-22 17:28:05 檢舉

即使要抓server的mac,一些指令不一定有權限用php直接下...之前有寫過php extension可以做這件事...相關的system call並不需要特別權限,只是windows/linux/bsd寫法不同。

不記得多少年前了
就曾經被要求要「抓Browser端的IP」來做身分識別(unique id)
後來改成「抓Browser端的MAC address」
兩者皆不可行
現在我已改邪歸正,開發手機app
結果還是被要求要「取得手機的unique ID」來做身分識別
對於這類的規格需求,我想說

2
facelessman
iT邦新手 5 級 ‧ 2016-12-22 22:05:17

用以下的方法可以讓你得到Lan端的使用者MAC地址
--> http://stackoverflow.com/a/1420402
但假如使用者不在同一內網內,就無法使用PHP取得它的MAC地址!

0
v60i
iT邦新手 4 級 ‧ 2018-05-02 15:09:36

請問大大們 再用這些抓MAC 時所出現的文字是亂碼嗎?

為什麼我都出現這些訊息?
��ܩM�ק��}�ѪR�q�T��w (ARP) �ϥΪ� IP �� ��ڦ�}��Ķ����C ARP -s inet_addr eth_addr [if_addr] ARP -d inet_addr [if_addr] ARP -a [inet_addr] [-N if_addr] [-v] -a ��ߥثe���q�T��w��ƨ���ܥثe�� ARP ���ءC�p�G���w inet_addr�A�u�|��ܫ��w�q���� IP �ι����}�C�p�G���h�Ӻ��������..........

我要發表回答

立即登入回答