Rumah >pembangunan bahagian belakang >tutorial php >Bagaimanakah Saya Boleh Mendapatkan Alamat MAC dan IP Pelanggan dalam PHP?
Memahami identiti pelanggan yang disambungkan selalunya penting untuk tujuan pentadbiran dan pemantauan rangkaian. PHP menyediakan kaedah untuk mendapatkan kedua-dua alamat MAC dan IP pelanggan ini.
Mendapatkan semula alamat IP pelayan adalah mudah menggunakan $_SERVER['SERVER_ADDR']. Untuk alamat MAC, seseorang boleh menghuraikan output perintah sistem seperti netstat -iaitu dalam Linux atau ipconfig /all dalam Windows.
Alamat IP pelanggan boleh diakses dengan mudah melalui $ _SERVER['REMOTE_ADDR'].
Malangnya, memperoleh alamat MAC pelanggan biasanya tidak boleh dilakukan, melainkan:
Dalam kes sedemikian, menghuraikan output arp - n (Linux) atau arp -a (Windows) menghasilkan alamat MAC.
Satu kaedah untuk menghuraikan output arahan adalah melalui penggunaan backticks:
$ipAddress = $_SERVER['REMOTE_ADDR']; $macAddr = false; # Execute external command and break output into lines $arp = `arp -a $ipAddress`; $lines = explode("\n", $arp); # Search for output line describing the IP address foreach ($lines as $line) { $cols = preg_split('/\s+/', trim($line)); if ($cols[0] == $ipAddress) { $macAddr = $cols[1]; } }
Jika pelanggan tidak berada pada LAN yang sama, mendapatkan semula alamat MAC secara amnya tidak boleh dilaksanakan melalui kaedah standard. Pelanggan mungkin perlu memberikan maklumat ini secara sukarela.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mendapatkan Alamat MAC dan IP Pelanggan dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!