PHP中获取内网用户MAC地址(WINDOWS/linux)的实现代码_php技巧
function ce_getmac()
{
if(PHP_OS == 'WINNT')
{
$return_array = array();
$temp_array = array();
$mac_addr = "";
@exec("arp -a",$return_array);
foreach($return_array as $value)
{
if(strpos($value,$_SERVER["HTTP_CLIENT_IP"]) !== false &&
preg_match("/(:?[0-9a-f]{2}[:-]){5}[0-9a-f]{2}/i",$value,$temp_array))
{
$mac_addr = $temp_array[0];
break;
}
}
return $mac_addr ? strtoupper($mac_addr) : '';
}
else if(PHP_OS == 'Linux')
{
return true;
}
}
函数已经修改过了,到LINUX上发现不能使用EXEC函数,也就是获取不到MAC地址了。经过沟通,该项目必须部署在LINUX服务器下,笔者经过苦思冥想了半天终于找到了一个解决方案,不用执行EXEC也可以获取到内网用户的MAC地址。
在内网服务器中,有一台192.168.1.151的服务器,服务器上一个API,访问这个API,就获取用户MAC,JOSN的方式输出用户账号信息,因为该服务器可以获取MAC,就可以稍加利用了。
使用CURL伪造来源IP方式(IP不是LINUX服务器的IP,是客户端访问的IP地址),CURL到151服务器,服务器得到相应,根据用户IP地址 和ARP -A 参数的正则方式就可以得到客户端的MAC地址,程序运行在151,而151是WINDOWS 2008服务器。但是要注意的是不能使用REMOTE_ADDR,必须使用HTTP_CLIENT_IP。 原因是HTTP_CLIENT_IP可以使用CURL伪造,这样就可以使用LINUX获取用户IP,然后传送给151处理。
疑问:根据用户IP获取MAC地址,那用户换一个IP了怎么办呢?使用CMD下 ARP -A分析,即使用户跟换IP,但是对应该用户的这台计算机的MAC地址默认是不会更换的。
下面是摘抄网友的关于获取IP的文章:
dz的代码判断IP那块太让人头疼了,日,REMOTE_ADDR,HTTP_CLIENT_IP,HTTP_X_FORWARDED_FOR三个东西在手册上太不详细了,基本上就等于没有。
网上gg了一下,找到一点,另外,有一个思路太巧了,用JS取IP以后POST到服务器,Y的用代理骗服务器?有种上网先把Js给关了啊!!哦哈哈,以后有机会用ajax试一下,也省得用这三个变量if得死去活来了。
$_SERVER['...']; // for php
一、没有使用代理服务器的情况:
REMOTE_ADDR = 您的 IP
HTTP_VIA = 没数值或不显示
HTTP_X_FORWARDED_FOR = 没数值或不显示
二、使用透明代理服务器的情况:Transparent Proxies
REMOTE_ADDR = 最后一个代理服务器 IP
HTTP_VIA = 代理服务器 IP
HTTP_X_FORWARDED_FOR = 您的真实 IP ,经过多个代理服务器时,这个值类似如下:203.98.182.163, 203.98.182.163, 203.129.72.215。
这类代理服务器还是将您的信息转发给您的访问对象,无法达到隐藏真实身份的目的。
三、使用普通匿名代理服务器的情况:Anonymous Proxies
REMOTE_ADDR = 最后一个代理服务器 IP
HTTP_VIA = 代理服务器 IP
HTTP_X_FORWARDED_FOR = 代理服务器 IP ,经过多个代理服务器时,这个值类似如下:203.98.182.163, 203.98.182.163, 203.129.72.215。
隐藏了您的真实IP,但是向访问对象透露了您是使用代理服务器访问他们的。
四、使用欺骗性代理服务器的情况:Distorting Proxies
REMOTE_ADDR = 代理服务器 IP
HTTP_VIA = 代理服务器 IP
HTTP_X_FORWARDED_FOR = 随机的 IP ,经过多个代理服务器时,这个值类似如下:203.98.182.163, 203.98.182.163, 203.129.72.215。
告诉了访问对象您使用了代理服务器,但编造了一个虚假的随机IP代替您的真实IP欺骗它。
五、使用高匿名代理服务器的情况:High Anonymity Proxies (Elite proxies)
REMOTE_ADDR = 代理服务器 IP
HTTP_VIA = 没数值或不显示
HTTP_X_FORWARDED_FOR = 没数值或不显示 ,经过多个代理服务器时,这个值类似如下:203.98.182.163, 203.98.182.163, 203.129.72.215。
完全用代理服务器的信息替代了您的所有信息,就象您就是完全使用那台代理服务器直接访问对象。
REMOTE_ADDR 是你的客户端跟你的服务器“握手”时候的IP。如果使用了“匿名代理”,REMOTE_ADDR将显示代理服务器的IP。
HTTP_CLIENT_IP 是代理服务器发送的HTTP头。如果是“超级匿名代理”,则返回none值。同样,REMOTE_ADDR也会被替换为这个代理服务器的IP。
$_SERVER['REMOTE_ADDR']; //访问端(有可能是用户,有可能是代理的)IP
$_SERVER['HTTP_CLIENT_IP']; //代理端的(有可能存在,可伪造)
$_SERVER['HTTP_X_FORWARDED_FOR']; //用户是在哪个IP使用的代理(有可能存在,也可以伪造)

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

熱門話題

導讀:這篇文章本站來跟大家介紹mac鍵盤輸入密碼無反應的相關內容,希望對大家有幫助,一起來看看。蘋果Mac系統無法輸入密碼如何解決還可以嘗試在其他電腦上連接這個鍵盤,看看是否正常運作。如果在另一台電腦上也出現同樣的問題,那麼很可能是鍵盤本身的故障。您可以考慮更換鍵盤或修理它。第一次用你的Mac電腦登入支付寶時,你會發現登入介面,無法輸入密碼。密碼輸入欄顯示:“請點此安裝控制項”,所以支付寶登入需要安裝安全控制。安全控件,可以對你輸入的資訊(金額、密碼等)進行加密保護,提高帳號安全。系

許多Mac用戶往往習慣保留設備的預設名稱,可能從未考慮過更改。很多人選擇沿用初始設定時的名稱,例如「張三的MacBookAir」或簡單的「iMac」。學會如何修改Mac的名稱是一項非常實用的技能,尤其是在擁有多台裝置時,可以幫助你快速區分和管理它們。接下來,我們將一步步教你如何在macOS系統中更改電腦名稱、主機名稱和Bonjour名稱(本地主機名稱)。為什麼要更改Mac名稱?修改Mac名稱不僅能彰顯個性,還能有助於提升使用體驗:個人化你的Mac:預設名稱可能不符合你的口味,換一個自己喜歡的名字

導讀:本篇文章本站來跟大家介紹mac裝程式密碼忘了的相關內容,希望對大家有幫助,一起來看看吧。蘋果電腦安裝軟體密碼忘了怎麼辦首先,在手機設定中找到iCloud並點選開啟。接著,輸入帳號和密碼。在登入按鈕下方有一行小字,提示是否忘記ID或密碼,點選這個選項。通常情況下,當您在登入介面多次輸入錯誤密碼後,MacBookPro會提示您使用已綁定的AppleID來重設密碼。您只需按照系統提示的步驟進行操作即可完成密碼重設。 3.先將Mac關機,然後重新開機,按下電源鍵的同時,立刻按住鍵盤上的com

前言:今天本站來給各位分享關於pkg檔案安裝mac的相關內容,如果能正好解決你現在面臨的問題,別忘了關注本站,現在開始吧! macos過往版本pkg無法安裝升級作業系統:如果您的筆記型電腦正在使用較舊的作業系統版本,建議升級到最新的作業系統版本。因為較舊的版本可能無法支援安裝最新的macOS系統。在磁碟工具中選擇“抹掉”,然後在格式中選擇Macos擴展,不要勾選加密選項,也不要選擇apfs格式,最後點擊“抹掉”按鈕,這樣就可以解決無法完成macOS安裝的問題。將應用程式的圖示拖曳到以App開頭的文件

導語:今天本站來給各位分享關於蘋果mac打字怎麼翻頁的相關內容,如果能正好解決你現在面臨的問題,別忘了關注本站,現在開始吧!蘋果MacBook筆記型電腦的觸控板使用技巧蘋果電腦設定雙指滑動的步驟如下:在電腦桌面上找到「設定」圖示並點擊。在設定介面中選擇“觸控板”,然後點選“捲動縮放”。在滾動縮放選項中勾選“滾動方向:自然”即可完成設定。在蘋果電腦上設定使用兩指滑動的方法很簡單。首先,打開電腦並點擊螢幕頂部的「設定」圖示。在設定介面中,選擇“觸控板”選項。然後點擊“滾動縮放”,確保勾選了“滾動方向

近日有一些小夥伴諮詢小編微信mac如何設定語音訊息自動轉成文字?下面就為大家帶來了微信mac設定語音訊息自動轉成文字的方法,有需要的小夥伴可以來了解了解哦。第一步:首先,打開Mac版微信。如圖:第二步:接著,點選『設定』。如圖:第三步:然後,點選『通用』。如圖:第四步:再勾選『聊天中的語音訊息自動轉成文字』選項即可。如圖:第五步:最後,關閉視窗即可。如圖:

導語:本文本站來為大家介紹mac對檔案剪下到硬碟的相關內容,希望對大家有幫助,一起來看看吧。 Mac電腦如何將照片匯出到行動硬碟Mac電腦可以利用「訪問」(Finder)或「照片」(Photos)應用程式將照片匯出到行動硬碟。使用「訪問」(Finder)匯出照片時,首先要確保行動硬碟已連接到Mac,並且Mac已成功識別。將Mac中的照片轉移到硬碟的步驟很簡單:首先,連接行動硬碟到電腦,然後開啟【啟動台】圖示。接著,在彈出的視窗中找到並點選【照片】圖示。在開啟的【照片】視窗中,按住【Shift】鍵

前言:本文本站來為大家介紹mac黑蘋果引導方式的相關內容,希望對大家有幫助,一起來看看。黑蘋果OC引導快速配置教學1、loverconfigurator軟體介面後,點選「開機參數」設置,預設開機磁碟區名稱設定為安裝黑蘋果系統時抹掉的磁碟名稱,_卻奔涓奈? 0,再點選右下角儲存,重新啟動電腦,_突岱⑾植換嵩儷魷魘_lover引導介面,而是直接進入蘋果logo開機介面。安全啟動可以有效防止未經簽署的Bootloader從任何內部磁碟或USB磁碟機啟動。然而,Clover或OC引導並不支援安全啟動功能。要啟
