LinuxでMACアドレスを復元する方法


11

LinuxマシンのMACアドレスをを使用して変更しましたifconfig。ここで問題は、元のMACアドレスを保存していないことです。再起動せずに復元したい。

それを行う方法はありますか?


再起動しない理由はありますか?
new123456

半ダースのアプリケーションを実行しています。それらを閉じたくない。
ナラヤンパトラ

1
これを実行しますか?:sudo ifdown interface && sudo ifup interfaceまたは多分:sudo /etc/init.d/networking restart
evan.bovie '16 / 06/15

@emb:機能しませんでした。
ナラヤンパトラ2011年

回答:


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>

最初の方法を詳しく説明できますか。2つ目は機能しませんでした。
ナラヤンパトラ

これ<NICmodule>は、NICが使用しているカーネルモジュールです。例:e1000 このガイドを使用すると持っているものを確認できます。
evan.bovie

ネットワークカードが使用しているモジュールを知っていますか?これにより、モジュールが削除されて元に戻されます(適切なMACを使用してください)
sealz

@narayanpatra インターフェイスをインターネットへのアクセスに使用するものに置き換えましたか?ほとんどの場合、それはeth0
paradd0x

@thiago:うん、やったよ。
ナラヤンパトラ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.