리눅스에서 MAC 주소를 복원하는 방법?


11

를 사용하여 Linux 컴퓨터에서 MAC 주소를 변경했습니다 ifconfig. 이제 문제는 원래 MAC 주소를 저장하지 않았다는 것입니다. 재부팅하지 않고 복원하고 싶습니다.

그것을 할 수있는 방법이 있습니까?


재부팅 할 이유가 없습니까?
new123456

십여 개의 응용 프로그램 실행 닫고 싶지 않습니다.
narayanpatra

1
이것을 실행 sudo ifdown interface && sudo ifup interfacesudo /etc/init.d/networking restart
하겠습니까

@emb : 작동하지 않았습니다.
narayanpatra

답변:


8

다음을 사용하여 공급 업체 지정 하드웨어 MAC 주소를 얻을 수 있습니다 ethtool.

ethtool -P eth0

MAC 주소를이 값으로 재설정하려면 다음과 같이하십시오.

sudo ifconfig eth0 hw ether $(ethtool -P eth0 | awk '{print $3}')

1

eth1 가정 :

grep "eth1" /var/log/*log | egrep "([0-9a-fA-F]{2}:){5}"

내 시스템의 로그 {daemon, kern, syslog} .log에서 무언가를 찾을 수 있습니다.


1

[뿌리] wlan0 가정

... (드라이버 찾기)
airmon-ng | awk '/wlan0/ {print $4}'... 또는

airmon-ng | awk '/wlan0/ {print $3}' ... 또는 그냥

airmon-ng .. 그리고 '드라이버'아래를보십시오

... (드라이버 재시작)
ifconfig wlan0 down

modprobe -r rt2800usb <= 드라이버로 (rt2800usb) 교체

modprobe rt2800usb <= 드라이버로 (rt2800usb) 교체

ifconfig wlan0 up

이것이 내가하는 방법입니다. 나는 이것을 위해 스크립트를 만들고 두 개의 프로그램과 함께 사용했다. 그것이 당신이 취하는 경로라면, 인터페이스를 다시 불러 오기 전에 'time.sleep (3)'{또는 무엇이든 슬립 명령}을 입력하십시오.


0

모듈을 제거했다가 다시 설치해보십시오.

sudo rmmod <NICmodule>
sudo insmod <NICmodule> 

아니면 인터페이스를 떨어 뜨렸다가 다시 불러올 수 있습니까?

sudo ifdown <interface> && sudo ifup <interface>

첫 번째 방법을 정교하게 할 수 있습니까? 두 번째는 작동하지 않았습니다.
narayanpatra

<NICmodule>이제까지 NIC가 사용하는 모듈 커널 무엇을 할 것이다. 예를 들어 e1000 이 안내서 를 가지고있는 것을 볼 수 있습니다 .
evan.bovie 2016 년

네트워크 카드가 어떤 모듈을 사용하는지 알고 있습니까? 모듈을 제거한 다음 다시 넣으십시오 (적절한 MAC을 사용하는 것이
좋습니다

@narayanpatra 인터넷에 접속할 때 사용 하던 인터페이스인터페이스 를 교체하셨습니까 ? 대부분의 경우eth0
paradd0x

@thiago : 그래, 그랬어.
narayanpatra
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.