吴文洁

Garden of Eden 自由 平等 尊重

如何修改Mac地址

| Comments

一、MAC地址的用途   MAC地址在网卡中是固定的,每张网卡的MAC地址都不一样。网卡在制作过程中,厂家会在它的EPROM里面烧录上一组数字,这组数字,每张网卡都各不相同,这就是网卡的MAC(物理)地址。   由于MAC地址的唯一性,因此它主要用来识别网络中用户的身份。

例如ADSL上网时,电信用它来记费,确认是你上的网;在校园网中,MAC地址也可以用来识别用户。对于校园网的正式用户,其MAC地址会登记在服务器端,假如你是非法用户,服务器中就没有你的网卡MAC地址,这样当你试图连上网时,服务器就会立刻认出你、阻止你连上网络。

 

 

二、MAC地址是可以修改的   有些场合,例如冒充网络中的正式用户,就需要修改你的网卡MAC。要修改MAC地址,你可以通过硬件的方法实现,即利用网卡厂家提供的修改程序来烧录网卡的EEPROM,这样做虽然可行,但是风险很大、操作也复杂,即使你很有经验,也难免在操作中出现错误。   其实你完全没必要用烧录方法、修改网卡中的MAC地址。要知道windows安装的时候,会自动从网卡中读入MAC地址,把它存放在注册表中以备后用。当数据在网络中传输时,从网卡发出的数据包中要求有一个源MAC地址,这个MAC地址就是从注册表中读取的(并非从网卡中读取的),因此只要你修改了注册表中的MAC地址,就相当于改了网卡EEPROM中的MAC地址,两者实际效果是完全相同的!   三、修改注册表中MAC的方法

1、使用软件修改   推荐一个工具,k-mac,很好用,又小又方便,叫做mac地址修改器,

如果是Windows2000/XP的用户,则可以使用免费MAC地址修改软件SMAC。运行SMAC后,窗口中的列表框列出计算机上正处于工作状 态的网卡。选定要修改的网卡后,在列表框下方的六个输入框中输入新的MAC地址后,点击右侧的“Update MAC(修改MAC地址)”,即可完成MAC地址的修改。

修改MAC地址的工具有很多,但大多数都只适用于Windows 2000/XP,笔者在这里推荐用“超级兔子魔法设置”,因为不但简单易用,而且在Windows 9x系统中使用同样有效。

修改完成后,就要使设置生效,一般的办法是重新启动系统。还有一种简单的办法不需要重新启动系统,在“设备管理器”中,选定网络适配器图标,点 击鼠标右键,选择“禁用”(请注意操作后,状态栏是否已显示为“禁用”)。然后再右键单击选定的网络适配器,在右键菜单中选择“启用”。这样就能使修改后 的设置生效。

2、在网卡属性中修改   如果你的网卡采用了RealTek公司的RTL8139芯片,就可以在网卡属性中修改MAC,这样注册表中的MAC地址也会一同改变,方法如下:   在Win2003/XP/2000中,点击菜单“开始”/设置/控制面板,双击“系统”,点击“硬件”/设备管理器,在设备管理器中展开“网络适配器”,右击要修改MAC地址的网卡,选择“属性”;点击“高级”选项卡,在“属性”下,选择点击Network Address项目,在右侧“值”的下方,输入你要指定的MAC地址值(例如020202020202),注意要连续输入12个数字或字母,重新启动电脑后,修改即可生效。至于Win98下的MAC修改方法,与以上方法类似。   如果修改之后,在Win2003/XP/2000下,你又想把注册表中的MAC地址恢复成原样,可以选择“Network Address”项,将右边的值选择为“不存在”,再重新启动即可;在Win98下是选择“没有显示”。

3、在注册表中修改   对于非RTL8139芯片的网卡,你可以直接修改注册表中的MAC,注意:修改注册表前,要先备份注册表。

(1)WinXP  点击“开始”/运行,输入regedit打开注册表,定位到HKEY_LOCAL_MACHINE\ SYSTEM\CurrentControlSet\Control\Class{4D36E972-E325-11CE-BFC1-08002BE10318} \0000、0001、0002等主键下,查找DriverDesc的内容,了解网卡使用了哪个主键(例如0001),如果主键下有params项,则该主键也是网卡所使用的;

例如网卡使用了0001主键,因此我们就选中它,在其右边建一个字符串项(名为NetworkAddress),双击该串,输入你指定的MAC地址值(注意应该是12位的连续数字或字母,其间没有-号);在0001下的NDI\ params中添加一项子键(名为NetworkAddress),选择该子键,在其右边添加名为default的字符串,键值为修改后的MAC地址,与上面的数值相同;修改后重启生效。

当找到正确的网卡后,点击下拉式菜单“编辑/新建/字符串”,串的名称为“Networkaddress”,在新建的 “Networkaddress”串名称上双击鼠标就可以输入数值了。输入你想指定的新的MAC地址值。新的MAC地址应该是一个12位的十六进制数字或 字母,其间没有“-”,类似“000000000000”的这样的数值(注意,在Windows XP中具体键值的位置稍有不同,大家可通过查找功能来寻找)。

在“NetworkAddress”下继续添加一个名为“ParamDesc”的字串值,它将作为“NetworkAddress”项的描述,数值可以取为“MAC Address”。再把它的内容修改为你想设定的内容。如图所示。

这样,我们就成功地修改了网卡的MAC地址,重新启动计算机即可。

 

4、linux系统   如果你的系统是linux,想修改系统中的MAC地址(例如改为020202020202),操作方法是:用#ifconfig eth0 down先把网卡禁用,否则会报告系统忙,无法更改;然后再用ifconfig eth0 hw ether 020202020202即可。

如果你想永久修改系统中的MAC地址,可以这样操作:在/etc/rc.d/rc.local中加入以下三行(也可在/etc/init.d/network中添加以下三行)   ifconfig eth0 down   ifconfig eth0 hw ether 020202020202   ifconfig eth0 up

 

 

四、MAC地址改好了吗?   如果你想知道系统中的MAC地址是否修改成功了,可以这样操作:重启电脑(不是必要的),在命令提示符下,输入IPconfig/all命令,于是Physical Address右边就会显示一个地址,你检查一下即可得知MAC是否修改成功了。