web-dev-qa-db-ja.com

/ etc / network / interfaces内で永続的にMacアドレスを変更します

質問:

/etc/network/interfacesファイルを介してenp3sおよびwlp2sインターフェイスのMacアドレスを具体的に変更するにはどうすればよいですか?内部にはどのコードを含める必要がありますか?残念ながら十分な成功を収めることはできませんでした。


ELABORATING:

そのため、Ubuntuの/etc/network/interfacesファイルを使用してMacアドレスを永続的に変更する方法を説明するこの素晴らしい記事をオンラインで見つけました。

記事では、次のように述べています。

Debian、Ubuntu、および同様のシステムでは、ネットワークデバイスの起動時にMACアドレスが設定されるように、/ etc/network/interfacesの適切なセクション(ゲートウェイ行の直後などのifaceスタンザ内)に以下を配置します:

hwaddress ether 02:01:02:03:04:08

出典: MACアドレスの変更/ Linux -WikiBooks

次のコードを使用すると:

cat /etc/network/interfaces

次の出力が得られます

# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback

また、ubuntuでifconfigを実行すると、3つの異なるインターフェイスが返されます。

  • enp3s0

  • lo

  • wlp2s0

すべてのインターフェイス(enp3s0、wlp2s0)のMACアドレスを変更したい(loはループバックなので、必要はありません)が、/etc/network/interfacesファイルのコマンドに不慣れです。私はオンラインでチュートリアルを見てきましたが、物事がうまくいかないようです。その後、私のコンピューターは非常に奇妙に動作し始めました。

3
Webeng

まず、リンクしたガイド。それはいいガイドです。悲しいことに、さまざまな種類の接続で頭痛の種になります。通常、/etc/network/interfacesは、ネットワークマネージャーが接続を管理するためのループバックインターフェイスを除き、そのまま残されます。


これにはいくつかの理由があります。主に、/etc/network/interfacesを介して無線を設定すると、設定を編集して手動でreload場合によっては、再起動するまで読み込まれません)。また、接続データをwpa2-supplicant-ワイヤレスネットワーク名、パスワード(プレーンテキスト)、場合によってはwifiバンドやチャンネル番号にハードコードする必要があるという点でも非常に苦痛です。別のネットワークに切り替えるには変更する必要があるため、これらはすべて苦痛です。

/etc/network/interfacesを使用すると、Network Managerが接続を処理できなくなることを述べました。 Network Managerが機能する方法は、/etc/network/interfacesで定義されていないネットワークデバイスであるデバイスの「所有権」を取得し、それぞれの構成をオンザフライで、または過去に作成された古い接続の定義済み接続プロファイルで更新することです。 /etc/network/interfacesルートに行くことにした場合は、インターネットへの接続方法を調整する必要があります。この方法で、wifi接続について説明します。より便利なリンク。


イーサネットはそれほど悪くありません。イーサネットは、実際にはこれでかなりうまく機能します。なぜなら、DHCPで接続された接続(静的な構成ではなく、動的に割り当てられたIPアドレス。イーサネットを実際のデバイスの代わりにここで使用することに注意してください)より理解しやすい):

auto eth0
iface eth0 inet dhcp
    hwaddress ether 01:23:45:67:89:0A

唯一の頭痛の種は、DHCPで処理されたものではなく、静的IPアドレスを持っている場合です。しかし、それはまだ非常に簡単です。


しかし、ワイヤレスでは、それほどきれいではありません。これは、通常はiwlist/etc/network/interfacesの構成、wpa2_supplicantの高度な構成などを含む複雑な手順です。標準の住宅用共有パスワードネットワークでは、完了すると最終的には次のようになりますが、それは1つのワイヤレスネットワークでのみ機能します。

auto wlan0
iface wlan0 inet dhcp
    hwaddress ether 00:11:22:33:44:55
    wpa-ssid WIFI_NAME
    wpa-psk HASHED_PASSWORD

ネットワークを切り替えるか、認証バックエンド(WPA2-EAPまたはWPA2 802.1xエンタープライズ、または他の名前と呼ばれる)でエンタープライズグレードの接続を使用する必要がある場合は、さらに複雑になりますが、ここでは詳しく説明しません。

また、ハッシュされたパスワードを取得する方法の手順をコピーしなかったことにも注意してください。それは私の悪いことです、私は仕事に取り掛かるのに時間がかかりますが、これはすべて次の段落にリンクされているwikiにあります(Debianからですが、うまくいきます)。

Debian Wiki on Wifiおよびコマンドラインでの使用方法 は、このセクションのワイヤレスセクションに関する情報のほとんどがここから来た場所であり、2つのRaspberry Piデバイスで個人的にこれを手動で設定する必要があったためです彼らは頭がありません、私はこれがワイヤレスをセットアップするための最も苦痛なアプローチであることを証明できます。


2番目の要素があります:ネットワークデバイスのMACアドレスは、デバイスにハードコーディングされています。デバイスのMACアドレスを「永久に」変更することはできません。 /etc/network/interfaces、MAC Changer、およびNetwork Manager(「クローンMACアドレス」機能を介して)が行うことは、一時的にアドバタイズされたイーサネットアドレスを変更しますが、コアハードウェアアドレスを変更します。 Network Managerで機能させることができますが、使用する各wifiネットワークに対して手動で設定する必要があります。 MACチェンジャー、同様の状況、起動時に実行する必要があります。 /etc/network/interfacesはブート時にこれを行いますが、デバイスのNetwork Manager管理を失います。

4
Thomas Ward

NetworkManagerを使用して接続を構成しないと仮定すると、これは機能すると思います。

# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
  iface lo inet loopback

iface enp3s0
  hwaddress ether 02:01:02:03:04:08

iface wlp2s0
  hwaddress ether 02:01:02:03:04:09
3
Jos