就叫这个名 發表於 2023-9-19 00:00:00

详解Linux系统中网卡MAC地址克隆方法

<p>
        <strong>怎么临时性地改变 MAC 地址?</strong></p>
<p>
        你可以在 Linux 运行的时候改变 MAC 地址。需要注意的是当 MAC 地址转换的那一会时间,你的网络会掉线。当电脑重启时 MAC 地址又会变回原来的。下面介绍几种方法来改变你的 MAC 地址。</p>
<p>
        <strong>方法一:iproute2</strong></p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_570649">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                        <div class="line number2 index1 alt1">
                                                                2</div>
                                                        <div class="line number3 index2 alt2">
                                                                3</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash plain">$</code><code class="bash functions">sudo</code> <code class="bash plain">ip link </code><code class="bash functions">set</code> <code class="bash plain">dev eth0 down</code>
</div>
                                                                <div class="line number2 index1 alt1">
                                                                        <code class="bash plain">$</code><code class="bash functions">sudo</code> <code class="bash plain">ip link </code><code class="bash functions">set</code> <code class="bash plain">dev eth0 address 00:00:00:00:00:01</code>
</div>
                                                                <div class="line number3 index2 alt2">
                                                                        <code class="bash plain">$</code><code class="bash functions">sudo</code> <code class="bash plain">ip link </code><code class="bash functions">set</code> <code class="bash plain">dev eth0 up</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
        <div class="codetool" id="codetool">
                <div class="code_n">
                        <textarea></textarea>
</div>
        </div>
</div>
<p>
        <strong>方法二:macchanger</strong></p>
<p>
        macchanger 这个命令可以让你把 MAC 地址改成不同生产厂商的序列号。</p>
<p>
        在 Debian,Ubuntu 或 Linux Mint 下安装 macchanger:</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_64977">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash plain">$</code><code class="bash functions">sudo</code> <code class="bash plain">apt-get </code><code class="bash functions">install</code> <code class="bash plain">macchanger</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
        <div class="codetool" id="codetool">
                <div class="code_n">
                        <textarea></textarea>
</div>
        </div>
</div>
<p>
        在 Fedora 下安装 macchanger:</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_838295">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash plain">$ </code><code class="bash functions">sudo</code> <code class="bash plain">yum </code><code class="bash functions">install</code> <code class="bash plain">macchanger</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
        <div class="codetool" id="codetool">
                <div class="code_n">
                        <textarea></textarea>
</div>
        </div>
</div>
<p>
        在 CentOS 或 RHEL 下安装 macchanger:</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_607889">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                        <div class="line number2 index1 alt1">
                                                                2</div>
                                                        <div class="line number3 index2 alt2">
                                                                3</div>
                                                        <div class="line number4 index3 alt1">
                                                                4</div>
                                                        <div class="line number5 index4 alt2">
                                                                5</div>
                                                        <div class="line number6 index5 alt1">
                                                                6</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash plain">$ wget http:</code><code class="bash plain">//ftp</code><code class="bash plain">.club.cc.cmu.edu</code><code class="bash plain">/pub/gnu/macchanger/macchanger-1</code><code class="bash plain">.6.0.</code><code class="bash functions">tar</code><code class="bash plain">.gz </code>
</div>
                                                                <div class="line number2 index1 alt1">
                                                                        <code class="bash plain">$ </code><code class="bash functions">tar</code> <code class="bash plain">xvfvz macchanger-1.6.0.</code><code class="bash functions">tar</code><code class="bash plain">.gz</code>
</div>
                                                                <div class="line number3 index2 alt2">
                                                                        <code class="bash plain">$ </code><code class="bash functions">cd</code> <code class="bash plain">macchanger-1.6.0</code>
</div>
                                                                <div class="line number4 index3 alt1">
                                                                        <code class="bash plain">$ .</code><code class="bash plain">/configure</code>
</div>
                                                                <div class="line number5 index4 alt2">
                                                                        <code class="bash plain">$ </code><code class="bash functions">make</code>
</div>
                                                                <div class="line number6 index5 alt1">
                                                                        <code class="bash plain">$ </code><code class="bash functions">sudo</code> <code class="bash functions">make</code> <code class="bash functions">install</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
        <div class="codetool" id="codetool">
                <div class="code_n">
                        <textarea></textarea>
</div>
        </div>
</div>
<p>
        下面给出一些 macchanger 的高级使用例子。使用 macchanger 你不必再手动禁用、启用你的网卡。</p>
<p>
        仅仅改变 MAC 地址:</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_647806">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash plain">$ </code><code class="bash functions">sudo</code> <code class="bash plain">macchanger --mac=00:00:00:00:00:01 eth0</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
        <div class="codetool" id="codetool">
                <div class="code_n">
                        <textarea></textarea>
</div>
        </div>
</div>
<p>
        在保证 OUI 一致的情况下为 MAC 设置一个随机地址:</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_299515">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash plain">$ </code><code class="bash functions">sudo</code> <code class="bash plain">macchanger -e eth0</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
        <div class="codetool" id="codetool">
                <div class="code_n">
                        <textarea></textarea>
</div>
        </div>
</div>
<p>
        为 MAC 设置一个完全随机的地址:</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_295457">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash plain">$ </code><code class="bash functions">sudo</code> <code class="bash plain">macchanger -r eth0</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
        <div class="codetool" id="codetool">
                <div class="code_n">
                        <textarea></textarea>
</div>
        </div>
</div>
<p>
        获取所有网卡的 MAC 地址,然后只列出指定的厂商(比如 Juniper):</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_174857">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash plain">$ macchanger -l | </code><code class="bash functions">grep</code> <code class="bash plain">-i juniper</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
        <div class="codetool" id="codetool">
                <div class="code_n">
                        <textarea></textarea>
</div>
        </div>
</div>
<p>
        Linux :MAC 地址克隆方法 显示一块网卡原来的 MAC 地址和伪装的 MAC 地址:</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_746827">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                        <div class="line number2 index1 alt1">
                                                                2</div>
                                                        <div class="line number3 index2 alt2">
                                                                3</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash plain">$ macchanger -s eth0</code>
</div>
                                                                <div class="line number2 index1 alt1">
                                                                        <code class="bash plain">Current MAC: 56:95:ac:ee:6e:77 (unknown)</code>
</div>
                                                                <div class="line number3 index2 alt2">
                                                                        <code class="bash plain">Permanent MAC: 00:0c:29:97:68:02 (Vmware, Inc.)</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
        <div class="codetool" id="codetool">
                <div class="code_n">
                        <textarea></textarea>
</div>
        </div>
</div>
<p>
        <strong>如何永久性地改变 MAC 地址?</strong></p>
<p>
        如果你想在系统重启后还保持伪装 MAC 地址,你需要编辑配置文件。比如你想改变 eth0 的 MAC 地址,按以下方法搞起:</p>
<p>
        在 Fedora,CentOS 或 RHEL 下:</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_147528">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                        <div class="line number2 index1 alt1">
                                                                2</div>
                                                        <div class="line number3 index2 alt2">
                                                                3</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash plain">$ </code><code class="bash functions">sudo</code> <code class="bash functions">vi</code> <code class="bash plain">/etc/sysconfig/network-scripts/ifcfg-eth0</code>
</div>
                                                                <div class="line number2 index1 alt1">
                                                                        <code class="bash plain">DEVICE=eth0</code>
</div>
                                                                <div class="line number3 index2 alt2">
                                                                        <code class="bash plain">MACADDR=00:00:00:00:00:0</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
        <div class="codetool" id="codetool">
                <div class="code_n">
                        <textarea></textarea>
</div>
        </div>
</div>
<p>
        或者你可以建一个开机启动的脚本放在 /etc/NetworkManager/dispatcher.d 目录下,前提是你使用 Network Manager 管理你的网络。这里假设你已经装了 macchanger,脚本内容如下:</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_118354">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                        <div class="line number2 index1 alt1">
                                                                2</div>
                                                        <div class="line number3 index2 alt2">
                                                                3</div>
                                                        <div class="line number4 index3 alt1">
                                                                4</div>
                                                        <div class="line number5 index4 alt2">
                                                                5</div>
                                                        <div class="line number6 index5 alt1">
                                                                6</div>
                                                        <div class="line number7 index6 alt2">
                                                                7</div>
                                                        <div class="line number8 index7 alt1">
                                                                8</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash plain">$ </code><code class="bash functions">sudo</code> <code class="bash functions">vi</code> <code class="bash plain">/etc/NetworkManager/dispatcher</code><code class="bash plain">.d</code><code class="bash plain">/000-changemac</code>
</div>
                                                                <div class="line number2 index1 alt1">
                                                                        <code class="bash preprocessor bold">#!/bin/bash</code>
</div>
                                                                <div class="line number3 index2 alt2">
                                                                        <code class="bash keyword">case</code> <code class="bash string">"$2"</code> <code class="bash keyword">in</code>
</div>
                                                                <div class="line number4 index3 alt1">
                                                                        <code class="bash plain">up)</code>
</div>
                                                                <div class="line number5 index4 alt2">
                                                                        <code class="bash plain">macchanger --mac=00:00:00:00:00:01 </code><code class="bash string">"$1"</code>
</div>
                                                                <div class="line number6 index5 alt1">
                                                                        <code class="bash plain">;;</code>
</div>
                                                                <div class="line number7 index6 alt2">
                                                                        <code class="bash plain">esac</code>
</div>
                                                                <div class="line number8 index7 alt1">
                                                                        <code class="bash plain">$ </code><code class="bash functions">sudo</code> <code class="bash functions">chmod</code> <code class="bash plain">755 </code><code class="bash plain">/etc/NetworkManager/dispatcher</code><code class="bash plain">.d</code><code class="bash plain">/000-changemac</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
        <div class="codetool" id="codetool">
                <div class="code_n">
                        <textarea></textarea>
</div>
        </div>
</div>
<p>
        在 Debian,Ubuntu 或 Linux Mint 下:</p>
<p>
        新建一个开机启动脚本,放在 /etc/network/if-up.d/ 目录下:</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_399597">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                        <div class="line number2 index1 alt1">
                                                                2</div>
                                                        <div class="line number3 index2 alt2">
                                                                3</div>
                                                        <div class="line number4 index3 alt1">
                                                                4</div>
                                                        <div class="line number5 index4 alt2">
                                                                5</div>
                                                        <div class="line number6 index5 alt1">
                                                                6</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash plain">$ </code><code class="bash functions">sudo</code> <code class="bash functions">vi</code> <code class="bash plain">/etc/network/if-up</code><code class="bash plain">.d</code><code class="bash plain">/changemac</code>
</div>
                                                                <div class="line number2 index1 alt1">
                                                                        <code class="bash preprocessor bold">#!/bin/sh</code>
</div>
                                                                <div class="line number3 index2 alt2">
                                                                        <code class="bash keyword">if</code> <code class="bash plain">[ </code><code class="bash string">"$IFACE"</code> <code class="bash plain">= eth0 ]; </code><code class="bash keyword">then</code>
</div>
                                                                <div class="line number4 index3 alt1">
                                                                        <code class="bash spaces"> </code><code class="bash plain">ip link </code><code class="bash functions">set</code> <code class="bash plain">dev </code><code class="bash string">"$IFACE"</code> <code class="bash plain">address 00:00:00:00:00:01</code>
</div>
                                                                <div class="line number5 index4 alt2">
                                                                        <code class="bash keyword">fi</code>
</div>
                                                                <div class="line number6 index5 alt1">
                                                                        <code class="bash plain">$ </code><code class="bash functions">sudo</code> <code class="bash functions">chmod</code> <code class="bash plain">755 </code><code class="bash plain">/etc/network/if-up</code><code class="bash plain">.d</code><code class="bash plain">/changemac</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
        <div class="codetool" id="codetool">
                <div class="code_n">
                        <textarea></textarea>
</div>
        </div>
</div>
<p>
        以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。</p>
<p>
        原文链接:https://www.lvtao.net/linux/linux-mac-address.html</p>
頁: [1]
查看完整版本: 详解Linux系统中网卡MAC地址克隆方法