[함수] [양키협찬] 맥어드레스(Mac Address) 구하기 (WIN + Linux)
컨텐츠 정보
- 33,154 조회
- 1 댓글
- 0 추천
- 목록
본문
<?
$ip=getenv("REMOTE_ADDR");
if(PHP_OS=='WINNT'){
exec("arp -a", $rgResult);
$mac_template="/[\d|A-F]{2}\-[\d|A-F]{2}\-[\d|A-F]{2}\-[\d|A-F]{2}\-[\d|A-F]{2}\-[\d|A-F]{2}/i";
foreach($rgResult as $key=>$value){
if(strpos($value, $ip)!==FALSE){
preg_match($mac_template, $value, $matches);
break;
}
}
} else{
exec("arp -a | grep $ip", $rgResult);
$mac_template="/[\d|A-F]{2}\:[\d|A-F]{2}\:[\d|A-F]{2}\:[\d|A-F]{2}\:[\d|A-F]{2}\:[\d|A-F]{2}/i";
preg_match($mac_template, $rgResult[0], $matches);
}
$mac=$matches[0];
echo "<xmp>"; print_r($mac); echo "</xmp>";
?>
양키 사이트에서 퍼온건데 출처가 기억이 안납니다. ㅡㅡ;;
올리신 양키님께 묵념...
웹호스팅 받는 사람은 안됩니다. ^^;; (서버관리자에게 샤바샤바하면...)
윈도우 + 리눅스 다 되더군요.
ps. arp 명령어는 Address Resolution Protocol의 약자로써 arp cache에 있는
IP 어드레스에 대한 HW 어드레스(대개 MAC 어드레스란 표현을 많이 사용한다)를
돌려주는 명령어이다
[출처] arp 명령어|작성자 노랑배
http://blog.naver.com/kosthb?Redirect=Log&logNo=80010224358
ps. arp를 exec()로 호출전에 PATH 뚫어주는 센스!!
$ip=getenv("REMOTE_ADDR");
if(PHP_OS=='WINNT'){
exec("arp -a", $rgResult);
$mac_template="/[\d|A-F]{2}\-[\d|A-F]{2}\-[\d|A-F]{2}\-[\d|A-F]{2}\-[\d|A-F]{2}\-[\d|A-F]{2}/i";
foreach($rgResult as $key=>$value){
if(strpos($value, $ip)!==FALSE){
preg_match($mac_template, $value, $matches);
break;
}
}
} else{
exec("arp -a | grep $ip", $rgResult);
$mac_template="/[\d|A-F]{2}\:[\d|A-F]{2}\:[\d|A-F]{2}\:[\d|A-F]{2}\:[\d|A-F]{2}\:[\d|A-F]{2}/i";
preg_match($mac_template, $rgResult[0], $matches);
}
$mac=$matches[0];
echo "<xmp>"; print_r($mac); echo "</xmp>";
?>
양키 사이트에서 퍼온건데 출처가 기억이 안납니다. ㅡㅡ;;
올리신 양키님께 묵념...
웹호스팅 받는 사람은 안됩니다. ^^;; (서버관리자에게 샤바샤바하면...)
윈도우 + 리눅스 다 되더군요.
ps. arp 명령어는 Address Resolution Protocol의 약자로써 arp cache에 있는
IP 어드레스에 대한 HW 어드레스(대개 MAC 어드레스란 표현을 많이 사용한다)를
돌려주는 명령어이다
[출처] arp 명령어|작성자 노랑배
http://blog.naver.com/kosthb?Redirect=Log&logNo=80010224358
ps. arp를 exec()로 호출전에 PATH 뚫어주는 센스!!
관련자료
-
링크
댓글 1