ホームページ >バックエンド開発 >PHPチュートリアル >PHP でクライアントの IP アドレスと MAC アドレスを取得するにはどうすればよいですか?

PHP でクライアントの IP アドレスと MAC アドレスを取得するにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-12-28 16:31:09789ブラウズ

How Can I Retrieve Client IP and MAC Addresses in PHP?

PHP: クライアント MAC アドレスと IP アドレスの取得

サーバー情報の取得

サーバーの IP アドレスは $ から取得できます。 _SERVER['SERVER_ADDR']。 MAC アドレスを取得するには、netstat -ie (Linux) または ipconfig /all (Windows) の出力を解析します。

クライアント データの取得

クライアントの IP アドレスは次のとおりです。 $_SERVER['REMOTE_ADDR'] ですぐに利用できます。ただし、MAC アドレスへのアクセスには課題があります。

クライアント MAC アドレス (LAN のみ)

クライアントとサーバーが同じイーサネット セグメント上に存在する場合は、次のことを確認できます。 arp -n (Linux) または arp -a の出力を解析することによるクライアントの MAC アドレス(Windows)。

<?php
$ipAddress = $_SERVER['REMOTE_ADDR'];
$macAddr = false;

$arp = `arp -a $ipAddress`;
$lines = explode("\n", $arp);

foreach ($lines as $line) {
    $cols = preg_split('/\s+/', trim($line));
    if ($cols[0] == $ipAddress) {
        $macAddr = $cols[1];
    }
}
?>

LAN がありませんか? MAC アドレスへのアクセスがありません

残念ながら、クライアントが他の手段で明示的に情報を提供しない限り、ローカル ネットワークの外側にあるクライアントの MAC アドレスを取得することはできません。

以上がPHP でクライアントの IP アドレスと MAC アドレスを取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。