티스토리 뷰

반응형

https://bundw.tistory.com/entry/Nodejs-%EB%A7%A5%EC%96%B4%EB%93%9C%EB%A0%88%EC%8A%A4MacAddress-%EC%96%BB%EA%B8%B0

 

Node.js 맥어드레스(MacAddress) 얻기

Node.js에서 MacAddress 조회 및 비교하는 방법을 알아보겠습니다. const macAddr = require('os').networkInterfaces() 참조를 추가합니다. foreach로 맥어드레스를 출력해봅니다. Object.keys(macAddr).forEach(..

bundw.tistory.com

다른 이전글에서는 맥어드레스를 얻기는 하지만 윈도우에서 IP주소가 할당된(연결이 된) 인터페이스만 얻기가 가능했습니다.

 

이 글에서는 윈도우 기본 프로그램인 wmic를 사용해서 연결되지 않은 네트워크 인터페이스를 간단히 얻는 방법을 알아보겠습니다.

 

특별히 따로 설정해야 하는 부분은 없지만 만약 명령프롬프트에서 wmic.exe를 실행할 수 없다면 환경변수(PATH)에 등록을 해야 합니다. (기본위치는 C:\Windows\System32\wbem\WMIC.exe)

 

윈도우10에서 테스트되었습니다.

 

const childProcess = require('child_process')

참조를 추가합니다.

 

const macAddr = childProcess.execSync('wmic nic get MACAddress').toString().trim().replace(/\s{2,}/g, '\n').split('\n').slice(1)

macAddr에 array로 맥어드레스가 저장됩니다.

 

let macCheck = '04:42:1A:86:FE:A8'
let macValid = macCheck.length === 0
  macAddr.forEach((v) => {
  if (macCheck.length > 0 && v.toUpperCase() === macCheck.toUpperCase()) {
    macValid = true
  }
})

비교하고자 하는 맥어드레스를 위처럼 비교할 수 있습니다.

반응형

'SW개발 > Node.js' 카테고리의 다른 글

Ubuntu(우분투) 22.04LTS에서 npm 설치  (0) 2022.07.25
Node.js 맥어드레스(MacAddress) 얻기  (0) 2021.10.18